var shadow$provide = {};

var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(a,b,c){a instanceof String&&(a=String(a));for(var d=a.length,e=0;e<d;e++){var f=a[e];if(b.call(c,f,e,a))return{i:e,v:f}}return{i:-1,v:void 0}};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1;
$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};$jscomp.getGlobal=function(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");};$jscomp.global=$jscomp.getGlobal(this);
$jscomp.IS_SYMBOL_NATIVE="function"===typeof Symbol&&"symbol"===typeof Symbol("x");$jscomp.TRUST_ES6_POLYFILLS=!$jscomp.ISOLATE_POLYFILLS||$jscomp.IS_SYMBOL_NATIVE;$jscomp.polyfills={};$jscomp.propertyToPolyfillSymbol={};$jscomp.POLYFILL_PREFIX="$jscp$";var $jscomp$lookupPolyfilledValue=function(a,b){var c=$jscomp.propertyToPolyfillSymbol[b];if(null==c)return a[b];c=a[c];return void 0!==c?c:a[b]};
$jscomp.polyfill=function(a,b,c,d){b&&($jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(a,b,c,d):$jscomp.polyfillUnisolated(a,b,c,d))};$jscomp.polyfillUnisolated=function(a,b,c,d){c=$jscomp.global;a=a.split(".");for(d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))return;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&$jscomp.defineProperty(c,a,{configurable:!0,writable:!0,value:b})};
$jscomp.polyfillIsolated=function(a,b,c,d){var e=a.split(".");a=1===e.length;d=e[0];d=!a&&d in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var f=0;f<e.length-1;f++){var g=e[f];if(!(g in d))return;d=d[g]}e=e[e.length-1];c=$jscomp.IS_SYMBOL_NATIVE&&"es6"===c?d[e]:null;b=b(c);null!=b&&(a?$jscomp.defineProperty($jscomp.polyfills,e,{configurable:!0,writable:!0,value:b}):b!==c&&(void 0===$jscomp.propertyToPolyfillSymbol[e]&&($jscomp.propertyToPolyfillSymbol[e]=$jscomp.IS_SYMBOL_NATIVE?$jscomp.global.Symbol(e):
$jscomp.POLYFILL_PREFIX+e),$jscomp.defineProperty(d,$jscomp.propertyToPolyfillSymbol[e],{configurable:!0,writable:!0,value:b})))};$jscomp.polyfill("Array.prototype.findIndex",function(a){return a?a:function(b,c){return $jscomp.findInternal(this,b,c).i}},"es6","es3");$jscomp.arrayFromIterator=function(a){for(var b,c=[];!(b=a.next()).done;)c.push(b.value);return c};$jscomp.arrayIteratorImpl=function(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}};
$jscomp.arrayIterator=function(a){return{next:$jscomp.arrayIteratorImpl(a)}};$jscomp.makeIterator=function(a){var b="undefined"!=typeof Symbol&&Symbol.iterator&&a[Symbol.iterator];return b?b.call(a):$jscomp.arrayIterator(a)};$jscomp.arrayFromIterable=function(a){return a instanceof Array?a:$jscomp.arrayFromIterator($jscomp.makeIterator(a))};$jscomp.polyfill("String.prototype.trimLeft",function(a){function b(){return this.replace(/^[\s\xa0]+/,"")}return a||b},"es_2019","es3");
$jscomp.polyfill("String.prototype.trimStart",function(a){return a||String.prototype.trimLeft},"es_2019","es3");$jscomp.checkStringArgs=function(a,b,c){if(null==a)throw new TypeError("The 'this' value for String.prototype."+c+" must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype."+c+" must not be a regular expression");return a+""};
$jscomp.polyfill("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=$jscomp.checkStringArgs(this,b,"startsWith");b+="";var e=d.length,f=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var g=0;g<f&&c<e;)if(d[c++]!=b[g++])return!1;return g>=f}},"es6","es3");$jscomp.createTemplateTagFirstArg=function(a){return a.raw=a};$jscomp.createTemplateTagFirstArgWithRaw=function(a,b){a.raw=b;return a};
$jscomp.polyfill("String.prototype.endsWith",function(a){return a?a:function(b,c){var d=$jscomp.checkStringArgs(this,b,"endsWith");b+="";void 0===c&&(c=d.length);c=Math.max(0,Math.min(c|0,d.length));for(var e=b.length;0<e&&0<c;)if(d[--c]!=b[--e])return!1;return 0>=e}},"es6","es3");
$jscomp.polyfill("String.prototype.repeat",function(a){return a?a:function(b){var c=$jscomp.checkStringArgs(this,null,"repeat");if(0>b||1342177279<b)throw new RangeError("Invalid count value");b|=0;for(var d="";b;)if(b&1&&(d+=c),b>>>=1)c+=c;return d}},"es6","es3");$jscomp.polyfill("Array.prototype.find",function(a){return a?a:function(b,c){return $jscomp.findInternal(this,b,c).v}},"es6","es3");var CLOSURE_NO_DEPS = true;
var CLOSURE_BASE_PATH = '/js/cljs-runtime/';
var CLOSURE_DEFINES = {"shadow.cljs.devtools.client.env.repl_pprint":true,"shadow.cljs.devtools.client.env.reload_strategy":"optimized","shadow.cljs.devtools.client.env.devtools_url":"","shadow.cljs.devtools.client.env.autoload":true,"shadow.cljs.devtools.client.env.proc_id":"b5e13ecf-a653-4d2d-b156-2e5fd39c6f94","shadow.cljs.devtools.client.env.use_document_protocol":false,"goog.ENABLE_DEBUG_LOADER":false,"shadow.cljs.devtools.client.env.server_port":9630,"shadow.cljs.devtools.client.env.server_token":"6e55287c-624c-4cc5-9c06-9b64f778f8c1","shadow.cljs.devtools.client.env.use_document_host":true,"shadow.cljs.devtools.client.env.module_format":"goog","goog.LOCALE":"en","shadow.cljs.devtools.client.env.build_id":"main","shadow.cljs.devtools.client.env.ignore_warnings":false,"goog.DEBUG":true,"shadow.cljs.devtools.client.env.log":true,"shadow.cljs.devtools.client.env.ssl":false,"shadow.cljs.devtools.client.env.enabled":true,"shadow.cljs.devtools.client.env.server_host":"localhost","shadow.cljs.devtools.client.env.worker_client_id":2,"goog.TRANSPILE":"never"};
var COMPILED = false;
var goog = goog || {};
goog.global = this || self;
goog.global.CLOSURE_UNCOMPILED_DEFINES;
goog.global.CLOSURE_DEFINES;
goog.exportPath_ = function(name, object, overwriteImplicit, objectToExportTo) {
  var parts = name.split(".");
  var cur = objectToExportTo || goog.global;
  if (!(parts[0] in cur) && typeof cur.execScript != "undefined") {
    cur.execScript("var " + parts[0]);
  }
  for (var part; parts.length && (part = parts.shift());) {
    if (!parts.length && object !== undefined) {
      if (!overwriteImplicit && goog.isObject(object) && goog.isObject(cur[part])) {
        for (var prop in object) {
          if (object.hasOwnProperty(prop)) {
            cur[part][prop] = object[prop];
          }
        }
      } else {
        cur[part] = object;
      }
    } else {
      if (cur[part] && cur[part] !== Object.prototype[part]) {
        cur = cur[part];
      } else {
        cur = cur[part] = {};
      }
    }
  }
};
goog.define = function(name, defaultValue) {
  var value = defaultValue;
  if (!COMPILED) {
    var uncompiledDefines = goog.global.CLOSURE_UNCOMPILED_DEFINES;
    var defines = goog.global.CLOSURE_DEFINES;
    if (uncompiledDefines && uncompiledDefines.nodeType === undefined && Object.prototype.hasOwnProperty.call(uncompiledDefines, name)) {
      value = uncompiledDefines[name];
    } else {
      if (defines && defines.nodeType === undefined && Object.prototype.hasOwnProperty.call(defines, name)) {
        value = defines[name];
      }
    }
  }
  return value;
};
goog.FEATURESET_YEAR = goog.define("goog.FEATURESET_YEAR", 2012);
goog.DEBUG = goog.define("goog.DEBUG", true);
goog.LOCALE = goog.define("goog.LOCALE", "en");
goog.TRUSTED_SITE = goog.define("goog.TRUSTED_SITE", true);
goog.DISALLOW_TEST_ONLY_CODE = goog.define("goog.DISALLOW_TEST_ONLY_CODE", COMPILED && !goog.DEBUG);
goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = goog.define("goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING", false);
goog.provide = function(name) {
  if (goog.isInModuleLoader_()) {
    throw new Error("goog.provide cannot be used within a module.");
  }
  if (!COMPILED) {
    if (goog.isProvided_(name)) {
      throw new Error('Namespace "' + name + '" already declared.');
    }
  }
  goog.constructNamespace_(name);
};
goog.constructNamespace_ = function(name, object, overwriteImplicit) {
  if (!COMPILED) {
    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, object, overwriteImplicit);
};
goog.getScriptNonce = function(opt_window) {
  if (opt_window && opt_window != goog.global) {
    return goog.getScriptNonce_(opt_window.document);
  }
  if (goog.cspNonce_ === null) {
    goog.cspNonce_ = goog.getScriptNonce_(goog.global.document);
  }
  return goog.cspNonce_;
};
goog.NONCE_PATTERN_ = /^[\w+/_-]+[=]{0,2}$/;
goog.cspNonce_ = null;
goog.getScriptNonce_ = function(doc) {
  var script = doc.querySelector && doc.querySelector("script[nonce]");
  if (script) {
    var nonce = script["nonce"] || script.getAttribute("nonce");
    if (nonce && goog.NONCE_PATTERN_.test(nonce)) {
      return nonce;
    }
  }
  return "";
};
goog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;
goog.module = function(name) {
  if (typeof name !== "string" || !name || name.search(goog.VALID_MODULE_RE_) == -1) {
    throw new Error("Invalid module identifier");
  }
  if (!goog.isInGoogModuleLoader_()) {
    throw new Error("Module " + name + " has been loaded incorrectly. Note, " + "modules cannot be loaded as normal scripts. They require some kind of " + "pre-processing step. You're likely trying to load a module via a " + "script tag or as a part of a concatenated bundle without rewriting the " + "module. For more info see: " + "https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");
  }
  if (goog.moduleLoaderState_.moduleName) {
    throw new Error("goog.module may only be called once per module.");
  }
  goog.moduleLoaderState_.moduleName = name;
  if (!COMPILED) {
    if (goog.isProvided_(name)) {
      throw new Error('Namespace "' + name + '" already declared.');
    }
    delete goog.implicitNamespaces_[name];
  }
};
goog.module.get = function(name) {
  return goog.module.getInternal_(name);
};
goog.module.getInternal_ = function(name) {
  if (!COMPILED) {
    if (name in goog.loadedModules_) {
      return goog.loadedModules_[name].exports;
    } else {
      if (!goog.implicitNamespaces_[name]) {
        var ns = goog.getObjectByName(name);
        return ns != null ? ns : null;
      }
    }
  }
  return null;
};
goog.ModuleType = {ES6:"es6", GOOG:"goog"};
goog.moduleLoaderState_ = null;
goog.isInModuleLoader_ = function() {
  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();
};
goog.isInGoogModuleLoader_ = function() {
  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;
};
goog.isInEs6ModuleLoader_ = function() {
  var inLoader = !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6;
  if (inLoader) {
    return true;
  }
  var jscomp = goog.global["$jscomp"];
  if (jscomp) {
    if (typeof jscomp.getCurrentModulePath != "function") {
      return false;
    }
    return !!jscomp.getCurrentModulePath();
  }
  return false;
};
goog.module.declareLegacyNamespace = function() {
  if (!COMPILED && !goog.isInGoogModuleLoader_()) {
    throw new Error("goog.module.declareLegacyNamespace must be called from " + "within a goog.module");
  }
  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {
    throw new Error("goog.module must be called prior to " + "goog.module.declareLegacyNamespace.");
  }
  goog.moduleLoaderState_.declareLegacyNamespace = true;
};
goog.declareModuleId = function(namespace) {
  if (!COMPILED) {
    if (!goog.isInEs6ModuleLoader_()) {
      throw new Error("goog.declareModuleId may only be called from " + "within an ES6 module");
    }
    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {
      throw new Error("goog.declareModuleId may only be called once per module.");
    }
    if (namespace in goog.loadedModules_) {
      throw new Error('Module with namespace "' + namespace + '" already exists.');
    }
  }
  if (goog.moduleLoaderState_) {
    goog.moduleLoaderState_.moduleName = namespace;
  } else {
    var jscomp = goog.global["$jscomp"];
    if (!jscomp || typeof jscomp.getCurrentModulePath != "function") {
      throw new Error('Module with namespace "' + namespace + '" has been loaded incorrectly.');
    }
    var exports = jscomp.require(jscomp.getCurrentModulePath());
    goog.loadedModules_[namespace] = {exports:exports, type:goog.ModuleType.ES6, moduleId:namespace};
  }
};
goog.setTestOnly = function(opt_message) {
  if (goog.DISALLOW_TEST_ONLY_CODE) {
    opt_message = opt_message || "";
    throw new Error("Importing test-only code into non-debug environment" + (opt_message ? ": " + opt_message : "."));
  }
};
goog.forwardDeclare = function(name) {
};
goog.forwardDeclare("Document");
goog.forwardDeclare("HTMLScriptElement");
goog.forwardDeclare("XMLHttpRequest");
if (!COMPILED) {
  goog.isProvided_ = function(name) {
    return name in goog.loadedModules_ || !goog.implicitNamespaces_[name] && goog.getObjectByName(name) != null;
  };
  goog.implicitNamespaces_ = {"goog.module":true};
}
goog.getObjectByName = function(name, opt_obj) {
  var parts = name.split(".");
  var cur = opt_obj || goog.global;
  for (var i = 0; i < parts.length; i++) {
    cur = cur[parts[i]];
    if (cur == null) {
      return null;
    }
  }
  return cur;
};
goog.addDependency = function(relPath, provides, requires, opt_loadFlags) {
  if (!COMPILED && goog.DEPENDENCIES_ENABLED) {
    goog.debugLoader_.addDependency(relPath, provides, requires, opt_loadFlags);
  }
};
goog.ENABLE_DEBUG_LOADER = goog.define("goog.ENABLE_DEBUG_LOADER", true);
goog.logToConsole_ = function(msg) {
  if (goog.global.console) {
    goog.global.console["error"](msg);
  }
};
goog.require = function(namespace) {
  if (!COMPILED) {
    if (goog.ENABLE_DEBUG_LOADER) {
      goog.debugLoader_.requested(namespace);
    }
    if (goog.isProvided_(namespace)) {
      if (goog.isInModuleLoader_()) {
        return goog.module.getInternal_(namespace);
      }
    } else {
      if (goog.ENABLE_DEBUG_LOADER) {
        var moduleLoaderState = goog.moduleLoaderState_;
        goog.moduleLoaderState_ = null;
        try {
          goog.debugLoader_.load_(namespace);
        } finally {
          goog.moduleLoaderState_ = moduleLoaderState;
        }
      }
    }
    return null;
  }
};
goog.requireType = function(namespace) {
  return {};
};
goog.basePath = "";
goog.global.CLOSURE_BASE_PATH;
goog.global.CLOSURE_NO_DEPS;
goog.global.CLOSURE_IMPORT_SCRIPT;
goog.nullFunction = function() {
};
goog.abstractMethod = function() {
  throw new Error("unimplemented abstract method");
};
goog.addSingletonGetter = function(ctor) {
  ctor.instance_ = undefined;
  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.LOAD_MODULE_USING_EVAL = goog.define("goog.LOAD_MODULE_USING_EVAL", true);
goog.SEAL_MODULE_EXPORTS = goog.define("goog.SEAL_MODULE_EXPORTS", goog.DEBUG);
goog.loadedModules_ = {};
goog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;
goog.TRANSPILE = goog.define("goog.TRANSPILE", "detect");
goog.ASSUME_ES_MODULES_TRANSPILED = goog.define("goog.ASSUME_ES_MODULES_TRANSPILED", false);
goog.TRANSPILE_TO_LANGUAGE = goog.define("goog.TRANSPILE_TO_LANGUAGE", "");
goog.TRANSPILER = goog.define("goog.TRANSPILER", "transpile.js");
goog.hasBadLetScoping = null;
goog.loadModule = function(moduleDef) {
  var previousState = goog.moduleLoaderState_;
  try {
    goog.moduleLoaderState_ = {moduleName:"", declareLegacyNamespace:false, type:goog.ModuleType.GOOG};
    var origExports = {};
    var exports = origExports;
    if (typeof moduleDef === "function") {
      exports = moduleDef.call(undefined, exports);
    } else {
      if (typeof moduleDef === "string") {
        exports = goog.loadModuleFromSource_.call(undefined, exports, moduleDef);
      } else {
        throw new Error("Invalid module definition");
      }
    }
    var moduleName = goog.moduleLoaderState_.moduleName;
    if (typeof moduleName === "string" && moduleName) {
      if (goog.moduleLoaderState_.declareLegacyNamespace) {
        var isDefaultExport = origExports !== exports;
        goog.constructNamespace_(moduleName, exports, isDefaultExport);
      } else {
        if (goog.SEAL_MODULE_EXPORTS && Object.seal && typeof exports == "object" && exports != null) {
          Object.seal(exports);
        }
      }
      var data = {exports:exports, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};
      goog.loadedModules_[moduleName] = data;
    } else {
      throw new Error('Invalid module name "' + moduleName + '"');
    }
  } finally {
    goog.moduleLoaderState_ = previousState;
  }
};
goog.loadModuleFromSource_ = function(exports) {
  eval(goog.CLOSURE_EVAL_PREFILTER_.createScript(arguments[1]));
  return exports;
};
goog.normalizePath_ = function(path) {
  var components = path.split("/");
  var i = 0;
  while (i < components.length) {
    if (components[i] == ".") {
      components.splice(i, 1);
    } else {
      if (i && components[i] == ".." && components[i - 1] && components[i - 1] != "..") {
        components.splice(--i, 2);
      } else {
        i++;
      }
    }
  }
  return components.join("/");
};
goog.global.CLOSURE_LOAD_FILE_SYNC;
goog.loadFileSync_ = function(src) {
  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {
    return goog.global.CLOSURE_LOAD_FILE_SYNC(src);
  } else {
    try {
      var xhr = new goog.global["XMLHttpRequest"];
      xhr.open("get", src, false);
      xhr.send();
      return xhr.status == 0 || xhr.status == 200 ? xhr.responseText : null;
    } catch (err) {
      return null;
    }
  }
};
goog.transpile_ = function(code, path, target) {
  var jscomp = goog.global["$jscomp"];
  if (!jscomp) {
    goog.global["$jscomp"] = jscomp = {};
  }
  var transpile = jscomp.transpile;
  if (!transpile) {
    var transpilerPath = goog.basePath + goog.TRANSPILER;
    var transpilerCode = goog.loadFileSync_(transpilerPath);
    if (transpilerCode) {
      (function() {
        (0, eval)(transpilerCode + "\n//# sourceURL\x3d" + transpilerPath);
      }).call(goog.global);
      if (goog.global["$gwtExport"] && goog.global["$gwtExport"]["$jscomp"] && !goog.global["$gwtExport"]["$jscomp"]["transpile"]) {
        throw new Error('The transpiler did not properly export the "transpile" ' + "method. $gwtExport: " + JSON.stringify(goog.global["$gwtExport"]));
      }
      goog.global["$jscomp"].transpile = goog.global["$gwtExport"]["$jscomp"]["transpile"];
      jscomp = goog.global["$jscomp"];
      transpile = jscomp.transpile;
    }
  }
  if (!transpile) {
    var suffix = " requires transpilation but no transpiler was found.";
    transpile = jscomp.transpile = function(code, path) {
      goog.logToConsole_(path + suffix);
      return code;
    };
  }
  return transpile(code, path, target);
};
goog.typeOf = function(value) {
  var s = typeof value;
  if (s != "object") {
    return s;
  }
  if (!value) {
    return "null";
  }
  if (Array.isArray(value)) {
    return "array";
  }
  return s;
};
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.isObject = function(val) {
  var type = typeof val;
  return type == "object" && val != null || type == "function";
};
goog.getUid = function(obj) {
  return Object.prototype.hasOwnProperty.call(obj, goog.UID_PROPERTY_) && obj[goog.UID_PROPERTY_] || (obj[goog.UID_PROPERTY_] = ++goog.uidCounter_);
};
goog.hasUid = function(obj) {
  return !!obj[goog.UID_PROPERTY_];
};
goog.removeUid = function(obj) {
  if (obj !== null && "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.cloneObject = function(obj) {
  var type = goog.typeOf(obj);
  if (type == "object" || type == "array") {
    if (typeof obj.clone === "function") {
      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 = function() {
  return Date.now();
};
goog.globalEval = function(script) {
  (0, eval)(script);
};
goog.cssNameMapping_;
goog.cssNameMappingStyle_;
goog.global.CLOSURE_CSS_NAME_MAP_FN;
goog.getCssName = function(className, opt_modifier) {
  if (String(className).charAt(0) == ".") {
    throw new Error('className passed in goog.getCssName must not start with ".".' + " You passed: " + className);
  }
  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;
    };
  }
  var result = opt_modifier ? className + "-" + rename(opt_modifier) : rename(className);
  if (goog.global.CLOSURE_CSS_NAME_MAP_FN) {
    return goog.global.CLOSURE_CSS_NAME_MAP_FN(result);
  }
  return result;
};
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, opt_options) {
  if (opt_options && opt_options.html) {
    str = str.replace(/</g, "\x26lt;");
  }
  if (opt_options && opt_options.unescapeHtmlEntities) {
    str = str.replace(/&lt;/g, "\x3c").replace(/&gt;/g, "\x3e").replace(/&apos;/g, "'").replace(/&quot;/g, '"').replace(/&amp;/g, "\x26");
  }
  if (opt_values) {
    str = str.replace(/\{\$([^}]+)}/g, function(match, key) {
      return opt_values != null && key in opt_values ? opt_values[key] : match;
    });
  }
  return str;
};
goog.getMsgWithFallback = function(a, b) {
  return a;
};
goog.exportSymbol = function(publicPath, object, objectToExportTo) {
  goog.exportPath_(publicPath, object, true, 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 = new Array(arguments.length - 2);
    for (var i = 2; i < arguments.length; i++) {
      args[i - 2] = arguments[i];
    }
    return parentCtor.prototype[methodName].apply(me, args);
  };
};
goog.scope = function(fn) {
  if (goog.isInModuleLoader_()) {
    throw new Error("goog.scope is not supported within a module.");
  }
  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.defineClass.SEAL_CLASS_INSTANCES = goog.define("goog.defineClass.SEAL_CLASS_INSTANCES", goog.DEBUG);
goog.defineClass.createSealingConstructor_ = function(ctr, superClass) {
  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {
    return ctr;
  }
  var wrappedCtr = function() {
    var instance = ctr.apply(this, arguments) || this;
    instance[goog.UID_PROPERTY_] = instance[goog.UID_PROPERTY_];
    return instance;
  };
  return wrappedCtr;
};
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];
    }
  }
};
if (!COMPILED && goog.DEPENDENCIES_ENABLED) {
  goog.inHtmlDocument_ = function() {
    var doc = goog.global.document;
    return doc != null && "write" in doc;
  };
  goog.isDocumentLoading_ = function() {
    var doc = goog.global.document;
    return doc.attachEvent ? doc.readyState != "complete" : doc.readyState == "loading";
  };
  goog.findBasePath_ = function() {
    if (goog.global.CLOSURE_BASE_PATH != undefined && typeof goog.global.CLOSURE_BASE_PATH === "string") {
      goog.basePath = goog.global.CLOSURE_BASE_PATH;
      return;
    } else {
      if (!goog.inHtmlDocument_()) {
        return;
      }
    }
    var doc = goog.global.document;
    var currentScript = doc.currentScript;
    if (currentScript) {
      var scripts = [currentScript];
    } else {
      var scripts = doc.getElementsByTagName("SCRIPT");
    }
    for (var i = scripts.length - 1; i >= 0; --i) {
      var script = scripts[i];
      var src = script.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.findBasePath_();
  goog.Transpiler = function() {
    this.requiresTranspilation_ = null;
    this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;
  };
  goog.Transpiler.prototype.createRequiresTranspilation_ = function() {
    var transpilationTarget = "es3";
    var requiresTranspilation = {"es3":false};
    var transpilationRequiredForAllLaterModes = false;
    function addNewerLanguageTranspilationCheck(modeName, isSupported) {
      if (transpilationRequiredForAllLaterModes) {
        requiresTranspilation[modeName] = true;
      } else {
        if (isSupported()) {
          transpilationTarget = modeName;
          requiresTranspilation[modeName] = false;
        } else {
          requiresTranspilation[modeName] = true;
          transpilationRequiredForAllLaterModes = true;
        }
      }
    }
    function evalCheck(code) {
      try {
        return !!eval(code);
      } catch (ignored) {
        return false;
      }
    }
    var userAgent = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : "";
    addNewerLanguageTranspilationCheck("es5", function() {
      return evalCheck("[1,].length\x3d\x3d1");
    });
    addNewerLanguageTranspilationCheck("es6", function() {
      var re = /Edge\/(\d+)(\.\d)*/i;
      var edgeUserAgent = userAgent.match(re);
      if (edgeUserAgent) {
        return false;
      }
      var es6fullTest = "class X{constructor(){if(new.target!\x3dString)throw 1;this.x\x3d42}}" + "let q\x3dReflect.construct(X,[],String);if(q.x!\x3d42||!(q instanceof " + "String))throw 1;for(const a of[2,3]){if(a\x3d\x3d2)continue;function " + "f(z\x3d{a}){let a\x3d0;return z.a}{function f(){return 0;}}return f()" + "\x3d\x3d3}";
      return evalCheck('(()\x3d\x3e{"use strict";' + es6fullTest + "})()");
    });
    addNewerLanguageTranspilationCheck("es7", function() {
      return evalCheck("2**3\x3d\x3d8");
    });
    addNewerLanguageTranspilationCheck("es8", function() {
      return evalCheck("async()\x3d\x3e1,1");
    });
    addNewerLanguageTranspilationCheck("es9", function() {
      return evalCheck("({...rest}\x3d{}),1");
    });
    addNewerLanguageTranspilationCheck("es_2019", function() {
      return evalCheck('let r;try{throw 0}catch{r\x3d"\u2029"};r');
    });
    addNewerLanguageTranspilationCheck("es_2020", function() {
      return evalCheck("null?.x??1");
    });
    addNewerLanguageTranspilationCheck("es_next", function() {
      return false;
    });
    return {target:transpilationTarget, map:requiresTranspilation};
  };
  goog.Transpiler.prototype.needsTranspile = function(lang, module) {
    if (goog.TRANSPILE == "always") {
      return true;
    } else {
      if (goog.TRANSPILE == "never") {
        return false;
      } else {
        if (!this.requiresTranspilation_) {
          var obj = this.createRequiresTranspilation_();
          this.requiresTranspilation_ = obj.map;
          this.transpilationTarget_ = this.transpilationTarget_ || obj.target;
        }
      }
    }
    if (lang in this.requiresTranspilation_) {
      if (this.requiresTranspilation_[lang]) {
        return true;
      } else {
        if (goog.inHtmlDocument_() && module == "es6" && !("noModule" in goog.global.document.createElement("script"))) {
          return true;
        } else {
          return false;
        }
      }
    } else {
      throw new Error("Unknown language mode: " + lang);
    }
  };
  goog.Transpiler.prototype.transpile = function(code, path) {
    return goog.transpile_(code, path, this.transpilationTarget_);
  };
  goog.transpiler_ = new goog.Transpiler;
  goog.protectScriptTag_ = function(str) {
    return str.replace(/<\/(SCRIPT)/ig, "\\x3c/$1");
  };
  goog.DebugLoader_ = function() {
    this.dependencies_ = {};
    this.idToPath_ = {};
    this.written_ = {};
    this.loadingDeps_ = [];
    this.depsToLoad_ = [];
    this.paused_ = false;
    this.factory_ = new goog.DependencyFactory(goog.transpiler_);
    this.deferredCallbacks_ = {};
    this.deferredQueue_ = [];
  };
  goog.DebugLoader_.prototype.bootstrap = function(namespaces, callback) {
    var cb = callback;
    function resolve() {
      if (cb) {
        goog.global.setTimeout(cb, 0);
        cb = null;
      }
    }
    if (!namespaces.length) {
      resolve();
      return;
    }
    var deps = [];
    for (var i = 0; i < namespaces.length; i++) {
      var path = this.getPathFromDeps_(namespaces[i]);
      if (!path) {
        throw new Error("Unregonized namespace: " + namespaces[i]);
      }
      deps.push(this.dependencies_[path]);
    }
    var require = goog.require;
    var loaded = 0;
    for (var i = 0; i < namespaces.length; i++) {
      require(namespaces[i]);
      deps[i].onLoad(function() {
        if (++loaded == namespaces.length) {
          resolve();
        }
      });
    }
  };
  goog.DebugLoader_.prototype.loadClosureDeps = function() {
    var relPath = "deps.js";
    this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + relPath), relPath, [], [], {}, false));
    this.loadDeps_();
  };
  goog.DebugLoader_.prototype.requested = function(absPathOrId, opt_force) {
    var path = this.getPathFromDeps_(absPathOrId);
    if (path && (opt_force || this.areDepsLoaded_(this.dependencies_[path].requires))) {
      var callback = this.deferredCallbacks_[path];
      if (callback) {
        delete this.deferredCallbacks_[path];
        callback();
      }
    }
  };
  goog.DebugLoader_.prototype.setDependencyFactory = function(factory) {
    this.factory_ = factory;
  };
  goog.DebugLoader_.prototype.load_ = function(namespace) {
    if (!this.getPathFromDeps_(namespace)) {
      var errorMessage = "goog.require could not find: " + namespace;
      goog.logToConsole_(errorMessage);
    } else {
      var loader = this;
      var deps = [];
      var visit = function(namespace) {
        var path = loader.getPathFromDeps_(namespace);
        if (!path) {
          throw new Error("Bad dependency path or symbol: " + namespace);
        }
        if (loader.written_[path]) {
          return;
        }
        loader.written_[path] = true;
        var dep = loader.dependencies_[path];
        for (var i = 0; i < dep.requires.length; i++) {
          if (!goog.isProvided_(dep.requires[i])) {
            visit(dep.requires[i]);
          }
        }
        deps.push(dep);
      };
      visit(namespace);
      var wasLoading = !!this.depsToLoad_.length;
      this.depsToLoad_ = this.depsToLoad_.concat(deps);
      if (!this.paused_ && !wasLoading) {
        this.loadDeps_();
      }
    }
  };
  goog.DebugLoader_.prototype.loadDeps_ = function() {
    var loader = this;
    var paused = this.paused_;
    while (this.depsToLoad_.length && !paused) {
      (function() {
        var loadCallDone = false;
        var dep = loader.depsToLoad_.shift();
        var loaded = false;
        loader.loading_(dep);
        var controller = {pause:function() {
          if (loadCallDone) {
            throw new Error("Cannot call pause after the call to load.");
          } else {
            paused = true;
          }
        }, resume:function() {
          if (loadCallDone) {
            loader.resume_();
          } else {
            paused = false;
          }
        }, loaded:function() {
          if (loaded) {
            throw new Error("Double call to loaded.");
          }
          loaded = true;
          loader.loaded_(dep);
        }, pending:function() {
          var pending = [];
          for (var i = 0; i < loader.loadingDeps_.length; i++) {
            pending.push(loader.loadingDeps_[i]);
          }
          return pending;
        }, setModuleState:function(type) {
          goog.moduleLoaderState_ = {type:type, moduleName:"", declareLegacyNamespace:false};
        }, registerEs6ModuleExports:function(path, exports, opt_closureNamespace) {
          if (opt_closureNamespace) {
            goog.loadedModules_[opt_closureNamespace] = {exports:exports, type:goog.ModuleType.ES6, moduleId:opt_closureNamespace || ""};
          }
        }, registerGoogModuleExports:function(moduleId, exports) {
          goog.loadedModules_[moduleId] = {exports:exports, type:goog.ModuleType.GOOG, moduleId:moduleId};
        }, clearModuleState:function() {
          goog.moduleLoaderState_ = null;
        }, defer:function(callback) {
          if (loadCallDone) {
            throw new Error("Cannot register with defer after the call to load.");
          }
          loader.defer_(dep, callback);
        }, areDepsLoaded:function() {
          return loader.areDepsLoaded_(dep.requires);
        }};
        try {
          dep.load(controller);
        } finally {
          loadCallDone = true;
        }
      })();
    }
    if (paused) {
      this.pause_();
    }
  };
  goog.DebugLoader_.prototype.pause_ = function() {
    this.paused_ = true;
  };
  goog.DebugLoader_.prototype.resume_ = function() {
    if (this.paused_) {
      this.paused_ = false;
      this.loadDeps_();
    }
  };
  goog.DebugLoader_.prototype.loading_ = function(dep) {
    this.loadingDeps_.push(dep);
  };
  goog.DebugLoader_.prototype.loaded_ = function(dep) {
    for (var i = 0; i < this.loadingDeps_.length; i++) {
      if (this.loadingDeps_[i] == dep) {
        this.loadingDeps_.splice(i, 1);
        break;
      }
    }
    for (var i = 0; i < this.deferredQueue_.length; i++) {
      if (this.deferredQueue_[i] == dep.path) {
        this.deferredQueue_.splice(i, 1);
        break;
      }
    }
    if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {
      while (this.deferredQueue_.length) {
        this.requested(this.deferredQueue_.shift(), true);
      }
    }
    dep.loaded();
  };
  goog.DebugLoader_.prototype.areDepsLoaded_ = function(pathsOrIds) {
    for (var i = 0; i < pathsOrIds.length; i++) {
      var path = this.getPathFromDeps_(pathsOrIds[i]);
      if (!path || !(path in this.deferredCallbacks_) && !goog.isProvided_(pathsOrIds[i])) {
        return false;
      }
    }
    return true;
  };
  goog.DebugLoader_.prototype.getPathFromDeps_ = function(absPathOrId) {
    if (absPathOrId in this.idToPath_) {
      return this.idToPath_[absPathOrId];
    } else {
      if (absPathOrId in this.dependencies_) {
        return absPathOrId;
      } else {
        return null;
      }
    }
  };
  goog.DebugLoader_.prototype.defer_ = function(dependency, callback) {
    this.deferredCallbacks_[dependency.path] = callback;
    this.deferredQueue_.push(dependency.path);
  };
  goog.LoadController = function() {
  };
  goog.LoadController.prototype.pause = function() {
  };
  goog.LoadController.prototype.resume = function() {
  };
  goog.LoadController.prototype.loaded = function() {
  };
  goog.LoadController.prototype.pending = function() {
  };
  goog.LoadController.prototype.registerEs6ModuleExports = function(path, exports, opt_closureNamespace) {
  };
  goog.LoadController.prototype.setModuleState = function(type) {
  };
  goog.LoadController.prototype.clearModuleState = function() {
  };
  goog.LoadController.prototype.defer = function(callback) {
  };
  goog.LoadController.prototype.areDepsLoaded = function() {
  };
  goog.Dependency = function(path, relativePath, provides, requires, loadFlags) {
    this.path = path;
    this.relativePath = relativePath;
    this.provides = provides;
    this.requires = requires;
    this.loadFlags = loadFlags;
    this.loaded_ = false;
    this.loadCallbacks_ = [];
  };
  goog.Dependency.prototype.getPathName = function() {
    var pathName = this.path;
    var protocolIndex = pathName.indexOf("://");
    if (protocolIndex >= 0) {
      pathName = pathName.substring(protocolIndex + 3);
      var slashIndex = pathName.indexOf("/");
      if (slashIndex >= 0) {
        pathName = pathName.substring(slashIndex + 1);
      }
    }
    return pathName;
  };
  goog.Dependency.prototype.onLoad = function(callback) {
    if (this.loaded_) {
      callback();
    } else {
      this.loadCallbacks_.push(callback);
    }
  };
  goog.Dependency.prototype.loaded = function() {
    this.loaded_ = true;
    var callbacks = this.loadCallbacks_;
    this.loadCallbacks_ = [];
    for (var i = 0; i < callbacks.length; i++) {
      callbacks[i]();
    }
  };
  goog.Dependency.defer_ = false;
  goog.Dependency.callbackMap_ = {};
  goog.Dependency.registerCallback_ = function(callback) {
    var key = Math.random().toString(32);
    goog.Dependency.callbackMap_[key] = callback;
    return key;
  };
  goog.Dependency.unregisterCallback_ = function(key) {
    delete goog.Dependency.callbackMap_[key];
  };
  goog.Dependency.callback_ = function(key, var_args) {
    if (key in goog.Dependency.callbackMap_) {
      var callback = goog.Dependency.callbackMap_[key];
      var args = [];
      for (var i = 1; i < arguments.length; i++) {
        args.push(arguments[i]);
      }
      callback.apply(undefined, args);
    } else {
      var errorMessage = "Callback key " + key + " does not exist (was base.js loaded more than once?).";
      throw Error(errorMessage);
    }
  };
  goog.Dependency.prototype.load = function(controller) {
    if (goog.global.CLOSURE_IMPORT_SCRIPT) {
      if (goog.global.CLOSURE_IMPORT_SCRIPT(this.path)) {
        controller.loaded();
      } else {
        controller.pause();
      }
      return;
    }
    if (!goog.inHtmlDocument_()) {
      goog.logToConsole_("Cannot use default debug loader outside of HTML documents.");
      if (this.relativePath == "deps.js") {
        goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, " + "or setting CLOSURE_NO_DEPS to true.");
        controller.loaded();
      } else {
        controller.pause();
      }
      return;
    }
    var doc = goog.global.document;
    if (doc.readyState == "complete" && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {
      var isDeps = /\bdeps.js$/.test(this.path);
      if (isDeps) {
        controller.loaded();
        return;
      } else {
        throw Error('Cannot write "' + this.path + '" after document load');
      }
    }
    var nonce = goog.getScriptNonce();
    if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {
      var key;
      var callback = function(script) {
        if (script.readyState && script.readyState != "complete") {
          script.onload = callback;
          return;
        }
        goog.Dependency.unregisterCallback_(key);
        controller.loaded();
      };
      key = goog.Dependency.registerCallback_(callback);
      var defer = goog.Dependency.defer_ ? " defer" : "";
      var nonceAttr = nonce ? ' nonce\x3d"' + nonce + '"' : "";
      var script = '\x3cscript src\x3d"' + this.path + '"' + nonceAttr + defer + ' id\x3d"script-' + key + '"\x3e\x3c/script\x3e';
      script += "\x3cscript" + nonceAttr + "\x3e";
      if (goog.Dependency.defer_) {
        script += "document.getElementById('script-" + key + "').onload \x3d function() {\n" + "  goog.Dependency.callback_('" + key + "', this);\n" + "};\n";
      } else {
        script += "goog.Dependency.callback_('" + key + "', document.getElementById('script-" + key + "'));";
      }
      script += "\x3c/script\x3e";
      doc.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(script) : script);
    } else {
      var scriptEl = doc.createElement("script");
      scriptEl.defer = goog.Dependency.defer_;
      scriptEl.async = false;
      if (nonce) {
        scriptEl.nonce = nonce;
      }
      if (goog.DebugLoader_.IS_OLD_IE_) {
        controller.pause();
        scriptEl.onreadystatechange = function() {
          if (scriptEl.readyState == "loaded" || scriptEl.readyState == "complete") {
            controller.loaded();
            controller.resume();
          }
        };
      } else {
        scriptEl.onload = function() {
          scriptEl.onload = null;
          controller.loaded();
        };
      }
      scriptEl.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;
      doc.head.appendChild(scriptEl);
    }
  };
  goog.Es6ModuleDependency = function(path, relativePath, provides, requires, loadFlags) {
    goog.Es6ModuleDependency.base(this, "constructor", path, relativePath, provides, requires, loadFlags);
  };
  goog.inherits(goog.Es6ModuleDependency, goog.Dependency);
  goog.Es6ModuleDependency.prototype.load = function(controller) {
    if (goog.global.CLOSURE_IMPORT_SCRIPT) {
      if (goog.global.CLOSURE_IMPORT_SCRIPT(this.path)) {
        controller.loaded();
      } else {
        controller.pause();
      }
      return;
    }
    if (!goog.inHtmlDocument_()) {
      goog.logToConsole_("Cannot use default debug loader outside of HTML documents.");
      controller.pause();
      return;
    }
    var doc = goog.global.document;
    var dep = this;
    function write(src, contents) {
      var nonceAttr = "";
      var nonce = goog.getScriptNonce();
      if (nonce) {
        nonceAttr = ' nonce\x3d"' + nonce + '"';
      }
      if (contents) {
        var script = '\x3cscript type\x3d"module" crossorigin' + nonceAttr + "\x3e" + contents + "\x3c/" + "script\x3e";
        doc.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(script) : script);
      } else {
        var script = '\x3cscript type\x3d"module" crossorigin src\x3d"' + src + '"' + nonceAttr + "\x3e\x3c/" + "script\x3e";
        doc.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(script) : script);
      }
    }
    function append(src, contents) {
      var scriptEl = doc.createElement("script");
      scriptEl.defer = true;
      scriptEl.async = false;
      scriptEl.type = "module";
      scriptEl.setAttribute("crossorigin", true);
      var nonce = goog.getScriptNonce();
      if (nonce) {
        scriptEl.nonce = nonce;
      }
      if (contents) {
        scriptEl.text = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(contents) : contents;
      } else {
        scriptEl.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(src) : src;
      }
      doc.head.appendChild(scriptEl);
    }
    var create;
    if (goog.isDocumentLoading_()) {
      create = write;
      goog.Dependency.defer_ = true;
    } else {
      create = append;
    }
    var beforeKey = goog.Dependency.registerCallback_(function() {
      goog.Dependency.unregisterCallback_(beforeKey);
      controller.setModuleState(goog.ModuleType.ES6);
    });
    create(undefined, 'goog.Dependency.callback_("' + beforeKey + '")');
    create(this.path, undefined);
    var registerKey = goog.Dependency.registerCallback_(function(exports) {
      goog.Dependency.unregisterCallback_(registerKey);
      controller.registerEs6ModuleExports(dep.path, exports, goog.moduleLoaderState_.moduleName);
    });
    create(undefined, 'import * as m from "' + this.path + '"; goog.Dependency.callback_("' + registerKey + '", m)');
    var afterKey = goog.Dependency.registerCallback_(function() {
      goog.Dependency.unregisterCallback_(afterKey);
      controller.clearModuleState();
      controller.loaded();
    });
    create(undefined, 'goog.Dependency.callback_("' + afterKey + '")');
  };
  goog.TransformedDependency = function(path, relativePath, provides, requires, loadFlags) {
    goog.TransformedDependency.base(this, "constructor", path, relativePath, provides, requires, loadFlags);
    this.contents_ = null;
    this.lazyFetch_ = !goog.inHtmlDocument_() || !("noModule" in goog.global.document.createElement("script"));
  };
  goog.inherits(goog.TransformedDependency, goog.Dependency);
  goog.TransformedDependency.prototype.load = function(controller) {
    var dep = this;
    function fetch() {
      dep.contents_ = goog.loadFileSync_(dep.path);
      if (dep.contents_) {
        dep.contents_ = dep.transform(dep.contents_);
        if (dep.contents_) {
          dep.contents_ += "\n//# sourceURL\x3d" + dep.path;
        }
      }
    }
    if (goog.global.CLOSURE_IMPORT_SCRIPT) {
      fetch();
      if (this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT("", this.contents_)) {
        this.contents_ = null;
        controller.loaded();
      } else {
        controller.pause();
      }
      return;
    }
    var isEs6 = this.loadFlags["module"] == goog.ModuleType.ES6;
    if (!this.lazyFetch_) {
      fetch();
    }
    function load() {
      if (dep.lazyFetch_) {
        fetch();
      }
      if (!dep.contents_) {
        return;
      }
      if (isEs6) {
        controller.setModuleState(goog.ModuleType.ES6);
      }
      var namespace;
      try {
        var contents = dep.contents_;
        dep.contents_ = null;
        goog.globalEval(contents);
        if (isEs6) {
          namespace = goog.moduleLoaderState_.moduleName;
        }
      } finally {
        if (isEs6) {
          controller.clearModuleState();
        }
      }
      if (isEs6) {
        goog.global["$jscomp"]["require"]["ensure"]([dep.getPathName()], function() {
          controller.registerEs6ModuleExports(dep.path, goog.global["$jscomp"]["require"](dep.getPathName()), namespace);
        });
      }
      controller.loaded();
    }
    function fetchInOwnScriptThenLoad() {
      var doc = goog.global.document;
      var key = goog.Dependency.registerCallback_(function() {
        goog.Dependency.unregisterCallback_(key);
        load();
      });
      var nonce = goog.getScriptNonce();
      var nonceAttr = nonce ? ' nonce\x3d"' + nonce + '"' : "";
      var script = "\x3cscript" + nonceAttr + "\x3e" + goog.protectScriptTag_('goog.Dependency.callback_("' + key + '");') + "\x3c/" + "script\x3e";
      doc.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(script) : script);
    }
    var anythingElsePending = controller.pending().length > 1;
    var useOldIeWorkAround = anythingElsePending && goog.DebugLoader_.IS_OLD_IE_;
    var needsAsyncLoading = goog.Dependency.defer_ && (anythingElsePending || goog.isDocumentLoading_());
    if (useOldIeWorkAround || needsAsyncLoading) {
      controller.defer(function() {
        load();
      });
      return;
    }
    var doc = goog.global.document;
    var isInternetExplorer = goog.inHtmlDocument_() && "ActiveXObject" in goog.global;
    if (isEs6 && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !isInternetExplorer) {
      goog.Dependency.defer_ = true;
      controller.pause();
      var oldCallback = doc.onreadystatechange;
      doc.onreadystatechange = function() {
        if (doc.readyState == "interactive") {
          doc.onreadystatechange = oldCallback;
          load();
          controller.resume();
        }
        if (typeof oldCallback === "function") {
          oldCallback.apply(undefined, arguments);
        }
      };
    } else {
      if (goog.DebugLoader_.IS_OLD_IE_ || !goog.inHtmlDocument_() || !goog.isDocumentLoading_()) {
        load();
      } else {
        fetchInOwnScriptThenLoad();
      }
    }
  };
  goog.TransformedDependency.prototype.transform = function(contents) {
  };
  goog.TranspiledDependency = function(path, relativePath, provides, requires, loadFlags, transpiler) {
    goog.TranspiledDependency.base(this, "constructor", path, relativePath, provides, requires, loadFlags);
    this.transpiler = transpiler;
  };
  goog.inherits(goog.TranspiledDependency, goog.TransformedDependency);
  goog.TranspiledDependency.prototype.transform = function(contents) {
    return this.transpiler.transpile(contents, this.getPathName());
  };
  goog.PreTranspiledEs6ModuleDependency = function(path, relativePath, provides, requires, loadFlags) {
    goog.PreTranspiledEs6ModuleDependency.base(this, "constructor", path, relativePath, provides, requires, loadFlags);
  };
  goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency);
  goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(contents) {
    return contents;
  };
  goog.GoogModuleDependency = function(path, relativePath, provides, requires, loadFlags, needsTranspile, transpiler) {
    goog.GoogModuleDependency.base(this, "constructor", path, relativePath, provides, requires, loadFlags);
    this.needsTranspile_ = needsTranspile;
    this.transpiler_ = transpiler;
  };
  goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency);
  goog.GoogModuleDependency.prototype.transform = function(contents) {
    if (this.needsTranspile_) {
      contents = this.transpiler_.transpile(contents, this.getPathName());
    }
    if (!goog.LOAD_MODULE_USING_EVAL || goog.global.JSON === undefined) {
      return "" + "goog.loadModule(function(exports) {" + '"use strict";' + contents + "\n" + ";return exports" + "});" + "\n//# sourceURL\x3d" + this.path + "\n";
    } else {
      return "" + "goog.loadModule(" + goog.global.JSON.stringify(contents + "\n//# sourceURL\x3d" + this.path + "\n") + ");";
    }
  };
  goog.DebugLoader_.IS_OLD_IE_ = !!(!goog.global.atob && goog.global.document && goog.global.document["all"]);
  goog.DebugLoader_.prototype.addDependency = function(relPath, provides, requires, opt_loadFlags) {
    provides = provides || [];
    relPath = relPath.replace(/\\/g, "/");
    var path = goog.normalizePath_(goog.basePath + relPath);
    if (!opt_loadFlags || typeof opt_loadFlags === "boolean") {
      opt_loadFlags = opt_loadFlags ? {"module":goog.ModuleType.GOOG} : {};
    }
    var dep = this.factory_.createDependency(path, relPath, provides, requires, opt_loadFlags, goog.transpiler_.needsTranspile(opt_loadFlags["lang"] || "es3", opt_loadFlags["module"]));
    this.dependencies_[path] = dep;
    for (var i = 0; i < provides.length; i++) {
      this.idToPath_[provides[i]] = path;
    }
    this.idToPath_[relPath] = path;
  };
  goog.DependencyFactory = function(transpiler) {
    this.transpiler = transpiler;
  };
  goog.DependencyFactory.prototype.createDependency = function(path, relativePath, provides, requires, loadFlags, needsTranspile) {
    if (loadFlags["module"] == goog.ModuleType.GOOG) {
      return new goog.GoogModuleDependency(path, relativePath, provides, requires, loadFlags, needsTranspile, this.transpiler);
    } else {
      if (needsTranspile) {
        return new goog.TranspiledDependency(path, relativePath, provides, requires, loadFlags, this.transpiler);
      } else {
        if (loadFlags["module"] == goog.ModuleType.ES6) {
          if (goog.TRANSPILE == "never" && goog.ASSUME_ES_MODULES_TRANSPILED) {
            return new goog.PreTranspiledEs6ModuleDependency(path, relativePath, provides, requires, loadFlags);
          } else {
            return new goog.Es6ModuleDependency(path, relativePath, provides, requires, loadFlags);
          }
        } else {
          return new goog.Dependency(path, relativePath, provides, requires, loadFlags);
        }
      }
    }
  };
  goog.debugLoader_ = new goog.DebugLoader_;
  goog.loadClosureDeps = function() {
    goog.debugLoader_.loadClosureDeps();
  };
  goog.setDependencyFactory = function(factory) {
    goog.debugLoader_.setDependencyFactory(factory);
  };
  goog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + "#base") : null;
  if (!goog.global.CLOSURE_NO_DEPS) {
    goog.debugLoader_.loadClosureDeps();
  }
  goog.bootstrap = function(namespaces, callback) {
    goog.debugLoader_.bootstrap(namespaces, callback);
  };
}
goog.TRUSTED_TYPES_POLICY_NAME = goog.define("goog.TRUSTED_TYPES_POLICY_NAME", "goog");
goog.identity_ = function(s) {
  return s;
};
goog.createTrustedTypesPolicy = function(name) {
  var policy = null;
  var policyFactory = goog.global.trustedTypes;
  if (!policyFactory || !policyFactory.createPolicy) {
    return policy;
  }
  try {
    policy = policyFactory.createPolicy(name, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_});
  } catch (e) {
    goog.logToConsole_(e.message);
  }
  return policy;
};
if (!COMPILED) {
  var isChrome87 = false;
  try {
    isChrome87 = eval(goog.global.trustedTypes.emptyScript) !== goog.global.trustedTypes.emptyScript;
  } catch (err) {
  }
  goog.CLOSURE_EVAL_PREFILTER_ = goog.global.trustedTypes && isChrome87 && goog.createTrustedTypesPolicy("goog#base#devonly#eval") || {createScript:goog.identity_};
}

var SHADOW_ENV = function() {
  var loadedFiles = {};

  var env = {};

  var doc = goog.global.document;

  if (!doc) {
    throw new Error("browser bootstrap used in incorrect target");
  }

  var scriptBase = goog.global.window.location.origin;
  if (CLOSURE_BASE_PATH[0] == '/') {
    scriptBase = scriptBase + CLOSURE_BASE_PATH;
  } else {
    // FIXME: need to handle relative paths
    scriptBase = CLOSURE_BASE_PATH;
  }

  env.scriptBase = scriptBase;

  var wentAsync = false;

  var canDocumentWrite = function() {
    return !wentAsync && doc.readyState == "loading";
  };

  var asyncLoad = (function() {
    var loadOrder = [];
    var loadState = {};

    function loadPending() {
      for (var i = 0, len = loadOrder.length; i < len; i++) {
        var uri = loadOrder[i];
        var state = loadState[uri];

        if (typeof state === "string") {
          loadState[uri] = true;
          if (state != "") {
            var code = state + "\n//# sourceURL=" + uri + "\n";
            try {
              goog.globalEval(code);
            } catch (e) {
              console.error("An error occurred when loading", uri);
              console.error(e.stack);
            }
          }
        } else if (state === true) {
          continue;
        } else {
          break;
        }
      }
    }

    // ie11 doesn't have fetch, use xhr instead
    // FIXME: not sure if fetch provides any benefit over xhr
    if (typeof window.fetch === "undefined") {
      return function asyncXhr(uri) {
        loadOrder.push(uri);
        loadState[uri] = false;
        var req = new XMLHttpRequest();
        req.onload = function(e) {
          loadState[uri] = req.responseText;
          loadPending();
        };
        req.open("GET", uri);
        req.send();
      }
    } else {
      function responseText(response) {
        // FIXME: check status
        return response.text();
      }

      function evalFetch(uri) {
        return function(code) {
          loadState[uri] = code;
          loadPending();
        };
      }

      return function asyncFetch(uri) {
        if (loadState[uri] == undefined) {
          loadState[uri] = false;
          loadOrder.push(uri);
          fetch(uri)
            .then(responseText)
            .then(evalFetch(uri));
        }
      };
    }
  })();

  env.load = function(opts, paths) {
    var docWrite = opts.forceAsync ? false : canDocumentWrite();

    paths.forEach(function(path) {
      if (!loadedFiles[path]) {
        loadedFiles[path] = true;

        var uri = scriptBase + path;

        if (docWrite) {
          document.write(
            "<script src='" + uri + "' type='text/javascript'></script>"
          );
        } else {
          // once async always async
          wentAsync = true;
          asyncLoad(uri);
        }
      }
    });
  };

  env.isLoaded = function(path) {
    return loadedFiles[path] || false; // false is better than undefined
  };

  env.setLoaded = function(path) {
    loadedFiles[path] = true;
  };

  env.evalLoad = function(path, sourceMap, code) {
    loadedFiles[path] = true;
    code += ("\n//# sourceURL=" + scriptBase + path);
    if (sourceMap) {
      code += ("\n//# sourceMappingURL=" + path + ".map");
    }
    try {
      goog.globalEval(code);
    } catch (e) {
      console.error("An error occurred when loading", path);
      console.error(e.stack);
    }
  }

  return env;
}.call(this);


goog.global["$CLJS"] = goog.global;



SHADOW_ENV.evalLoad("goog.debug.error.js", true , "goog.loadModule(function(exports) {\n  \x22use strict\x22;\n  goog.module(\x22goog.debug.Error\x22);\n  goog.module.declareLegacyNamespace();\n  function DebugError(opt_msg) {\n    if (Error.captureStackTrace) {\n      Error.captureStackTrace(this, DebugError);\n    } else {\n      var stack \x3d (new Error).stack;\n      if (stack) {\n        this.stack \x3d stack;\n      }\n    }\n    if (opt_msg) {\n      this.message \x3d String(opt_msg);\n    }\n    this.reportErrorToServer \x3d true;\n  }\n  goog.inherits(DebugError, Error);\n  DebugError.prototype.name \x3d \x22CustomError\x22;\n  exports \x3d DebugError;\n  return exports;\n});\n");
SHADOW_ENV.evalLoad("goog.dom.nodetype.js", true , "goog.provide(\x22goog.dom.NodeType\x22);\ngoog.dom.NodeType \x3d {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};\n");
SHADOW_ENV.evalLoad("goog.asserts.asserts.js", true , "goog.provide(\x22goog.asserts\x22);\ngoog.provide(\x22goog.asserts.AssertionError\x22);\ngoog.require(\x22goog.debug.Error\x22);\ngoog.require(\x22goog.dom.NodeType\x22);\ngoog.asserts.ENABLE_ASSERTS \x3d goog.define(\x22goog.asserts.ENABLE_ASSERTS\x22, goog.DEBUG);\ngoog.asserts.AssertionError \x3d function(messagePattern, messageArgs) {\n  goog.debug.Error.call(this, goog.asserts.subs_(messagePattern, messageArgs));\n  this.messagePattern \x3d messagePattern;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name \x3d \x22AssertionError\x22;\ngoog.asserts.DEFAULT_ERROR_HANDLER \x3d function(e) {\n  throw e;\n};\ngoog.asserts.errorHandler_ \x3d goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ \x3d function(pattern, subs) {\n  var splitParts \x3d pattern.split(\x22%s\x22);\n  var returnString \x3d \x22\x22;\n  var subLast \x3d splitParts.length - 1;\n  for (var i \x3d 0; i \x3c subLast; i++) {\n    var sub \x3d i \x3c subs.length ? subs[i] : \x22%s\x22;\n    returnString +\x3d splitParts[i] + sub;\n  }\n  return returnString + splitParts[subLast];\n};\ngoog.asserts.doAssertFailure_ \x3d function(defaultMessage, defaultArgs, givenMessage, givenArgs) {\n  var message \x3d \x22Assertion failed\x22;\n  if (givenMessage) {\n    message +\x3d \x22: \x22 + givenMessage;\n    var args \x3d givenArgs;\n  } else {\n    if (defaultMessage) {\n      message +\x3d \x22: \x22 + defaultMessage;\n      args \x3d defaultArgs;\n    }\n  }\n  var e \x3d new goog.asserts.AssertionError(\x22\x22 + message, args || []);\n  goog.asserts.errorHandler_(e);\n};\ngoog.asserts.setErrorHandler \x3d function(errorHandler) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    goog.asserts.errorHandler_ \x3d errorHandler;\n  }\n};\ngoog.asserts.assert \x3d function(condition, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 !condition) {\n    goog.asserts.doAssertFailure_(\x22\x22, null, opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return condition;\n};\ngoog.asserts.assertExists \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 value \x3d\x3d null) {\n    goog.asserts.doAssertFailure_(\x22Expected to exist: %s.\x22, [value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.fail \x3d function(opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    goog.asserts.errorHandler_(new goog.asserts.AssertionError(\x22Failure\x22 + (opt_message ? \x22: \x22 + opt_message : \x22\x22), Array.prototype.slice.call(arguments, 1)));\n  }\n};\ngoog.asserts.assertNumber \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 typeof value !\x3d\x3d \x22number\x22) {\n    goog.asserts.doAssertFailure_(\x22Expected number but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertString \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 typeof value !\x3d\x3d \x22string\x22) {\n    goog.asserts.doAssertFailure_(\x22Expected string but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertFunction \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 typeof value !\x3d\x3d \x22function\x22) {\n    goog.asserts.doAssertFailure_(\x22Expected function but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertObject \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 !goog.isObject(value)) {\n    goog.asserts.doAssertFailure_(\x22Expected object but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertArray \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 !Array.isArray(value)) {\n    goog.asserts.doAssertFailure_(\x22Expected array but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertBoolean \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 typeof value !\x3d\x3d \x22boolean\x22) {\n    goog.asserts.doAssertFailure_(\x22Expected boolean but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertElement \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 (!goog.isObject(value) || value.nodeType !\x3d goog.dom.NodeType.ELEMENT)) {\n    goog.asserts.doAssertFailure_(\x22Expected Element but got %s: %s.\x22, [goog.typeOf(value), value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertInstanceof \x3d function(value, type, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 !(value instanceof type)) {\n    goog.asserts.doAssertFailure_(\x22Expected instanceof %s but got %s.\x22, [goog.asserts.getType_(type), goog.asserts.getType_(value)], opt_message, Array.prototype.slice.call(arguments, 3));\n  }\n  return value;\n};\ngoog.asserts.assertFinite \x3d function(value, opt_message, var_args) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 (typeof value !\x3d \x22number\x22 || !isFinite(value))) {\n    goog.asserts.doAssertFailure_(\x22Expected %s to be a finite number but it is not.\x22, [value], opt_message, Array.prototype.slice.call(arguments, 2));\n  }\n  return value;\n};\ngoog.asserts.assertObjectPrototypeIsIntact \x3d function() {\n  for (var key in Object.prototype) {\n    goog.asserts.fail(key + \x22 should not be enumerable in Object.prototype.\x22);\n  }\n};\ngoog.asserts.getType_ \x3d function(value) {\n  if (value instanceof Function) {\n    return value.displayName || value.name || \x22unknown type name\x22;\n  } else {\n    if (value instanceof Object) {\n      return value.constructor.displayName || value.constructor.name || Object.prototype.toString.call(value);\n    } else {\n      return value \x3d\x3d\x3d null ? \x22null\x22 : typeof value;\n    }\n  }\n};\n");
SHADOW_ENV.evalLoad("goog.reflect.reflect.js", true , "goog.provide(\x22goog.reflect\x22);\ngoog.reflect.object \x3d function(type, object) {\n  return object;\n};\ngoog.reflect.objectProperty \x3d function(prop, object) {\n  return prop;\n};\ngoog.reflect.sinkValue \x3d function(x) {\n  goog.reflect.sinkValue[\x22 \x22](x);\n  return x;\n};\ngoog.reflect.sinkValue[\x22 \x22] \x3d goog.nullFunction;\ngoog.reflect.canAccessProperty \x3d function(obj, prop) {\n  try {\n    goog.reflect.sinkValue(obj[prop]);\n    return true;\n  } catch (e) {\n  }\n  return false;\n};\ngoog.reflect.cache \x3d function(cacheObj, key, valueFn, opt_keyFn) {\n  var storedKey \x3d opt_keyFn ? opt_keyFn(key) : key;\n  if (Object.prototype.hasOwnProperty.call(cacheObj, storedKey)) {\n    return cacheObj[storedKey];\n  }\n  return cacheObj[storedKey] \x3d valueFn(key);\n};\n");
SHADOW_ENV.evalLoad("goog.math.long.js", true , "goog.loadModule(function(exports) {\n  \x22use strict\x22;\n  goog.module(\x22goog.math.Long\x22);\n  goog.module.declareLegacyNamespace();\n  var asserts \x3d goog.require(\x22goog.asserts\x22);\n  var reflect \x3d goog.require(\x22goog.reflect\x22);\n  var Long \x3d function(low, high) {\n    this.low_ \x3d low | 0;\n    this.high_ \x3d high | 0;\n  };\n  Long.prototype.toInt \x3d function() {\n    return this.low_;\n  };\n  Long.prototype.toNumber \x3d function() {\n    return this.high_ * TWO_PWR_32_DBL_ + this.getLowBitsUnsigned();\n  };\n  Long.prototype.isSafeInteger \x3d function() {\n    var top11Bits \x3d this.high_ \x3e\x3e 21;\n    return top11Bits \x3d\x3d 0 || top11Bits \x3d\x3d -1 \x26\x26 !(this.low_ \x3d\x3d 0 \x26\x26 this.high_ \x3d\x3d (4292870144 | 0));\n  };\n  Long.prototype.toString \x3d function(opt_radix) {\n    var radix \x3d opt_radix || 10;\n    if (radix \x3c 2 || 36 \x3c radix) {\n      throw new Error(\x22radix out of range: \x22 + radix);\n    }\n    if (this.isSafeInteger()) {\n      var asNumber \x3d this.toNumber();\n      return radix \x3d\x3d 10 ? \x22\x22 + asNumber : asNumber.toString(radix);\n    }\n    var safeDigits \x3d 14 - (radix \x3e\x3e 2);\n    var radixPowSafeDigits \x3d Math.pow(radix, safeDigits);\n    var radixToPower \x3d Long.fromBits(radixPowSafeDigits, radixPowSafeDigits / TWO_PWR_32_DBL_);\n    var remDiv \x3d this.div(radixToPower);\n    var val \x3d Math.abs(this.subtract(remDiv.multiply(radixToPower)).toNumber());\n    var digits \x3d radix \x3d\x3d 10 ? \x22\x22 + val : val.toString(radix);\n    if (digits.length \x3c safeDigits) {\n      digits \x3d \x220000000000000\x22.substr(digits.length - safeDigits) + digits;\n    }\n    val \x3d remDiv.toNumber();\n    return (radix \x3d\x3d 10 ? val : val.toString(radix)) + digits;\n  };\n  Long.prototype.getHighBits \x3d function() {\n    return this.high_;\n  };\n  Long.prototype.getLowBits \x3d function() {\n    return this.low_;\n  };\n  Long.prototype.getLowBitsUnsigned \x3d function() {\n    return this.low_ \x3e\x3e\x3e 0;\n  };\n  Long.prototype.getNumBitsAbs \x3d function() {\n    if (this.isNegative()) {\n      if (this.equals(Long.getMinValue())) {\n        return 64;\n      } else {\n        return this.negate().getNumBitsAbs();\n      }\n    } else {\n      var val \x3d this.high_ !\x3d 0 ? this.high_ : this.low_;\n      for (var bit \x3d 31; bit \x3e 0; bit--) {\n        if ((val \x26 1 \x3c\x3c bit) !\x3d 0) {\n          break;\n        }\n      }\n      return this.high_ !\x3d 0 ? bit + 33 : bit + 1;\n    }\n  };\n  Long.prototype.isZero \x3d function() {\n    return this.low_ \x3d\x3d 0 \x26\x26 this.high_ \x3d\x3d 0;\n  };\n  Long.prototype.isNegative \x3d function() {\n    return this.high_ \x3c 0;\n  };\n  Long.prototype.isOdd \x3d function() {\n    return (this.low_ \x26 1) \x3d\x3d 1;\n  };\n  Long.prototype.equals \x3d function(other) {\n    return this.low_ \x3d\x3d other.low_ \x26\x26 this.high_ \x3d\x3d other.high_;\n  };\n  Long.prototype.notEquals \x3d function(other) {\n    return !this.equals(other);\n  };\n  Long.prototype.lessThan \x3d function(other) {\n    return this.compare(other) \x3c 0;\n  };\n  Long.prototype.lessThanOrEqual \x3d function(other) {\n    return this.compare(other) \x3c\x3d 0;\n  };\n  Long.prototype.greaterThan \x3d function(other) {\n    return this.compare(other) \x3e 0;\n  };\n  Long.prototype.greaterThanOrEqual \x3d function(other) {\n    return this.compare(other) \x3e\x3d 0;\n  };\n  Long.prototype.compare \x3d function(other) {\n    if (this.high_ \x3d\x3d other.high_) {\n      if (this.low_ \x3d\x3d other.low_) {\n        return 0;\n      }\n      return this.getLowBitsUnsigned() \x3e other.getLowBitsUnsigned() ? 1 : -1;\n    }\n    return this.high_ \x3e other.high_ ? 1 : -1;\n  };\n  Long.prototype.negate \x3d function() {\n    var negLow \x3d ~this.low_ + 1 | 0;\n    var overflowFromLow \x3d !negLow;\n    var negHigh \x3d ~this.high_ + overflowFromLow | 0;\n    return Long.fromBits(negLow, negHigh);\n  };\n  Long.prototype.add \x3d function(other) {\n    var a48 \x3d this.high_ \x3e\x3e\x3e 16;\n    var a32 \x3d this.high_ \x26 65535;\n    var a16 \x3d this.low_ \x3e\x3e\x3e 16;\n    var a00 \x3d this.low_ \x26 65535;\n    var b48 \x3d other.high_ \x3e\x3e\x3e 16;\n    var b32 \x3d other.high_ \x26 65535;\n    var b16 \x3d other.low_ \x3e\x3e\x3e 16;\n    var b00 \x3d other.low_ \x26 65535;\n    var c48 \x3d 0, c32 \x3d 0, c16 \x3d 0, c00 \x3d 0;\n    c00 +\x3d a00 + b00;\n    c16 +\x3d c00 \x3e\x3e\x3e 16;\n    c00 \x26\x3d 65535;\n    c16 +\x3d a16 + b16;\n    c32 +\x3d c16 \x3e\x3e\x3e 16;\n    c16 \x26\x3d 65535;\n    c32 +\x3d a32 + b32;\n    c48 +\x3d c32 \x3e\x3e\x3e 16;\n    c32 \x26\x3d 65535;\n    c48 +\x3d a48 + b48;\n    c48 \x26\x3d 65535;\n    return Long.fromBits(c16 \x3c\x3c 16 | c00, c48 \x3c\x3c 16 | c32);\n  };\n  Long.prototype.subtract \x3d function(other) {\n    return this.add(other.negate());\n  };\n  Long.prototype.multiply \x3d function(other) {\n    if (this.isZero()) {\n      return this;\n    }\n    if (other.isZero()) {\n      return other;\n    }\n    var a48 \x3d this.high_ \x3e\x3e\x3e 16;\n    var a32 \x3d this.high_ \x26 65535;\n    var a16 \x3d this.low_ \x3e\x3e\x3e 16;\n    var a00 \x3d this.low_ \x26 65535;\n    var b48 \x3d other.high_ \x3e\x3e\x3e 16;\n    var b32 \x3d other.high_ \x26 65535;\n    var b16 \x3d other.low_ \x3e\x3e\x3e 16;\n    var b00 \x3d other.low_ \x26 65535;\n    var c48 \x3d 0, c32 \x3d 0, c16 \x3d 0, c00 \x3d 0;\n    c00 +\x3d a00 * b00;\n    c16 +\x3d c00 \x3e\x3e\x3e 16;\n    c00 \x26\x3d 65535;\n    c16 +\x3d a16 * b00;\n    c32 +\x3d c16 \x3e\x3e\x3e 16;\n    c16 \x26\x3d 65535;\n    c16 +\x3d a00 * b16;\n    c32 +\x3d c16 \x3e\x3e\x3e 16;\n    c16 \x26\x3d 65535;\n    c32 +\x3d a32 * b00;\n    c48 +\x3d c32 \x3e\x3e\x3e 16;\n    c32 \x26\x3d 65535;\n    c32 +\x3d a16 * b16;\n    c48 +\x3d c32 \x3e\x3e\x3e 16;\n    c32 \x26\x3d 65535;\n    c32 +\x3d a00 * b32;\n    c48 +\x3d c32 \x3e\x3e\x3e 16;\n    c32 \x26\x3d 65535;\n    c48 +\x3d a48 * b00 + a32 * b16 + a16 * b32 + a00 * b48;\n    c48 \x26\x3d 65535;\n    return Long.fromBits(c16 \x3c\x3c 16 | c00, c48 \x3c\x3c 16 | c32);\n  };\n  Long.prototype.div \x3d function(other) {\n    if (other.isZero()) {\n      throw new Error(\x22division by zero\x22);\n    }\n    if (this.isNegative()) {\n      if (this.equals(Long.getMinValue())) {\n        if (other.equals(Long.getOne()) || other.equals(Long.getNegOne())) {\n          return Long.getMinValue();\n        }\n        if (other.equals(Long.getMinValue())) {\n          return Long.getOne();\n        }\n        var halfThis \x3d this.shiftRight(1);\n        var approx \x3d halfThis.div(other).shiftLeft(1);\n        if (approx.equals(Long.getZero())) {\n          return other.isNegative() ? Long.getOne() : Long.getNegOne();\n        }\n        var rem \x3d this.subtract(other.multiply(approx));\n        var result \x3d approx.add(rem.div(other));\n        return result;\n      }\n      if (other.isNegative()) {\n        return this.negate().div(other.negate());\n      }\n      return this.negate().div(other).negate();\n    }\n    if (this.isZero()) {\n      return Long.getZero();\n    }\n    if (other.isNegative()) {\n      if (other.equals(Long.getMinValue())) {\n        return Long.getZero();\n      }\n      return this.div(other.negate()).negate();\n    }\n    var res \x3d Long.getZero();\n    var rem \x3d this;\n    while (rem.greaterThanOrEqual(other)) {\n      var approx \x3d Math.max(1, Math.floor(rem.toNumber() / other.toNumber()));\n      var log2 \x3d Math.ceil(Math.log(approx) / Math.LN2);\n      var delta \x3d log2 \x3c\x3d 48 ? 1 : Math.pow(2, log2 - 48);\n      var approxRes \x3d Long.fromNumber(approx);\n      var approxRem \x3d approxRes.multiply(other);\n      while (approxRem.isNegative() || approxRem.greaterThan(rem)) {\n        approx -\x3d delta;\n        approxRes \x3d Long.fromNumber(approx);\n        approxRem \x3d approxRes.multiply(other);\n      }\n      if (approxRes.isZero()) {\n        approxRes \x3d Long.getOne();\n      }\n      res \x3d res.add(approxRes);\n      rem \x3d rem.subtract(approxRem);\n    }\n    return res;\n  };\n  Long.prototype.modulo \x3d function(other) {\n    return this.subtract(this.div(other).multiply(other));\n  };\n  Long.prototype.not \x3d function() {\n    return Long.fromBits(~this.low_, ~this.high_);\n  };\n  Long.prototype.and \x3d function(other) {\n    return Long.fromBits(this.low_ \x26 other.low_, this.high_ \x26 other.high_);\n  };\n  Long.prototype.or \x3d function(other) {\n    return Long.fromBits(this.low_ | other.low_, this.high_ | other.high_);\n  };\n  Long.prototype.xor \x3d function(other) {\n    return Long.fromBits(this.low_ ^ other.low_, this.high_ ^ other.high_);\n  };\n  Long.prototype.shiftLeft \x3d function(numBits) {\n    numBits \x26\x3d 63;\n    if (numBits \x3d\x3d 0) {\n      return this;\n    } else {\n      var low \x3d this.low_;\n      if (numBits \x3c 32) {\n        var high \x3d this.high_;\n        return Long.fromBits(low \x3c\x3c numBits, high \x3c\x3c numBits | low \x3e\x3e\x3e 32 - numBits);\n      } else {\n        return Long.fromBits(0, low \x3c\x3c numBits - 32);\n      }\n    }\n  };\n  Long.prototype.shiftRight \x3d function(numBits) {\n    numBits \x26\x3d 63;\n    if (numBits \x3d\x3d 0) {\n      return this;\n    } else {\n      var high \x3d this.high_;\n      if (numBits \x3c 32) {\n        var low \x3d this.low_;\n        return Long.fromBits(low \x3e\x3e\x3e numBits | high \x3c\x3c 32 - numBits, high \x3e\x3e numBits);\n      } else {\n        return Long.fromBits(high \x3e\x3e numBits - 32, high \x3e\x3d 0 ? 0 : -1);\n      }\n    }\n  };\n  Long.prototype.shiftRightUnsigned \x3d function(numBits) {\n    numBits \x26\x3d 63;\n    if (numBits \x3d\x3d 0) {\n      return this;\n    } else {\n      var high \x3d this.high_;\n      if (numBits \x3c 32) {\n        var low \x3d this.low_;\n        return Long.fromBits(low \x3e\x3e\x3e numBits | high \x3c\x3c 32 - numBits, high \x3e\x3e\x3e numBits);\n      } else {\n        if (numBits \x3d\x3d 32) {\n          return Long.fromBits(high, 0);\n        } else {\n          return Long.fromBits(high \x3e\x3e\x3e numBits - 32, 0);\n        }\n      }\n    }\n  };\n  Long.fromInt \x3d function(value) {\n    var intValue \x3d value | 0;\n    asserts.assert(value \x3d\x3d\x3d intValue, \x22value should be a 32-bit integer\x22);\n    if (-128 \x3c\x3d intValue \x26\x26 intValue \x3c 128) {\n      return getCachedIntValue_(intValue);\n    } else {\n      return new Long(intValue, intValue \x3c 0 ? -1 : 0);\n    }\n  };\n  Long.fromNumber \x3d function(value) {\n    if (value \x3e 0) {\n      if (value \x3e\x3d TWO_PWR_63_DBL_) {\n        return Long.getMaxValue();\n      }\n      return new Long(value, value / TWO_PWR_32_DBL_);\n    } else {\n      if (value \x3c 0) {\n        if (value \x3c\x3d -TWO_PWR_63_DBL_) {\n          return Long.getMinValue();\n        }\n        return (new Long(-value, -value / TWO_PWR_32_DBL_)).negate();\n      } else {\n        return Long.getZero();\n      }\n    }\n  };\n  Long.fromBits \x3d function(lowBits, highBits) {\n    return new Long(lowBits, highBits);\n  };\n  Long.fromString \x3d function(str, opt_radix) {\n    if (str.charAt(0) \x3d\x3d \x22-\x22) {\n      return Long.fromString(str.substring(1), opt_radix).negate();\n    }\n    var numberValue \x3d parseInt(str, opt_radix || 10);\n    if (numberValue \x3c\x3d MAX_SAFE_INTEGER_) {\n      return new Long(numberValue % TWO_PWR_32_DBL_ | 0, numberValue / TWO_PWR_32_DBL_ | 0);\n    }\n    if (str.length \x3d\x3d 0) {\n      throw new Error(\x22number format error: empty string\x22);\n    }\n    if (str.indexOf(\x22-\x22) \x3e\x3d 0) {\n      throw new Error(\x27number format error: interior \x22-\x22 character: \x27 + str);\n    }\n    var radix \x3d opt_radix || 10;\n    if (radix \x3c 2 || 36 \x3c radix) {\n      throw new Error(\x22radix out of range: \x22 + radix);\n    }\n    var radixToPower \x3d Long.fromNumber(Math.pow(radix, 8));\n    var result \x3d Long.getZero();\n    for (var i \x3d 0; i \x3c str.length; i +\x3d 8) {\n      var size \x3d Math.min(8, str.length - i);\n      var value \x3d parseInt(str.substring(i, i + size), radix);\n      if (size \x3c 8) {\n        var power \x3d Long.fromNumber(Math.pow(radix, size));\n        result \x3d result.multiply(power).add(Long.fromNumber(value));\n      } else {\n        result \x3d result.multiply(radixToPower);\n        result \x3d result.add(Long.fromNumber(value));\n      }\n    }\n    return result;\n  };\n  Long.isStringInRange \x3d function(str, opt_radix) {\n    var radix \x3d opt_radix || 10;\n    if (radix \x3c 2 || 36 \x3c radix) {\n      throw new Error(\x22radix out of range: \x22 + radix);\n    }\n    var extremeValue \x3d str.charAt(0) \x3d\x3d \x22-\x22 ? MIN_VALUE_FOR_RADIX_[radix] : MAX_VALUE_FOR_RADIX_[radix];\n    if (str.length \x3c extremeValue.length) {\n      return true;\n    } else {\n      if (str.length \x3d\x3d extremeValue.length \x26\x26 str \x3c\x3d extremeValue) {\n        return true;\n      } else {\n        return false;\n      }\n    }\n  };\n  Long.getZero \x3d function() {\n    return ZERO_;\n  };\n  Long.getOne \x3d function() {\n    return ONE_;\n  };\n  Long.getNegOne \x3d function() {\n    return NEG_ONE_;\n  };\n  Long.getMaxValue \x3d function() {\n    return MAX_VALUE_;\n  };\n  Long.getMinValue \x3d function() {\n    return MIN_VALUE_;\n  };\n  Long.getTwoPwr24 \x3d function() {\n    return TWO_PWR_24_;\n  };\n  exports \x3d Long;\n  var IntCache_ \x3d {};\n  function getCachedIntValue_(value) {\n    return reflect.cache(IntCache_, value, function(val) {\n      return new Long(val, val \x3c 0 ? -1 : 0);\n    });\n  }\n  var MAX_VALUE_FOR_RADIX_ \x3d [\x22\x22, \x22\x22, \x22111111111111111111111111111111111111111111111111111111111111111\x22, \x222021110011022210012102010021220101220221\x22, \x2213333333333333333333333333333333\x22, \x221104332401304422434310311212\x22, \x221540241003031030222122211\x22, \x2222341010611245052052300\x22, \x22777777777777777777777\x22, \x2267404283172107811827\x22, \x229223372036854775807\x22, \x221728002635214590697\x22, \x2241a792678515120367\x22, \x2210b269549075433c37\x22, \x224340724c6c71dc7a7\x22, \x22160e2ad3246366807\x22, \x227fffffffffffffff\x22, \x2233d3d8307b214008\x22, \x2216agh595df825fa7\x22, \n  \x22ba643dci0ffeehh\x22, \x225cbfjia3fh26ja7\x22, \x222heiciiie82dh97\x22, \x221adaibb21dckfa7\x22, \x22i6k448cf4192c2\x22, \x22acd772jnc9l0l7\x22, \x2264ie1focnn5g77\x22, \x223igoecjbmca687\x22, \x2227c48l5b37oaop\x22, \x221bk39f3ah3dmq7\x22, \x22q1se8f0m04isb\x22, \x22hajppbc1fc207\x22, \x22bm03i95hia437\x22, \x227vvvvvvvvvvvv\x22, \x225hg4ck9jd4u37\x22, \x223tdtk1v8j6tpp\x22, \x222pijmikexrxp7\x22, \x221y2p0ij32e8e7\x22];\n  var MIN_VALUE_FOR_RADIX_ \x3d [\x22\x22, \x22\x22, \x22-1000000000000000000000000000000000000000000000000000000000000000\x22, \x22-2021110011022210012102010021220101220222\x22, \x22-20000000000000000000000000000000\x22, \x22-1104332401304422434310311213\x22, \x22-1540241003031030222122212\x22, \x22-22341010611245052052301\x22, \x22-1000000000000000000000\x22, \x22-67404283172107811828\x22, \x22-9223372036854775808\x22, \x22-1728002635214590698\x22, \x22-41a792678515120368\x22, \x22-10b269549075433c38\x22, \x22-4340724c6c71dc7a8\x22, \x22-160e2ad3246366808\x22, \x22-8000000000000000\x22, \x22-33d3d8307b214009\x22, \n  \x22-16agh595df825fa8\x22, \x22-ba643dci0ffeehi\x22, \x22-5cbfjia3fh26ja8\x22, \x22-2heiciiie82dh98\x22, \x22-1adaibb21dckfa8\x22, \x22-i6k448cf4192c3\x22, \x22-acd772jnc9l0l8\x22, \x22-64ie1focnn5g78\x22, \x22-3igoecjbmca688\x22, \x22-27c48l5b37oaoq\x22, \x22-1bk39f3ah3dmq8\x22, \x22-q1se8f0m04isc\x22, \x22-hajppbc1fc208\x22, \x22-bm03i95hia438\x22, \x22-8000000000000\x22, \x22-5hg4ck9jd4u38\x22, \x22-3tdtk1v8j6tpq\x22, \x22-2pijmikexrxp8\x22, \x22-1y2p0ij32e8e8\x22];\n  var MAX_SAFE_INTEGER_ \x3d 9007199254740991;\n  var TWO_PWR_32_DBL_ \x3d 4294967296;\n  var TWO_PWR_63_DBL_ \x3d 0x7fffffffffffffff;\n  var ZERO_ \x3d Long.fromBits(0, 0);\n  var ONE_ \x3d Long.fromBits(1, 0);\n  var NEG_ONE_ \x3d Long.fromBits(-1, -1);\n  var MAX_VALUE_ \x3d Long.fromBits(4294967295, 2147483647);\n  var MIN_VALUE_ \x3d Long.fromBits(0, 2147483648);\n  var TWO_PWR_24_ \x3d Long.fromBits(1 \x3c\x3c 24, 0);\n  return exports;\n});\n");
SHADOW_ENV.evalLoad("goog.math.integer.js", true , "goog.provide(\x22goog.math.Integer\x22);\ngoog.require(\x22goog.reflect\x22);\ngoog.math.Integer \x3d function(bits, sign) {\n  this.sign_ \x3d sign;\n  var localBits \x3d [];\n  var top \x3d true;\n  for (var i \x3d bits.length - 1; i \x3e\x3d 0; i--) {\n    var val \x3d bits[i] | 0;\n    if (!top || val !\x3d sign) {\n      localBits[i] \x3d val;\n      top \x3d false;\n    }\n  }\n  this.bits_ \x3d localBits;\n};\ngoog.math.Integer.IntCache_ \x3d {};\ngoog.math.Integer.fromInt \x3d function(value) {\n  if (-128 \x3c\x3d value \x26\x26 value \x3c 128) {\n    return goog.reflect.cache(goog.math.Integer.IntCache_, value, function(val) {\n      return new goog.math.Integer([val | 0], val \x3c 0 ? -1 : 0);\n    });\n  }\n  return new goog.math.Integer([value | 0], value \x3c 0 ? -1 : 0);\n};\ngoog.math.Integer.fromNumber \x3d function(value) {\n  if (isNaN(value) || !isFinite(value)) {\n    return goog.math.Integer.ZERO;\n  } else {\n    if (value \x3c 0) {\n      return goog.math.Integer.fromNumber(-value).negate();\n    } else {\n      var bits \x3d [];\n      var pow \x3d 1;\n      for (var i \x3d 0; value \x3e\x3d pow; i++) {\n        bits[i] \x3d value / pow | 0;\n        pow *\x3d goog.math.Integer.TWO_PWR_32_DBL_;\n      }\n      return new goog.math.Integer(bits, 0);\n    }\n  }\n};\ngoog.math.Integer.fromBits \x3d function(bits) {\n  var high \x3d bits[bits.length - 1];\n  return new goog.math.Integer(bits, high \x26 1 \x3c\x3c 31 ? -1 : 0);\n};\ngoog.math.Integer.fromString \x3d function(str, opt_radix) {\n  if (str.length \x3d\x3d 0) {\n    throw new Error(\x22number format error: empty string\x22);\n  }\n  var radix \x3d opt_radix || 10;\n  if (radix \x3c 2 || 36 \x3c radix) {\n    throw new Error(\x22radix out of range: \x22 + radix);\n  }\n  if (str.charAt(0) \x3d\x3d \x22-\x22) {\n    return goog.math.Integer.fromString(str.substring(1), radix).negate();\n  } else {\n    if (str.indexOf(\x22-\x22) \x3e\x3d 0) {\n      throw new Error(\x27number format error: interior \x22-\x22 character\x27);\n    }\n  }\n  var radixToPower \x3d goog.math.Integer.fromNumber(Math.pow(radix, 8));\n  var result \x3d goog.math.Integer.ZERO;\n  for (var i \x3d 0; i \x3c str.length; i +\x3d 8) {\n    var size \x3d Math.min(8, str.length - i);\n    var value \x3d parseInt(str.substring(i, i + size), radix);\n    if (size \x3c 8) {\n      var power \x3d goog.math.Integer.fromNumber(Math.pow(radix, size));\n      result \x3d result.multiply(power).add(goog.math.Integer.fromNumber(value));\n    } else {\n      result \x3d result.multiply(radixToPower);\n      result \x3d result.add(goog.math.Integer.fromNumber(value));\n    }\n  }\n  return result;\n};\ngoog.math.Integer.TWO_PWR_32_DBL_ \x3d (1 \x3c\x3c 16) * (1 \x3c\x3c 16);\ngoog.math.Integer.ZERO \x3d goog.math.Integer.fromInt(0);\ngoog.math.Integer.ONE \x3d goog.math.Integer.fromInt(1);\ngoog.math.Integer.TWO_PWR_24_ \x3d goog.math.Integer.fromInt(1 \x3c\x3c 24);\ngoog.math.Integer.prototype.toInt \x3d function() {\n  return this.bits_.length \x3e 0 ? this.bits_[0] : this.sign_;\n};\ngoog.math.Integer.prototype.toNumber \x3d function() {\n  if (this.isNegative()) {\n    return -this.negate().toNumber();\n  } else {\n    var val \x3d 0;\n    var pow \x3d 1;\n    for (var i \x3d 0; i \x3c this.bits_.length; i++) {\n      val +\x3d this.getBitsUnsigned(i) * pow;\n      pow *\x3d goog.math.Integer.TWO_PWR_32_DBL_;\n    }\n    return val;\n  }\n};\ngoog.math.Integer.prototype.toString \x3d function(opt_radix) {\n  var radix \x3d opt_radix || 10;\n  if (radix \x3c 2 || 36 \x3c radix) {\n    throw new Error(\x22radix out of range: \x22 + radix);\n  }\n  if (this.isZero()) {\n    return \x220\x22;\n  } else {\n    if (this.isNegative()) {\n      return \x22-\x22 + this.negate().toString(radix);\n    }\n  }\n  var radixToPower \x3d goog.math.Integer.fromNumber(Math.pow(radix, 6));\n  var rem \x3d this;\n  var result \x3d \x22\x22;\n  while (true) {\n    var remDiv \x3d rem.divide(radixToPower);\n    var intval \x3d rem.subtract(remDiv.multiply(radixToPower)).toInt() \x3e\x3e\x3e 0;\n    var digits \x3d intval.toString(radix);\n    rem \x3d remDiv;\n    if (rem.isZero()) {\n      return digits + result;\n    } else {\n      while (digits.length \x3c 6) {\n        digits \x3d \x220\x22 + digits;\n      }\n      result \x3d \x22\x22 + digits + result;\n    }\n  }\n};\ngoog.math.Integer.prototype.getBits \x3d function(index) {\n  if (index \x3c 0) {\n    return 0;\n  } else {\n    if (index \x3c this.bits_.length) {\n      return this.bits_[index];\n    } else {\n      return this.sign_;\n    }\n  }\n};\ngoog.math.Integer.prototype.getBitsUnsigned \x3d function(index) {\n  var val \x3d this.getBits(index);\n  return val \x3e\x3d 0 ? val : goog.math.Integer.TWO_PWR_32_DBL_ + val;\n};\ngoog.math.Integer.prototype.getSign \x3d function() {\n  return this.sign_;\n};\ngoog.math.Integer.prototype.isZero \x3d function() {\n  if (this.sign_ !\x3d 0) {\n    return false;\n  }\n  for (var i \x3d 0; i \x3c this.bits_.length; i++) {\n    if (this.bits_[i] !\x3d 0) {\n      return false;\n    }\n  }\n  return true;\n};\ngoog.math.Integer.prototype.isNegative \x3d function() {\n  return this.sign_ \x3d\x3d -1;\n};\ngoog.math.Integer.prototype.isOdd \x3d function() {\n  return this.bits_.length \x3d\x3d 0 \x26\x26 this.sign_ \x3d\x3d -1 || this.bits_.length \x3e 0 \x26\x26 (this.bits_[0] \x26 1) !\x3d 0;\n};\ngoog.math.Integer.prototype.equals \x3d function(other) {\n  if (this.sign_ !\x3d other.sign_) {\n    return false;\n  }\n  var len \x3d Math.max(this.bits_.length, other.bits_.length);\n  for (var i \x3d 0; i \x3c len; i++) {\n    if (this.getBits(i) !\x3d other.getBits(i)) {\n      return false;\n    }\n  }\n  return true;\n};\ngoog.math.Integer.prototype.notEquals \x3d function(other) {\n  return !this.equals(other);\n};\ngoog.math.Integer.prototype.greaterThan \x3d function(other) {\n  return this.compare(other) \x3e 0;\n};\ngoog.math.Integer.prototype.greaterThanOrEqual \x3d function(other) {\n  return this.compare(other) \x3e\x3d 0;\n};\ngoog.math.Integer.prototype.lessThan \x3d function(other) {\n  return this.compare(other) \x3c 0;\n};\ngoog.math.Integer.prototype.lessThanOrEqual \x3d function(other) {\n  return this.compare(other) \x3c\x3d 0;\n};\ngoog.math.Integer.prototype.compare \x3d function(other) {\n  var diff \x3d this.subtract(other);\n  if (diff.isNegative()) {\n    return -1;\n  } else {\n    if (diff.isZero()) {\n      return 0;\n    } else {\n      return +1;\n    }\n  }\n};\ngoog.math.Integer.prototype.shorten \x3d function(numBits) {\n  var arr_index \x3d numBits - 1 \x3e\x3e 5;\n  var bit_index \x3d (numBits - 1) % 32;\n  var bits \x3d [];\n  for (var i \x3d 0; i \x3c arr_index; i++) {\n    bits[i] \x3d this.getBits(i);\n  }\n  var sigBits \x3d bit_index \x3d\x3d 31 ? 4294967295 : (1 \x3c\x3c bit_index + 1) - 1;\n  var val \x3d this.getBits(arr_index) \x26 sigBits;\n  if (val \x26 1 \x3c\x3c bit_index) {\n    val |\x3d 4294967295 - sigBits;\n    bits[arr_index] \x3d val;\n    return new goog.math.Integer(bits, -1);\n  } else {\n    bits[arr_index] \x3d val;\n    return new goog.math.Integer(bits, 0);\n  }\n};\ngoog.math.Integer.prototype.negate \x3d function() {\n  return this.not().add(goog.math.Integer.ONE);\n};\ngoog.math.Integer.prototype.abs \x3d function() {\n  return this.isNegative() ? this.negate() : this;\n};\ngoog.math.Integer.prototype.add \x3d function(other) {\n  var len \x3d Math.max(this.bits_.length, other.bits_.length);\n  var arr \x3d [];\n  var carry \x3d 0;\n  for (var i \x3d 0; i \x3c\x3d len; i++) {\n    var a1 \x3d this.getBits(i) \x3e\x3e\x3e 16;\n    var a0 \x3d this.getBits(i) \x26 65535;\n    var b1 \x3d other.getBits(i) \x3e\x3e\x3e 16;\n    var b0 \x3d other.getBits(i) \x26 65535;\n    var c0 \x3d carry + a0 + b0;\n    var c1 \x3d (c0 \x3e\x3e\x3e 16) + a1 + b1;\n    carry \x3d c1 \x3e\x3e\x3e 16;\n    c0 \x26\x3d 65535;\n    c1 \x26\x3d 65535;\n    arr[i] \x3d c1 \x3c\x3c 16 | c0;\n  }\n  return goog.math.Integer.fromBits(arr);\n};\ngoog.math.Integer.prototype.subtract \x3d function(other) {\n  return this.add(other.negate());\n};\ngoog.math.Integer.prototype.multiply \x3d function(other) {\n  if (this.isZero()) {\n    return goog.math.Integer.ZERO;\n  } else {\n    if (other.isZero()) {\n      return goog.math.Integer.ZERO;\n    }\n  }\n  if (this.isNegative()) {\n    if (other.isNegative()) {\n      return this.negate().multiply(other.negate());\n    } else {\n      return this.negate().multiply(other).negate();\n    }\n  } else {\n    if (other.isNegative()) {\n      return this.multiply(other.negate()).negate();\n    }\n  }\n  if (this.lessThan(goog.math.Integer.TWO_PWR_24_) \x26\x26 other.lessThan(goog.math.Integer.TWO_PWR_24_)) {\n    return goog.math.Integer.fromNumber(this.toNumber() * other.toNumber());\n  }\n  var len \x3d this.bits_.length + other.bits_.length;\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c 2 * len; i++) {\n    arr[i] \x3d 0;\n  }\n  for (var i \x3d 0; i \x3c this.bits_.length; i++) {\n    for (var j \x3d 0; j \x3c other.bits_.length; j++) {\n      var a1 \x3d this.getBits(i) \x3e\x3e\x3e 16;\n      var a0 \x3d this.getBits(i) \x26 65535;\n      var b1 \x3d other.getBits(j) \x3e\x3e\x3e 16;\n      var b0 \x3d other.getBits(j) \x26 65535;\n      arr[2 * i + 2 * j] +\x3d a0 * b0;\n      goog.math.Integer.carry16_(arr, 2 * i + 2 * j);\n      arr[2 * i + 2 * j + 1] +\x3d a1 * b0;\n      goog.math.Integer.carry16_(arr, 2 * i + 2 * j + 1);\n      arr[2 * i + 2 * j + 1] +\x3d a0 * b1;\n      goog.math.Integer.carry16_(arr, 2 * i + 2 * j + 1);\n      arr[2 * i + 2 * j + 2] +\x3d a1 * b1;\n      goog.math.Integer.carry16_(arr, 2 * i + 2 * j + 2);\n    }\n  }\n  for (var i \x3d 0; i \x3c len; i++) {\n    arr[i] \x3d arr[2 * i + 1] \x3c\x3c 16 | arr[2 * i];\n  }\n  for (var i \x3d len; i \x3c 2 * len; i++) {\n    arr[i] \x3d 0;\n  }\n  return new goog.math.Integer(arr, 0);\n};\ngoog.math.Integer.carry16_ \x3d function(bits, index) {\n  while ((bits[index] \x26 65535) !\x3d bits[index]) {\n    bits[index + 1] +\x3d bits[index] \x3e\x3e\x3e 16;\n    bits[index] \x26\x3d 65535;\n    index++;\n  }\n};\ngoog.math.Integer.prototype.slowDivide_ \x3d function(other) {\n  if (this.isNegative() || other.isNegative()) {\n    throw new Error(\x22slowDivide_ only works with positive integers.\x22);\n  }\n  var twoPower \x3d goog.math.Integer.ONE;\n  var multiple \x3d other;\n  while (multiple.lessThanOrEqual(this)) {\n    twoPower \x3d twoPower.shiftLeft(1);\n    multiple \x3d multiple.shiftLeft(1);\n  }\n  var res \x3d twoPower.shiftRight(1);\n  var total \x3d multiple.shiftRight(1);\n  var total2;\n  multiple \x3d multiple.shiftRight(2);\n  twoPower \x3d twoPower.shiftRight(2);\n  while (!multiple.isZero()) {\n    total2 \x3d total.add(multiple);\n    if (total2.lessThanOrEqual(this)) {\n      res \x3d res.add(twoPower);\n      total \x3d total2;\n    }\n    multiple \x3d multiple.shiftRight(1);\n    twoPower \x3d twoPower.shiftRight(1);\n  }\n  var remainder \x3d this.subtract(res.multiply(other));\n  return new goog.math.Integer.DivisionResult(res, remainder);\n};\ngoog.math.Integer.prototype.divide \x3d function(other) {\n  return this.divideAndRemainder(other).quotient;\n};\ngoog.math.Integer.DivisionResult \x3d function(quotient, remainder) {\n  this.quotient \x3d quotient;\n  this.remainder \x3d remainder;\n};\ngoog.math.Integer.prototype.divideAndRemainder \x3d function(other) {\n  if (other.isZero()) {\n    throw new Error(\x22division by zero\x22);\n  } else {\n    if (this.isZero()) {\n      return new goog.math.Integer.DivisionResult(goog.math.Integer.ZERO, goog.math.Integer.ZERO);\n    }\n  }\n  if (this.isNegative()) {\n    var result \x3d this.negate().divideAndRemainder(other);\n    return new goog.math.Integer.DivisionResult(result.quotient.negate(), result.remainder.negate());\n  } else {\n    if (other.isNegative()) {\n      var result \x3d this.divideAndRemainder(other.negate());\n      return new goog.math.Integer.DivisionResult(result.quotient.negate(), result.remainder);\n    }\n  }\n  if (this.bits_.length \x3e 30) {\n    return this.slowDivide_(other);\n  }\n  var res \x3d goog.math.Integer.ZERO;\n  var rem \x3d this;\n  while (rem.greaterThanOrEqual(other)) {\n    var approx \x3d Math.max(1, Math.floor(rem.toNumber() / other.toNumber()));\n    var log2 \x3d Math.ceil(Math.log(approx) / Math.LN2);\n    var delta \x3d log2 \x3c\x3d 48 ? 1 : Math.pow(2, log2 - 48);\n    var approxRes \x3d goog.math.Integer.fromNumber(approx);\n    var approxRem \x3d approxRes.multiply(other);\n    while (approxRem.isNegative() || approxRem.greaterThan(rem)) {\n      approx -\x3d delta;\n      approxRes \x3d goog.math.Integer.fromNumber(approx);\n      approxRem \x3d approxRes.multiply(other);\n    }\n    if (approxRes.isZero()) {\n      approxRes \x3d goog.math.Integer.ONE;\n    }\n    res \x3d res.add(approxRes);\n    rem \x3d rem.subtract(approxRem);\n  }\n  return new goog.math.Integer.DivisionResult(res, rem);\n};\ngoog.math.Integer.prototype.modulo \x3d function(other) {\n  return this.divideAndRemainder(other).remainder;\n};\ngoog.math.Integer.prototype.not \x3d function() {\n  var len \x3d this.bits_.length;\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c len; i++) {\n    arr[i] \x3d ~this.bits_[i];\n  }\n  return new goog.math.Integer(arr, ~this.sign_);\n};\ngoog.math.Integer.prototype.and \x3d function(other) {\n  var len \x3d Math.max(this.bits_.length, other.bits_.length);\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c len; i++) {\n    arr[i] \x3d this.getBits(i) \x26 other.getBits(i);\n  }\n  return new goog.math.Integer(arr, this.sign_ \x26 other.sign_);\n};\ngoog.math.Integer.prototype.or \x3d function(other) {\n  var len \x3d Math.max(this.bits_.length, other.bits_.length);\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c len; i++) {\n    arr[i] \x3d this.getBits(i) | other.getBits(i);\n  }\n  return new goog.math.Integer(arr, this.sign_ | other.sign_);\n};\ngoog.math.Integer.prototype.xor \x3d function(other) {\n  var len \x3d Math.max(this.bits_.length, other.bits_.length);\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c len; i++) {\n    arr[i] \x3d this.getBits(i) ^ other.getBits(i);\n  }\n  return new goog.math.Integer(arr, this.sign_ ^ other.sign_);\n};\ngoog.math.Integer.prototype.shiftLeft \x3d function(numBits) {\n  var arr_delta \x3d numBits \x3e\x3e 5;\n  var bit_delta \x3d numBits % 32;\n  var len \x3d this.bits_.length + arr_delta + (bit_delta \x3e 0 ? 1 : 0);\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c len; i++) {\n    if (bit_delta \x3e 0) {\n      arr[i] \x3d this.getBits(i - arr_delta) \x3c\x3c bit_delta | this.getBits(i - arr_delta - 1) \x3e\x3e\x3e 32 - bit_delta;\n    } else {\n      arr[i] \x3d this.getBits(i - arr_delta);\n    }\n  }\n  return new goog.math.Integer(arr, this.sign_);\n};\ngoog.math.Integer.prototype.shiftRight \x3d function(numBits) {\n  var arr_delta \x3d numBits \x3e\x3e 5;\n  var bit_delta \x3d numBits % 32;\n  var len \x3d this.bits_.length - arr_delta;\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c len; i++) {\n    if (bit_delta \x3e 0) {\n      arr[i] \x3d this.getBits(i + arr_delta) \x3e\x3e\x3e bit_delta | this.getBits(i + arr_delta + 1) \x3c\x3c 32 - bit_delta;\n    } else {\n      arr[i] \x3d this.getBits(i + arr_delta);\n    }\n  }\n  return new goog.math.Integer(arr, this.sign_);\n};\n");
SHADOW_ENV.evalLoad("goog.dom.asserts.js", true , "goog.provide(\x22goog.dom.asserts\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.dom.asserts.assertIsLocation \x3d function(o) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var win \x3d goog.dom.asserts.getWindow_(o);\n    if (win) {\n      if (!o || !(o instanceof win.Location) \x26\x26 o instanceof win.Element) {\n        goog.asserts.fail(\x22Argument is not a Location (or a non-Element mock); got: %s\x22, goog.dom.asserts.debugStringForType_(o));\n      }\n    }\n  }\n  return o;\n};\ngoog.dom.asserts.assertIsElementType_ \x3d function(o, typename) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var win \x3d goog.dom.asserts.getWindow_(o);\n    if (win \x26\x26 typeof win[typename] !\x3d \x22undefined\x22) {\n      if (!o || !(o instanceof win[typename]) \x26\x26 (o instanceof win.Location || o instanceof win.Element)) {\n        goog.asserts.fail(\x22Argument is not a %s (or a non-Element, non-Location mock); \x22 + \x22got: %s\x22, typename, goog.dom.asserts.debugStringForType_(o));\n      }\n    }\n  }\n  return o;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLAnchorElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLButtonElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLButtonElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLLinkElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLLinkElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLImageElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLImageElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLAudioElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLAudioElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLVideoElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLVideoElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLInputElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLInputElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLTextAreaElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLCanvasElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLEmbedElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLFormElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLFormElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLFrameElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLFrameElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLIFrameElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLObjectElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLObjectElement\x22);\n};\ngoog.dom.asserts.assertIsHTMLScriptElement \x3d function(o) {\n  return goog.dom.asserts.assertIsElementType_(o, \x22HTMLScriptElement\x22);\n};\ngoog.dom.asserts.debugStringForType_ \x3d function(value) {\n  if (goog.isObject(value)) {\n    try {\n      return value.constructor.displayName || value.constructor.name || Object.prototype.toString.call(value);\n    } catch (e) {\n      return \x22\\x3cobject could not be stringified\\x3e\x22;\n    }\n  } else {\n    return value \x3d\x3d\x3d undefined ? \x22undefined\x22 : value \x3d\x3d\x3d null ? \x22null\x22 : typeof value;\n  }\n};\ngoog.dom.asserts.getWindow_ \x3d function(o) {\n  try {\n    var doc \x3d o \x26\x26 o.ownerDocument;\n    var win \x3d doc \x26\x26 (doc.defaultView || doc.parentWindow);\n    win \x3d win || goog.global;\n    if (win.Element \x26\x26 win.Location) {\n      return win;\n    }\n  } catch (ex) {\n  }\n  return null;\n};\n");
SHADOW_ENV.evalLoad("goog.functions.functions.js", true , "goog.provide(\x22goog.functions\x22);\ngoog.functions.constant \x3d function(retValue) {\n  return function() {\n    return retValue;\n  };\n};\ngoog.functions.FALSE \x3d function() {\n  return false;\n};\ngoog.functions.TRUE \x3d function() {\n  return true;\n};\ngoog.functions.NULL \x3d function() {\n  return null;\n};\ngoog.functions.UNDEFINED \x3d function() {\n  return undefined;\n};\ngoog.functions.EMPTY \x3d goog.functions.UNDEFINED;\ngoog.functions.identity \x3d function(opt_returnValue, var_args) {\n  return opt_returnValue;\n};\ngoog.functions.error \x3d function(message) {\n  return function() {\n    throw new Error(message);\n  };\n};\ngoog.functions.fail \x3d function(err) {\n  return function() {\n    throw err;\n  };\n};\ngoog.functions.lock \x3d function(f, opt_numArgs) {\n  opt_numArgs \x3d opt_numArgs || 0;\n  return function() {\n    var self \x3d this;\n    return f.apply(self, Array.prototype.slice.call(arguments, 0, opt_numArgs));\n  };\n};\ngoog.functions.nth \x3d function(n) {\n  return function() {\n    return arguments[n];\n  };\n};\ngoog.functions.partialRight \x3d function(fn, var_args) {\n  var rightArgs \x3d Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var self \x3d this;\n    if (self \x3d\x3d\x3d goog.global) {\n      self \x3d undefined;\n    }\n    var newArgs \x3d Array.prototype.slice.call(arguments);\n    newArgs.push.apply(newArgs, rightArgs);\n    return fn.apply(self, newArgs);\n  };\n};\ngoog.functions.withReturnValue \x3d function(f, retValue) {\n  return goog.functions.sequence(f, goog.functions.constant(retValue));\n};\ngoog.functions.equalTo \x3d function(value, opt_useLooseComparison) {\n  return function(other) {\n    return opt_useLooseComparison ? value \x3d\x3d other : value \x3d\x3d\x3d other;\n  };\n};\ngoog.functions.compose \x3d function(fn, var_args) {\n  var functions \x3d arguments;\n  var length \x3d functions.length;\n  return function() {\n    var self \x3d this;\n    var result;\n    if (length) {\n      result \x3d functions[length - 1].apply(self, arguments);\n    }\n    for (var i \x3d length - 2; i \x3e\x3d 0; i--) {\n      result \x3d functions[i].call(self, result);\n    }\n    return result;\n  };\n};\ngoog.functions.sequence \x3d function(var_args) {\n  var functions \x3d arguments;\n  var length \x3d functions.length;\n  return function() {\n    var self \x3d this;\n    var result;\n    for (var i \x3d 0; i \x3c length; i++) {\n      result \x3d functions[i].apply(self, arguments);\n    }\n    return result;\n  };\n};\ngoog.functions.and \x3d function(var_args) {\n  var functions \x3d arguments;\n  var length \x3d functions.length;\n  return function() {\n    var self \x3d this;\n    for (var i \x3d 0; i \x3c length; i++) {\n      if (!functions[i].apply(self, arguments)) {\n        return false;\n      }\n    }\n    return true;\n  };\n};\ngoog.functions.or \x3d function(var_args) {\n  var functions \x3d arguments;\n  var length \x3d functions.length;\n  return function() {\n    var self \x3d this;\n    for (var i \x3d 0; i \x3c length; i++) {\n      if (functions[i].apply(self, arguments)) {\n        return true;\n      }\n    }\n    return false;\n  };\n};\ngoog.functions.not \x3d function(f) {\n  return function() {\n    var self \x3d this;\n    return !f.apply(self, arguments);\n  };\n};\ngoog.functions.create \x3d function(constructor, var_args) {\n  var temp \x3d function() {\n  };\n  temp.prototype \x3d constructor.prototype;\n  var obj \x3d new temp;\n  constructor.apply(obj, Array.prototype.slice.call(arguments, 1));\n  return obj;\n};\ngoog.functions.CACHE_RETURN_VALUE \x3d goog.define(\x22goog.functions.CACHE_RETURN_VALUE\x22, true);\ngoog.functions.cacheReturnValue \x3d function(fn) {\n  var called \x3d false;\n  var value;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return fn();\n    }\n    if (!called) {\n      value \x3d fn();\n      called \x3d true;\n    }\n    return value;\n  };\n};\ngoog.functions.once \x3d function(f) {\n  var inner \x3d f;\n  return function() {\n    if (inner) {\n      var tmp \x3d inner;\n      inner \x3d null;\n      tmp();\n    }\n  };\n};\ngoog.functions.debounce \x3d function(f, interval, opt_scope) {\n  var timeout \x3d 0;\n  return function(var_args) {\n    goog.global.clearTimeout(timeout);\n    var args \x3d arguments;\n    timeout \x3d goog.global.setTimeout(function() {\n      f.apply(opt_scope, args);\n    }, interval);\n  };\n};\ngoog.functions.throttle \x3d function(f, interval, opt_scope) {\n  var timeout \x3d 0;\n  var shouldFire \x3d false;\n  var args \x3d [];\n  var handleTimeout \x3d function() {\n    timeout \x3d 0;\n    if (shouldFire) {\n      shouldFire \x3d false;\n      fire();\n    }\n  };\n  var fire \x3d function() {\n    timeout \x3d goog.global.setTimeout(handleTimeout, interval);\n    f.apply(opt_scope, args);\n  };\n  return function(var_args) {\n    args \x3d arguments;\n    if (!timeout) {\n      fire();\n    } else {\n      shouldFire \x3d true;\n    }\n  };\n};\ngoog.functions.rateLimit \x3d function(f, interval, opt_scope) {\n  var timeout \x3d 0;\n  var handleTimeout \x3d function() {\n    timeout \x3d 0;\n  };\n  return function(var_args) {\n    if (!timeout) {\n      timeout \x3d goog.global.setTimeout(handleTimeout, interval);\n      f.apply(opt_scope, arguments);\n    }\n  };\n};\ngoog.functions.isFunction \x3d function(val) {\n  return typeof val \x3d\x3d\x3d \x22function\x22;\n};\n");
SHADOW_ENV.evalLoad("goog.array.array.js", true , "goog.loadModule(function(exports) {\n  \x22use strict\x22;\n  goog.module(\x22goog.array\x22);\n  goog.module.declareLegacyNamespace();\n  var asserts \x3d goog.require(\x22goog.asserts\x22);\n  goog.NATIVE_ARRAY_PROTOTYPES \x3d goog.define(\x22goog.NATIVE_ARRAY_PROTOTYPES\x22, goog.TRUSTED_SITE);\n  var ASSUME_NATIVE_FUNCTIONS \x3d goog.define(\x22goog.array.ASSUME_NATIVE_FUNCTIONS\x22, goog.FEATURESET_YEAR \x3e 2012);\n  exports.ASSUME_NATIVE_FUNCTIONS \x3d ASSUME_NATIVE_FUNCTIONS;\n  function peek(array) {\n    return array[array.length - 1];\n  }\n  exports.peek \x3d peek;\n  exports.last \x3d peek;\n  var indexOf \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(arr, obj, opt_fromIndex) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.indexOf.call(arr, obj, opt_fromIndex);\n  } : function(arr, obj, opt_fromIndex) {\n    var fromIndex \x3d opt_fromIndex \x3d\x3d null ? 0 : opt_fromIndex \x3c 0 ? Math.max(0, arr.length + opt_fromIndex) : opt_fromIndex;\n    if (typeof arr \x3d\x3d\x3d \x22string\x22) {\n      if (typeof obj !\x3d\x3d \x22string\x22 || obj.length !\x3d 1) {\n        return -1;\n      }\n      return arr.indexOf(obj, fromIndex);\n    }\n    for (var i \x3d fromIndex; i \x3c arr.length; i++) {\n      if (i in arr \x26\x26 arr[i] \x3d\x3d\x3d obj) {\n        return i;\n      }\n    }\n    return -1;\n  };\n  exports.indexOf \x3d indexOf;\n  var lastIndexOf \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(arr, obj, opt_fromIndex) {\n    asserts.assert(arr.length !\x3d null);\n    var fromIndex \x3d opt_fromIndex \x3d\x3d null ? arr.length - 1 : opt_fromIndex;\n    return Array.prototype.lastIndexOf.call(arr, obj, fromIndex);\n  } : function(arr, obj, opt_fromIndex) {\n    var fromIndex \x3d opt_fromIndex \x3d\x3d null ? arr.length - 1 : opt_fromIndex;\n    if (fromIndex \x3c 0) {\n      fromIndex \x3d Math.max(0, arr.length + fromIndex);\n    }\n    if (typeof arr \x3d\x3d\x3d \x22string\x22) {\n      if (typeof obj !\x3d\x3d \x22string\x22 || obj.length !\x3d 1) {\n        return -1;\n      }\n      return arr.lastIndexOf(obj, fromIndex);\n    }\n    for (var i \x3d fromIndex; i \x3e\x3d 0; i--) {\n      if (i in arr \x26\x26 arr[i] \x3d\x3d\x3d obj) {\n        return i;\n      }\n    }\n    return -1;\n  };\n  exports.lastIndexOf \x3d lastIndexOf;\n  var forEach \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(arr, f, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    Array.prototype.forEach.call(arr, f, opt_obj);\n  } : function(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (i in arr2) {\n        f.call(opt_obj, arr2[i], i, arr);\n      }\n    }\n  };\n  exports.forEach \x3d forEach;\n  function forEachRight(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d l - 1; i \x3e\x3d 0; --i) {\n      if (i in arr2) {\n        f.call(opt_obj, arr2[i], i, arr);\n      }\n    }\n  }\n  exports.forEachRight \x3d forEachRight;\n  var filter \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(arr, f, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.filter.call(arr, f, opt_obj);\n  } : function(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var res \x3d [];\n    var resLength \x3d 0;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (i in arr2) {\n        var val \x3d arr2[i];\n        if (f.call(opt_obj, val, i, arr)) {\n          res[resLength++] \x3d val;\n        }\n      }\n    }\n    return res;\n  };\n  exports.filter \x3d filter;\n  var map \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(arr, f, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.map.call(arr, f, opt_obj);\n  } : function(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var res \x3d new Array(l);\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (i in arr2) {\n        res[i] \x3d f.call(opt_obj, arr2[i], i, arr);\n      }\n    }\n    return res;\n  };\n  exports.map \x3d map;\n  var reduce \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(arr, f, val, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    if (opt_obj) {\n      f \x3d goog.bind(f, opt_obj);\n    }\n    return Array.prototype.reduce.call(arr, f, val);\n  } : function(arr, f, val, opt_obj) {\n    var rval \x3d val;\n    forEach(arr, function(val, index) {\n      rval \x3d f.call(opt_obj, rval, val, index, arr);\n    });\n    return rval;\n  };\n  exports.reduce \x3d reduce;\n  var reduceRight \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(arr, f, val, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    asserts.assert(f !\x3d null);\n    if (opt_obj) {\n      f \x3d goog.bind(f, opt_obj);\n    }\n    return Array.prototype.reduceRight.call(arr, f, val);\n  } : function(arr, f, val, opt_obj) {\n    var rval \x3d val;\n    forEachRight(arr, function(val, index) {\n      rval \x3d f.call(opt_obj, rval, val, index, arr);\n    });\n    return rval;\n  };\n  exports.reduceRight \x3d reduceRight;\n  var some \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(arr, f, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.some.call(arr, f, opt_obj);\n  } : function(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (i in arr2 \x26\x26 f.call(opt_obj, arr2[i], i, arr)) {\n        return true;\n      }\n    }\n    return false;\n  };\n  exports.some \x3d some;\n  var every \x3d goog.NATIVE_ARRAY_PROTOTYPES \x26\x26 (ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(arr, f, opt_obj) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.every.call(arr, f, opt_obj);\n  } : function(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (i in arr2 \x26\x26 !f.call(opt_obj, arr2[i], i, arr)) {\n        return false;\n      }\n    }\n    return true;\n  };\n  exports.every \x3d every;\n  function count(arr, f, opt_obj) {\n    var count \x3d 0;\n    forEach(arr, function(element, index, arr) {\n      if (f.call(opt_obj, element, index, arr)) {\n        ++count;\n      }\n    }, opt_obj);\n    return count;\n  }\n  exports.count \x3d count;\n  function find(arr, f, opt_obj) {\n    var i \x3d findIndex(arr, f, opt_obj);\n    return i \x3c 0 ? null : typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.charAt(i) : arr[i];\n  }\n  exports.find \x3d find;\n  function findIndex(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (i in arr2 \x26\x26 f.call(opt_obj, arr2[i], i, arr)) {\n        return i;\n      }\n    }\n    return -1;\n  }\n  exports.findIndex \x3d findIndex;\n  function findRight(arr, f, opt_obj) {\n    var i \x3d findIndexRight(arr, f, opt_obj);\n    return i \x3c 0 ? null : typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.charAt(i) : arr[i];\n  }\n  exports.findRight \x3d findRight;\n  function findIndexRight(arr, f, opt_obj) {\n    var l \x3d arr.length;\n    var arr2 \x3d typeof arr \x3d\x3d\x3d \x22string\x22 ? arr.split(\x22\x22) : arr;\n    for (var i \x3d l - 1; i \x3e\x3d 0; i--) {\n      if (i in arr2 \x26\x26 f.call(opt_obj, arr2[i], i, arr)) {\n        return i;\n      }\n    }\n    return -1;\n  }\n  exports.findIndexRight \x3d findIndexRight;\n  function contains(arr, obj) {\n    return indexOf(arr, obj) \x3e\x3d 0;\n  }\n  exports.contains \x3d contains;\n  function isEmpty(arr) {\n    return arr.length \x3d\x3d 0;\n  }\n  exports.isEmpty \x3d isEmpty;\n  function clear(arr) {\n    if (!Array.isArray(arr)) {\n      for (var i \x3d arr.length - 1; i \x3e\x3d 0; i--) {\n        delete arr[i];\n      }\n    }\n    arr.length \x3d 0;\n  }\n  exports.clear \x3d clear;\n  function insert(arr, obj) {\n    if (!contains(arr, obj)) {\n      arr.push(obj);\n    }\n  }\n  exports.insert \x3d insert;\n  function insertAt(arr, obj, opt_i) {\n    splice(arr, opt_i, 0, obj);\n  }\n  exports.insertAt \x3d insertAt;\n  function insertArrayAt(arr, elementsToAdd, opt_i) {\n    goog.partial(splice, arr, opt_i, 0).apply(null, elementsToAdd);\n  }\n  exports.insertArrayAt \x3d insertArrayAt;\n  function insertBefore(arr, obj, opt_obj2) {\n    var i;\n    if (arguments.length \x3d\x3d 2 || (i \x3d indexOf(arr, opt_obj2)) \x3c 0) {\n      arr.push(obj);\n    } else {\n      insertAt(arr, obj, i);\n    }\n  }\n  exports.insertBefore \x3d insertBefore;\n  function remove(arr, obj) {\n    var i \x3d indexOf(arr, obj);\n    var rv;\n    if (rv \x3d i \x3e\x3d 0) {\n      removeAt(arr, i);\n    }\n    return rv;\n  }\n  exports.remove \x3d remove;\n  function removeLast(arr, obj) {\n    var i \x3d lastIndexOf(arr, obj);\n    if (i \x3e\x3d 0) {\n      removeAt(arr, i);\n      return true;\n    }\n    return false;\n  }\n  exports.removeLast \x3d removeLast;\n  function removeAt(arr, i) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.splice.call(arr, i, 1).length \x3d\x3d 1;\n  }\n  exports.removeAt \x3d removeAt;\n  function removeIf(arr, f, opt_obj) {\n    var i \x3d findIndex(arr, f, opt_obj);\n    if (i \x3e\x3d 0) {\n      removeAt(arr, i);\n      return true;\n    }\n    return false;\n  }\n  exports.removeIf \x3d removeIf;\n  function removeAllIf(arr, f, opt_obj) {\n    var removedCount \x3d 0;\n    forEachRight(arr, function(val, index) {\n      if (f.call(opt_obj, val, index, arr)) {\n        if (removeAt(arr, index)) {\n          removedCount++;\n        }\n      }\n    });\n    return removedCount;\n  }\n  exports.removeAllIf \x3d removeAllIf;\n  function concat(var_args) {\n    return Array.prototype.concat.apply([], arguments);\n  }\n  exports.concat \x3d concat;\n  function join(var_args) {\n    return Array.prototype.concat.apply([], arguments);\n  }\n  exports.join \x3d join;\n  function toArray(object) {\n    var length \x3d object.length;\n    if (length \x3e 0) {\n      var rv \x3d new Array(length);\n      for (var i \x3d 0; i \x3c length; i++) {\n        rv[i] \x3d object[i];\n      }\n      return rv;\n    }\n    return [];\n  }\n  exports.toArray \x3d toArray;\n  var clone \x3d toArray;\n  exports.clone \x3d clone;\n  function extend(arr1, var_args) {\n    for (var i \x3d 1; i \x3c arguments.length; i++) {\n      var arr2 \x3d arguments[i];\n      if (goog.isArrayLike(arr2)) {\n        var len1 \x3d arr1.length || 0;\n        var len2 \x3d arr2.length || 0;\n        arr1.length \x3d len1 + len2;\n        for (var j \x3d 0; j \x3c len2; j++) {\n          arr1[len1 + j] \x3d arr2[j];\n        }\n      } else {\n        arr1.push(arr2);\n      }\n    }\n  }\n  exports.extend \x3d extend;\n  function splice(arr, index, howMany, var_args) {\n    asserts.assert(arr.length !\x3d null);\n    return Array.prototype.splice.apply(arr, slice(arguments, 1));\n  }\n  exports.splice \x3d splice;\n  function slice(arr, start, opt_end) {\n    asserts.assert(arr.length !\x3d null);\n    if (arguments.length \x3c\x3d 2) {\n      return Array.prototype.slice.call(arr, start);\n    } else {\n      return Array.prototype.slice.call(arr, start, opt_end);\n    }\n  }\n  exports.slice \x3d slice;\n  function removeDuplicates(arr, opt_rv, opt_hashFn) {\n    var returnArray \x3d opt_rv || arr;\n    var defaultHashFn \x3d function(item) {\n      return goog.isObject(item) ? \x22o\x22 + goog.getUid(item) : (typeof item).charAt(0) + item;\n    };\n    var hashFn \x3d opt_hashFn || defaultHashFn;\n    var seen \x3d {}, cursorInsert \x3d 0, cursorRead \x3d 0;\n    while (cursorRead \x3c arr.length) {\n      var current \x3d arr[cursorRead++];\n      var key \x3d hashFn(current);\n      if (!Object.prototype.hasOwnProperty.call(seen, key)) {\n        seen[key] \x3d true;\n        returnArray[cursorInsert++] \x3d current;\n      }\n    }\n    returnArray.length \x3d cursorInsert;\n  }\n  exports.removeDuplicates \x3d removeDuplicates;\n  function binarySearch(arr, target, opt_compareFn) {\n    return binarySearch_(arr, opt_compareFn || defaultCompare, false, target);\n  }\n  exports.binarySearch \x3d binarySearch;\n  function binarySelect(arr, evaluator, opt_obj) {\n    return binarySearch_(arr, evaluator, true, undefined, opt_obj);\n  }\n  exports.binarySelect \x3d binarySelect;\n  function binarySearch_(arr, compareFn, isEvaluator, opt_target, opt_selfObj) {\n    var left \x3d 0;\n    var right \x3d arr.length;\n    var found;\n    while (left \x3c right) {\n      var middle \x3d left + (right - left \x3e\x3e\x3e 1);\n      var compareResult;\n      if (isEvaluator) {\n        compareResult \x3d compareFn.call(opt_selfObj, arr[middle], middle, arr);\n      } else {\n        compareResult \x3d compareFn(opt_target, arr[middle]);\n      }\n      if (compareResult \x3e 0) {\n        left \x3d middle + 1;\n      } else {\n        right \x3d middle;\n        found \x3d !compareResult;\n      }\n    }\n    return found ? left : -left - 1;\n  }\n  function sort(arr, opt_compareFn) {\n    arr.sort(opt_compareFn || defaultCompare);\n  }\n  exports.sort \x3d sort;\n  function stableSort(arr, opt_compareFn) {\n    var compArr \x3d new Array(arr.length);\n    for (var i \x3d 0; i \x3c arr.length; i++) {\n      compArr[i] \x3d {index:i, value:arr[i]};\n    }\n    var valueCompareFn \x3d opt_compareFn || defaultCompare;\n    function stableCompareFn(obj1, obj2) {\n      return valueCompareFn(obj1.value, obj2.value) || obj1.index - obj2.index;\n    }\n    sort(compArr, stableCompareFn);\n    for (var i \x3d 0; i \x3c arr.length; i++) {\n      arr[i] \x3d compArr[i].value;\n    }\n  }\n  exports.stableSort \x3d stableSort;\n  function sortByKey(arr, keyFn, opt_compareFn) {\n    var keyCompareFn \x3d opt_compareFn || defaultCompare;\n    sort(arr, function(a, b) {\n      return keyCompareFn(keyFn(a), keyFn(b));\n    });\n  }\n  exports.sortByKey \x3d sortByKey;\n  function sortObjectsByKey(arr, key, opt_compareFn) {\n    sortByKey(arr, function(obj) {\n      return obj[key];\n    }, opt_compareFn);\n  }\n  exports.sortObjectsByKey \x3d sortObjectsByKey;\n  function isSorted(arr, opt_compareFn, opt_strict) {\n    var compare \x3d opt_compareFn || defaultCompare;\n    for (var i \x3d 1; i \x3c arr.length; i++) {\n      var compareResult \x3d compare(arr[i - 1], arr[i]);\n      if (compareResult \x3e 0 || compareResult \x3d\x3d 0 \x26\x26 opt_strict) {\n        return false;\n      }\n    }\n    return true;\n  }\n  exports.isSorted \x3d isSorted;\n  function equals(arr1, arr2, opt_equalsFn) {\n    if (!goog.isArrayLike(arr1) || !goog.isArrayLike(arr2) || arr1.length !\x3d arr2.length) {\n      return false;\n    }\n    var l \x3d arr1.length;\n    var equalsFn \x3d opt_equalsFn || defaultCompareEquality;\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (!equalsFn(arr1[i], arr2[i])) {\n        return false;\n      }\n    }\n    return true;\n  }\n  exports.equals \x3d equals;\n  function compare3(arr1, arr2, opt_compareFn) {\n    var compare \x3d opt_compareFn || defaultCompare;\n    var l \x3d Math.min(arr1.length, arr2.length);\n    for (var i \x3d 0; i \x3c l; i++) {\n      var result \x3d compare(arr1[i], arr2[i]);\n      if (result !\x3d 0) {\n        return result;\n      }\n    }\n    return defaultCompare(arr1.length, arr2.length);\n  }\n  exports.compare3 \x3d compare3;\n  function defaultCompare(a, b) {\n    return a \x3e b ? 1 : a \x3c b ? -1 : 0;\n  }\n  exports.defaultCompare \x3d defaultCompare;\n  function inverseDefaultCompare(a, b) {\n    return -defaultCompare(a, b);\n  }\n  exports.inverseDefaultCompare \x3d inverseDefaultCompare;\n  function defaultCompareEquality(a, b) {\n    return a \x3d\x3d\x3d b;\n  }\n  exports.defaultCompareEquality \x3d defaultCompareEquality;\n  function binaryInsert(array, value, opt_compareFn) {\n    var index \x3d binarySearch(array, value, opt_compareFn);\n    if (index \x3c 0) {\n      insertAt(array, value, -(index + 1));\n      return true;\n    }\n    return false;\n  }\n  exports.binaryInsert \x3d binaryInsert;\n  function binaryRemove(array, value, opt_compareFn) {\n    var index \x3d binarySearch(array, value, opt_compareFn);\n    return index \x3e\x3d 0 ? removeAt(array, index) : false;\n  }\n  exports.binaryRemove \x3d binaryRemove;\n  function bucket(array, sorter, opt_obj) {\n    var buckets \x3d {};\n    for (var i \x3d 0; i \x3c array.length; i++) {\n      var value \x3d array[i];\n      var key \x3d sorter.call(opt_obj, value, i, array);\n      if (key !\x3d\x3d undefined) {\n        var bucket \x3d buckets[key] || (buckets[key] \x3d []);\n        bucket.push(value);\n      }\n    }\n    return buckets;\n  }\n  exports.bucket \x3d bucket;\n  function toObject(arr, keyFunc, opt_obj) {\n    var ret \x3d {};\n    forEach(arr, function(element, index) {\n      ret[keyFunc.call(opt_obj, element, index, arr)] \x3d element;\n    });\n    return ret;\n  }\n  exports.toObject \x3d toObject;\n  function range(startOrEnd, opt_end, opt_step) {\n    var array \x3d [];\n    var start \x3d 0;\n    var end \x3d startOrEnd;\n    var step \x3d opt_step || 1;\n    if (opt_end !\x3d\x3d undefined) {\n      start \x3d startOrEnd;\n      end \x3d opt_end;\n    }\n    if (step * (end - start) \x3c 0) {\n      return [];\n    }\n    if (step \x3e 0) {\n      for (var i \x3d start; i \x3c end; i +\x3d step) {\n        array.push(i);\n      }\n    } else {\n      for (var i \x3d start; i \x3e end; i +\x3d step) {\n        array.push(i);\n      }\n    }\n    return array;\n  }\n  exports.range \x3d range;\n  function repeat(value, n) {\n    var array \x3d [];\n    for (var i \x3d 0; i \x3c n; i++) {\n      array[i] \x3d value;\n    }\n    return array;\n  }\n  exports.repeat \x3d repeat;\n  function flatten(var_args) {\n    var CHUNK_SIZE \x3d 8192;\n    var result \x3d [];\n    for (var i \x3d 0; i \x3c arguments.length; i++) {\n      var element \x3d arguments[i];\n      if (Array.isArray(element)) {\n        for (var c \x3d 0; c \x3c element.length; c +\x3d CHUNK_SIZE) {\n          var chunk \x3d slice(element, c, c + CHUNK_SIZE);\n          var recurseResult \x3d flatten.apply(null, chunk);\n          for (var r \x3d 0; r \x3c recurseResult.length; r++) {\n            result.push(recurseResult[r]);\n          }\n        }\n      } else {\n        result.push(element);\n      }\n    }\n    return result;\n  }\n  exports.flatten \x3d flatten;\n  function rotate(array, n) {\n    asserts.assert(array.length !\x3d null);\n    if (array.length) {\n      n %\x3d array.length;\n      if (n \x3e 0) {\n        Array.prototype.unshift.apply(array, array.splice(-n, n));\n      } else {\n        if (n \x3c 0) {\n          Array.prototype.push.apply(array, array.splice(0, -n));\n        }\n      }\n    }\n    return array;\n  }\n  exports.rotate \x3d rotate;\n  function moveItem(arr, fromIndex, toIndex) {\n    asserts.assert(fromIndex \x3e\x3d 0 \x26\x26 fromIndex \x3c arr.length);\n    asserts.assert(toIndex \x3e\x3d 0 \x26\x26 toIndex \x3c arr.length);\n    var removedItems \x3d Array.prototype.splice.call(arr, fromIndex, 1);\n    Array.prototype.splice.call(arr, toIndex, 0, removedItems[0]);\n  }\n  exports.moveItem \x3d moveItem;\n  function zip(var_args) {\n    if (!arguments.length) {\n      return [];\n    }\n    var result \x3d [];\n    var minLen \x3d arguments[0].length;\n    for (var i \x3d 1; i \x3c arguments.length; i++) {\n      if (arguments[i].length \x3c minLen) {\n        minLen \x3d arguments[i].length;\n      }\n    }\n    for (var i \x3d 0; i \x3c minLen; i++) {\n      var value \x3d [];\n      for (var j \x3d 0; j \x3c arguments.length; j++) {\n        value.push(arguments[j][i]);\n      }\n      result.push(value);\n    }\n    return result;\n  }\n  exports.zip \x3d zip;\n  function shuffle(arr, opt_randFn) {\n    var randFn \x3d opt_randFn || Math.random;\n    for (var i \x3d arr.length - 1; i \x3e 0; i--) {\n      var j \x3d Math.floor(randFn() * (i + 1));\n      var tmp \x3d arr[i];\n      arr[i] \x3d arr[j];\n      arr[j] \x3d tmp;\n    }\n  }\n  exports.shuffle \x3d shuffle;\n  function copyByIndex(arr, index_arr) {\n    var result \x3d [];\n    forEach(index_arr, function(index) {\n      result.push(arr[index]);\n    });\n    return result;\n  }\n  exports.copyByIndex \x3d copyByIndex;\n  function concatMap(arr, f, opt_obj) {\n    return concat.apply([], map(arr, f, opt_obj));\n  }\n  exports.concatMap \x3d concatMap;\n  return exports;\n});\n");
SHADOW_ENV.evalLoad("goog.dom.htmlelement.js", true , "goog.provide(\x22goog.dom.HtmlElement\x22);\ngoog.dom.HtmlElement \x3d function() {\n};\n");
SHADOW_ENV.evalLoad("goog.dom.tagname.js", true , "goog.provide(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.HtmlElement\x22);\ngoog.dom.TagName \x3d function() {\n  this.googDomTagName_doNotImplementThisTypeOrElse_;\n  this.ensureTypeScriptRemembersTypeT_;\n};\ngoog.dom.TagName.cast \x3d function(name, type) {\n  return name;\n};\ngoog.dom.TagName.prototype.toString \x3d function() {\n};\ngoog.dom.TagName.A \x3d \x22A\x22;\ngoog.dom.TagName.ABBR \x3d \x22ABBR\x22;\ngoog.dom.TagName.ACRONYM \x3d \x22ACRONYM\x22;\ngoog.dom.TagName.ADDRESS \x3d \x22ADDRESS\x22;\ngoog.dom.TagName.APPLET \x3d \x22APPLET\x22;\ngoog.dom.TagName.AREA \x3d \x22AREA\x22;\ngoog.dom.TagName.ARTICLE \x3d \x22ARTICLE\x22;\ngoog.dom.TagName.ASIDE \x3d \x22ASIDE\x22;\ngoog.dom.TagName.AUDIO \x3d \x22AUDIO\x22;\ngoog.dom.TagName.B \x3d \x22B\x22;\ngoog.dom.TagName.BASE \x3d \x22BASE\x22;\ngoog.dom.TagName.BASEFONT \x3d \x22BASEFONT\x22;\ngoog.dom.TagName.BDI \x3d \x22BDI\x22;\ngoog.dom.TagName.BDO \x3d \x22BDO\x22;\ngoog.dom.TagName.BIG \x3d \x22BIG\x22;\ngoog.dom.TagName.BLOCKQUOTE \x3d \x22BLOCKQUOTE\x22;\ngoog.dom.TagName.BODY \x3d \x22BODY\x22;\ngoog.dom.TagName.BR \x3d \x22BR\x22;\ngoog.dom.TagName.BUTTON \x3d \x22BUTTON\x22;\ngoog.dom.TagName.CANVAS \x3d \x22CANVAS\x22;\ngoog.dom.TagName.CAPTION \x3d \x22CAPTION\x22;\ngoog.dom.TagName.CENTER \x3d \x22CENTER\x22;\ngoog.dom.TagName.CITE \x3d \x22CITE\x22;\ngoog.dom.TagName.CODE \x3d \x22CODE\x22;\ngoog.dom.TagName.COL \x3d \x22COL\x22;\ngoog.dom.TagName.COLGROUP \x3d \x22COLGROUP\x22;\ngoog.dom.TagName.COMMAND \x3d \x22COMMAND\x22;\ngoog.dom.TagName.DATA \x3d \x22DATA\x22;\ngoog.dom.TagName.DATALIST \x3d \x22DATALIST\x22;\ngoog.dom.TagName.DD \x3d \x22DD\x22;\ngoog.dom.TagName.DEL \x3d \x22DEL\x22;\ngoog.dom.TagName.DETAILS \x3d \x22DETAILS\x22;\ngoog.dom.TagName.DFN \x3d \x22DFN\x22;\ngoog.dom.TagName.DIALOG \x3d \x22DIALOG\x22;\ngoog.dom.TagName.DIR \x3d \x22DIR\x22;\ngoog.dom.TagName.DIV \x3d \x22DIV\x22;\ngoog.dom.TagName.DL \x3d \x22DL\x22;\ngoog.dom.TagName.DT \x3d \x22DT\x22;\ngoog.dom.TagName.EM \x3d \x22EM\x22;\ngoog.dom.TagName.EMBED \x3d \x22EMBED\x22;\ngoog.dom.TagName.FIELDSET \x3d \x22FIELDSET\x22;\ngoog.dom.TagName.FIGCAPTION \x3d \x22FIGCAPTION\x22;\ngoog.dom.TagName.FIGURE \x3d \x22FIGURE\x22;\ngoog.dom.TagName.FONT \x3d \x22FONT\x22;\ngoog.dom.TagName.FOOTER \x3d \x22FOOTER\x22;\ngoog.dom.TagName.FORM \x3d \x22FORM\x22;\ngoog.dom.TagName.FRAME \x3d \x22FRAME\x22;\ngoog.dom.TagName.FRAMESET \x3d \x22FRAMESET\x22;\ngoog.dom.TagName.H1 \x3d \x22H1\x22;\ngoog.dom.TagName.H2 \x3d \x22H2\x22;\ngoog.dom.TagName.H3 \x3d \x22H3\x22;\ngoog.dom.TagName.H4 \x3d \x22H4\x22;\ngoog.dom.TagName.H5 \x3d \x22H5\x22;\ngoog.dom.TagName.H6 \x3d \x22H6\x22;\ngoog.dom.TagName.HEAD \x3d \x22HEAD\x22;\ngoog.dom.TagName.HEADER \x3d \x22HEADER\x22;\ngoog.dom.TagName.HGROUP \x3d \x22HGROUP\x22;\ngoog.dom.TagName.HR \x3d \x22HR\x22;\ngoog.dom.TagName.HTML \x3d \x22HTML\x22;\ngoog.dom.TagName.I \x3d \x22I\x22;\ngoog.dom.TagName.IFRAME \x3d \x22IFRAME\x22;\ngoog.dom.TagName.IMG \x3d \x22IMG\x22;\ngoog.dom.TagName.INPUT \x3d \x22INPUT\x22;\ngoog.dom.TagName.INS \x3d \x22INS\x22;\ngoog.dom.TagName.ISINDEX \x3d \x22ISINDEX\x22;\ngoog.dom.TagName.KBD \x3d \x22KBD\x22;\ngoog.dom.TagName.KEYGEN \x3d \x22KEYGEN\x22;\ngoog.dom.TagName.LABEL \x3d \x22LABEL\x22;\ngoog.dom.TagName.LEGEND \x3d \x22LEGEND\x22;\ngoog.dom.TagName.LI \x3d \x22LI\x22;\ngoog.dom.TagName.LINK \x3d \x22LINK\x22;\ngoog.dom.TagName.MAIN \x3d \x22MAIN\x22;\ngoog.dom.TagName.MAP \x3d \x22MAP\x22;\ngoog.dom.TagName.MARK \x3d \x22MARK\x22;\ngoog.dom.TagName.MATH \x3d \x22MATH\x22;\ngoog.dom.TagName.MENU \x3d \x22MENU\x22;\ngoog.dom.TagName.MENUITEM \x3d \x22MENUITEM\x22;\ngoog.dom.TagName.META \x3d \x22META\x22;\ngoog.dom.TagName.METER \x3d \x22METER\x22;\ngoog.dom.TagName.NAV \x3d \x22NAV\x22;\ngoog.dom.TagName.NOFRAMES \x3d \x22NOFRAMES\x22;\ngoog.dom.TagName.NOSCRIPT \x3d \x22NOSCRIPT\x22;\ngoog.dom.TagName.OBJECT \x3d \x22OBJECT\x22;\ngoog.dom.TagName.OL \x3d \x22OL\x22;\ngoog.dom.TagName.OPTGROUP \x3d \x22OPTGROUP\x22;\ngoog.dom.TagName.OPTION \x3d \x22OPTION\x22;\ngoog.dom.TagName.OUTPUT \x3d \x22OUTPUT\x22;\ngoog.dom.TagName.P \x3d \x22P\x22;\ngoog.dom.TagName.PARAM \x3d \x22PARAM\x22;\ngoog.dom.TagName.PICTURE \x3d \x22PICTURE\x22;\ngoog.dom.TagName.PRE \x3d \x22PRE\x22;\ngoog.dom.TagName.PROGRESS \x3d \x22PROGRESS\x22;\ngoog.dom.TagName.Q \x3d \x22Q\x22;\ngoog.dom.TagName.RP \x3d \x22RP\x22;\ngoog.dom.TagName.RT \x3d \x22RT\x22;\ngoog.dom.TagName.RTC \x3d \x22RTC\x22;\ngoog.dom.TagName.RUBY \x3d \x22RUBY\x22;\ngoog.dom.TagName.S \x3d \x22S\x22;\ngoog.dom.TagName.SAMP \x3d \x22SAMP\x22;\ngoog.dom.TagName.SCRIPT \x3d \x22SCRIPT\x22;\ngoog.dom.TagName.SECTION \x3d \x22SECTION\x22;\ngoog.dom.TagName.SELECT \x3d \x22SELECT\x22;\ngoog.dom.TagName.SMALL \x3d \x22SMALL\x22;\ngoog.dom.TagName.SOURCE \x3d \x22SOURCE\x22;\ngoog.dom.TagName.SPAN \x3d \x22SPAN\x22;\ngoog.dom.TagName.STRIKE \x3d \x22STRIKE\x22;\ngoog.dom.TagName.STRONG \x3d \x22STRONG\x22;\ngoog.dom.TagName.STYLE \x3d \x22STYLE\x22;\ngoog.dom.TagName.SUB \x3d \x22SUB\x22;\ngoog.dom.TagName.SUMMARY \x3d \x22SUMMARY\x22;\ngoog.dom.TagName.SUP \x3d \x22SUP\x22;\ngoog.dom.TagName.SVG \x3d \x22SVG\x22;\ngoog.dom.TagName.TABLE \x3d \x22TABLE\x22;\ngoog.dom.TagName.TBODY \x3d \x22TBODY\x22;\ngoog.dom.TagName.TD \x3d \x22TD\x22;\ngoog.dom.TagName.TEMPLATE \x3d \x22TEMPLATE\x22;\ngoog.dom.TagName.TEXTAREA \x3d \x22TEXTAREA\x22;\ngoog.dom.TagName.TFOOT \x3d \x22TFOOT\x22;\ngoog.dom.TagName.TH \x3d \x22TH\x22;\ngoog.dom.TagName.THEAD \x3d \x22THEAD\x22;\ngoog.dom.TagName.TIME \x3d \x22TIME\x22;\ngoog.dom.TagName.TITLE \x3d \x22TITLE\x22;\ngoog.dom.TagName.TR \x3d \x22TR\x22;\ngoog.dom.TagName.TRACK \x3d \x22TRACK\x22;\ngoog.dom.TagName.TT \x3d \x22TT\x22;\ngoog.dom.TagName.U \x3d \x22U\x22;\ngoog.dom.TagName.UL \x3d \x22UL\x22;\ngoog.dom.TagName.VAR \x3d \x22VAR\x22;\ngoog.dom.TagName.VIDEO \x3d \x22VIDEO\x22;\ngoog.dom.TagName.WBR \x3d \x22WBR\x22;\n");
SHADOW_ENV.evalLoad("goog.object.object.js", true , "goog.provide(\x22goog.object\x22);\ngoog.object.forEach \x3d function(obj, f, opt_obj) {\n  for (var key in obj) {\n    f.call(opt_obj, obj[key], key, obj);\n  }\n};\ngoog.object.filter \x3d function(obj, f, opt_obj) {\n  var res \x3d {};\n  for (var key in obj) {\n    if (f.call(opt_obj, obj[key], key, obj)) {\n      res[key] \x3d obj[key];\n    }\n  }\n  return res;\n};\ngoog.object.map \x3d function(obj, f, opt_obj) {\n  var res \x3d {};\n  for (var key in obj) {\n    res[key] \x3d f.call(opt_obj, obj[key], key, obj);\n  }\n  return res;\n};\ngoog.object.some \x3d function(obj, f, opt_obj) {\n  for (var key in obj) {\n    if (f.call(opt_obj, obj[key], key, obj)) {\n      return true;\n    }\n  }\n  return false;\n};\ngoog.object.every \x3d function(obj, f, opt_obj) {\n  for (var key in obj) {\n    if (!f.call(opt_obj, obj[key], key, obj)) {\n      return false;\n    }\n  }\n  return true;\n};\ngoog.object.getCount \x3d function(obj) {\n  var rv \x3d 0;\n  for (var key in obj) {\n    rv++;\n  }\n  return rv;\n};\ngoog.object.getAnyKey \x3d function(obj) {\n  for (var key in obj) {\n    return key;\n  }\n};\ngoog.object.getAnyValue \x3d function(obj) {\n  for (var key in obj) {\n    return obj[key];\n  }\n};\ngoog.object.contains \x3d function(obj, val) {\n  return goog.object.containsValue(obj, val);\n};\ngoog.object.getValues \x3d function(obj) {\n  var res \x3d [];\n  var i \x3d 0;\n  for (var key in obj) {\n    res[i++] \x3d obj[key];\n  }\n  return res;\n};\ngoog.object.getKeys \x3d function(obj) {\n  var res \x3d [];\n  var i \x3d 0;\n  for (var key in obj) {\n    res[i++] \x3d key;\n  }\n  return res;\n};\ngoog.object.getValueByKeys \x3d function(obj, var_args) {\n  var isArrayLike \x3d goog.isArrayLike(var_args);\n  var keys \x3d isArrayLike ? var_args : arguments;\n  for (var i \x3d isArrayLike ? 0 : 1; i \x3c keys.length; i++) {\n    if (obj \x3d\x3d null) {\n      return undefined;\n    }\n    obj \x3d obj[keys[i]];\n  }\n  return obj;\n};\ngoog.object.containsKey \x3d function(obj, key) {\n  return obj !\x3d\x3d null \x26\x26 key in obj;\n};\ngoog.object.containsValue \x3d function(obj, val) {\n  for (var key in obj) {\n    if (obj[key] \x3d\x3d val) {\n      return true;\n    }\n  }\n  return false;\n};\ngoog.object.findKey \x3d function(obj, f, opt_this) {\n  for (var key in obj) {\n    if (f.call(opt_this, obj[key], key, obj)) {\n      return key;\n    }\n  }\n  return undefined;\n};\ngoog.object.findValue \x3d function(obj, f, opt_this) {\n  var key \x3d goog.object.findKey(obj, f, opt_this);\n  return key \x26\x26 obj[key];\n};\ngoog.object.isEmpty \x3d function(obj) {\n  for (var key in obj) {\n    return false;\n  }\n  return true;\n};\ngoog.object.clear \x3d function(obj) {\n  for (var i in obj) {\n    delete obj[i];\n  }\n};\ngoog.object.remove \x3d function(obj, key) {\n  var rv;\n  if (rv \x3d key in obj) {\n    delete obj[key];\n  }\n  return rv;\n};\ngoog.object.add \x3d function(obj, key, val) {\n  if (obj !\x3d\x3d null \x26\x26 key in obj) {\n    throw new Error(\x27The object already contains the key \x22\x27 + key + \x27\x22\x27);\n  }\n  goog.object.set(obj, key, val);\n};\ngoog.object.get \x3d function(obj, key, opt_val) {\n  if (obj !\x3d\x3d null \x26\x26 key in obj) {\n    return obj[key];\n  }\n  return opt_val;\n};\ngoog.object.set \x3d function(obj, key, value) {\n  obj[key] \x3d value;\n};\ngoog.object.setIfUndefined \x3d function(obj, key, value) {\n  return key in obj ? obj[key] : obj[key] \x3d value;\n};\ngoog.object.setWithReturnValueIfNotSet \x3d function(obj, key, f) {\n  if (key in obj) {\n    return obj[key];\n  }\n  var val \x3d f();\n  obj[key] \x3d val;\n  return val;\n};\ngoog.object.equals \x3d function(a, b) {\n  for (var k in a) {\n    if (!(k in b) || a[k] !\x3d\x3d b[k]) {\n      return false;\n    }\n  }\n  for (var k$0 in b) {\n    if (!(k$0 in a)) {\n      return false;\n    }\n  }\n  return true;\n};\ngoog.object.clone \x3d function(obj) {\n  var res \x3d {};\n  for (var key in obj) {\n    res[key] \x3d obj[key];\n  }\n  return res;\n};\ngoog.object.unsafeClone \x3d function(obj) {\n  if (!obj || typeof obj !\x3d\x3d \x22object\x22) {\n    return obj;\n  }\n  if (typeof obj.clone \x3d\x3d\x3d \x22function\x22) {\n    return obj.clone();\n  }\n  var clone \x3d Array.isArray(obj) ? [] : typeof ArrayBuffer \x3d\x3d\x3d \x22function\x22 \x26\x26 typeof ArrayBuffer.isView \x3d\x3d\x3d \x22function\x22 \x26\x26 ArrayBuffer.isView(obj) \x26\x26 !(obj instanceof DataView) ? new obj.constructor(obj.length) : {};\n  for (var key in obj) {\n    clone[key] \x3d goog.object.unsafeClone(obj[key]);\n  }\n  return clone;\n};\ngoog.object.transpose \x3d function(obj) {\n  var transposed \x3d {};\n  for (var key in obj) {\n    transposed[obj[key]] \x3d key;\n  }\n  return transposed;\n};\ngoog.object.PROTOTYPE_FIELDS_ \x3d [\x22constructor\x22, \x22hasOwnProperty\x22, \x22isPrototypeOf\x22, \x22propertyIsEnumerable\x22, \x22toLocaleString\x22, \x22toString\x22, \x22valueOf\x22];\ngoog.object.extend \x3d function(target, var_args) {\n  var key;\n  var source;\n  for (var i \x3d 1; i \x3c arguments.length; i++) {\n    source \x3d arguments[i];\n    for (key in source) {\n      target[key] \x3d source[key];\n    }\n    for (var j \x3d 0; j \x3c goog.object.PROTOTYPE_FIELDS_.length; j++) {\n      key \x3d goog.object.PROTOTYPE_FIELDS_[j];\n      if (Object.prototype.hasOwnProperty.call(source, key)) {\n        target[key] \x3d source[key];\n      }\n    }\n  }\n};\ngoog.object.create \x3d function(var_args) {\n  var argLength \x3d arguments.length;\n  if (argLength \x3d\x3d 1 \x26\x26 Array.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (argLength % 2) {\n    throw new Error(\x22Uneven number of arguments\x22);\n  }\n  var rv \x3d {};\n  for (var i \x3d 0; i \x3c argLength; i +\x3d 2) {\n    rv[arguments[i]] \x3d arguments[i + 1];\n  }\n  return rv;\n};\ngoog.object.createSet \x3d function(var_args) {\n  var argLength \x3d arguments.length;\n  if (argLength \x3d\x3d 1 \x26\x26 Array.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  var rv \x3d {};\n  for (var i \x3d 0; i \x3c argLength; i++) {\n    rv[arguments[i]] \x3d true;\n  }\n  return rv;\n};\ngoog.object.createImmutableView \x3d function(obj) {\n  var result \x3d obj;\n  if (Object.isFrozen \x26\x26 !Object.isFrozen(obj)) {\n    result \x3d Object.create(obj);\n    Object.freeze(result);\n  }\n  return result;\n};\ngoog.object.isImmutableView \x3d function(obj) {\n  return !!Object.isFrozen \x26\x26 Object.isFrozen(obj);\n};\ngoog.object.getAllPropertyNames \x3d function(obj, opt_includeObjectPrototype, opt_includeFunctionPrototype) {\n  if (!obj) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(obj);\n  }\n  var visitedSet \x3d {};\n  var proto \x3d obj;\n  while (proto \x26\x26 (proto !\x3d\x3d Object.prototype || !!opt_includeObjectPrototype) \x26\x26 (proto !\x3d\x3d Function.prototype || !!opt_includeFunctionPrototype)) {\n    var names \x3d Object.getOwnPropertyNames(proto);\n    for (var i \x3d 0; i \x3c names.length; i++) {\n      visitedSet[names[i]] \x3d true;\n    }\n    proto \x3d Object.getPrototypeOf(proto);\n  }\n  return goog.object.getKeys(visitedSet);\n};\ngoog.object.getSuperClass \x3d function(constructor) {\n  var proto \x3d Object.getPrototypeOf(constructor.prototype);\n  return proto \x26\x26 proto.constructor;\n};\n");
SHADOW_ENV.evalLoad("goog.dom.tags.js", true , "goog.provide(\x22goog.dom.tags\x22);\ngoog.require(\x22goog.object\x22);\ngoog.dom.tags.VOID_TAGS_ \x3d goog.object.createSet(\x22area\x22, \x22base\x22, \x22br\x22, \x22col\x22, \x22command\x22, \x22embed\x22, \x22hr\x22, \x22img\x22, \x22input\x22, \x22keygen\x22, \x22link\x22, \x22meta\x22, \x22param\x22, \x22source\x22, \x22track\x22, \x22wbr\x22);\ngoog.dom.tags.isVoidTag \x3d function(tagName) {\n  return goog.dom.tags.VOID_TAGS_[tagName] \x3d\x3d\x3d true;\n};\n");
SHADOW_ENV.evalLoad("goog.string.typedstring.js", true , "goog.provide(\x22goog.string.TypedString\x22);\ngoog.string.TypedString \x3d function() {\n};\ngoog.string.TypedString.prototype.implementsGoogStringTypedString;\ngoog.string.TypedString.prototype.getTypedStringValue;\n");
SHADOW_ENV.evalLoad("goog.string.const.js", true , "goog.provide(\x22goog.string.Const\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.string.TypedString\x22);\ngoog.string.Const \x3d function(opt_token, opt_content) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ \x3d opt_token \x3d\x3d\x3d goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ \x26\x26 opt_content || \x22\x22;\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ \x3d goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString \x3d true;\ngoog.string.Const.prototype.getTypedStringValue \x3d function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\nif (goog.DEBUG) {\n  goog.string.Const.prototype.toString \x3d function() {\n    return \x22Const{\x22 + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \x22}\x22;\n  };\n}\ngoog.string.Const.unwrap \x3d function(stringConst) {\n  if (stringConst instanceof goog.string.Const \x26\x26 stringConst.constructor \x3d\x3d\x3d goog.string.Const \x26\x26 stringConst.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ \x3d\x3d\x3d goog.string.Const.TYPE_MARKER_) {\n    return stringConst.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  } else {\n    goog.asserts.fail(\x22expected object of type Const, got \x27\x22 + stringConst + \x22\x27\x22);\n    return \x22type_error:Const\x22;\n  }\n};\ngoog.string.Const.from \x3d function(s) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, s);\n};\ngoog.string.Const.TYPE_MARKER_ \x3d {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ \x3d {};\ngoog.string.Const.EMPTY \x3d goog.string.Const.from(\x22\x22);\n");
SHADOW_ENV.evalLoad("goog.html.trustedtypes.js", true , "goog.provide(\x22goog.html.trustedtypes\x22);\ngoog.html.trustedtypes.cachedPolicy_;\ngoog.html.trustedtypes.getPolicyPrivateDoNotAccessOrElse \x3d function() {\n  if (!goog.TRUSTED_TYPES_POLICY_NAME) {\n    return null;\n  }\n  if (goog.html.trustedtypes.cachedPolicy_ \x3d\x3d\x3d undefined) {\n    goog.html.trustedtypes.cachedPolicy_ \x3d goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \x22#html\x22);\n  }\n  return goog.html.trustedtypes.cachedPolicy_;\n};\n");
SHADOW_ENV.evalLoad("goog.html.safescript.js", true , "goog.loadModule(function(exports) {\n  \x22use strict\x22;\n  goog.module(\x22goog.html.SafeScript\x22);\n  goog.module.declareLegacyNamespace();\n  var Const \x3d goog.require(\x22goog.string.Const\x22);\n  var TypedString \x3d goog.require(\x22goog.string.TypedString\x22);\n  var trustedtypes \x3d goog.require(\x22goog.html.trustedtypes\x22);\n  var $jscomp$destructuring$var0 \x3d goog.require(\x22goog.asserts\x22);\n  var fail \x3d $jscomp$destructuring$var0.fail;\n  var CONSTRUCTOR_TOKEN_PRIVATE \x3d {};\n  var SafeScript \x3d function(value, token) {\n    this.privateDoNotAccessOrElseSafeScriptWrappedValue_ \x3d token \x3d\x3d\x3d CONSTRUCTOR_TOKEN_PRIVATE ? value : \x22\x22;\n    this.implementsGoogStringTypedString \x3d true;\n  };\n  SafeScript.fromConstant \x3d function(script) {\n    var scriptString \x3d Const.unwrap(script);\n    if (scriptString.length \x3d\x3d\x3d 0) {\n      return SafeScript.EMPTY;\n    }\n    return SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(scriptString);\n  };\n  SafeScript.fromConstantAndArgs \x3d function(code, var_args) {\n    var args \x3d [];\n    for (var i \x3d 1; i \x3c arguments.length; i++) {\n      args.push(SafeScript.stringify_(arguments[i]));\n    }\n    return SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\x22(\x22 + Const.unwrap(code) + \x22)(\x22 + args.join(\x22, \x22) + \x22);\x22);\n  };\n  SafeScript.fromJson \x3d function(val) {\n    return SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(SafeScript.stringify_(val));\n  };\n  SafeScript.prototype.getTypedStringValue \x3d function() {\n    return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n  };\n  SafeScript.unwrap \x3d function(safeScript) {\n    return SafeScript.unwrapTrustedScript(safeScript).toString();\n  };\n  SafeScript.unwrapTrustedScript \x3d function(safeScript) {\n    if (safeScript instanceof SafeScript \x26\x26 safeScript.constructor \x3d\x3d\x3d SafeScript) {\n      return safeScript.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n    } else {\n      fail(\x22expected object of type SafeScript, got \x27\x22 + safeScript + \x22\x27 of type \x22 + goog.typeOf(safeScript));\n      return \x22type_error:SafeScript\x22;\n    }\n  };\n  SafeScript.stringify_ \x3d function(val) {\n    var json \x3d JSON.stringify(val);\n    return json.replace(/\x3c/g, \x22\\\\x3c\x22);\n  };\n  SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse \x3d function(script) {\n    var policy \x3d trustedtypes.getPolicyPrivateDoNotAccessOrElse();\n    var trustedScript \x3d policy ? policy.createScript(script) : script;\n    return new SafeScript(trustedScript, CONSTRUCTOR_TOKEN_PRIVATE);\n  };\n  if (goog.DEBUG) {\n    SafeScript.prototype.toString \x3d function() {\n      return \x22SafeScript{\x22 + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \x22}\x22;\n    };\n  }\n  SafeScript.EMPTY \x3d {valueOf:function() {\n    return SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\x22\x22);\n  }, }.valueOf();\n  exports \x3d SafeScript;\n  return exports;\n});\n");
SHADOW_ENV.evalLoad("goog.fs.url.js", true , "goog.provide(\x22goog.fs.url\x22);\ngoog.fs.url.createObjectUrl \x3d function(obj) {\n  return goog.fs.url.getUrlObject_().createObjectURL(obj);\n};\ngoog.fs.url.revokeObjectUrl \x3d function(url) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(url);\n};\ngoog.fs.url.UrlObject_ \x3d function() {\n};\ngoog.fs.url.UrlObject_.prototype.createObjectURL \x3d function(arg) {\n};\ngoog.fs.url.UrlObject_.prototype.revokeObjectURL \x3d function(s) {\n};\ngoog.fs.url.getUrlObject_ \x3d function() {\n  var urlObject \x3d goog.fs.url.findUrlObject_();\n  if (urlObject !\x3d null) {\n    return urlObject;\n  } else {\n    throw new Error(\x22This browser doesn\x27t seem to support blob URLs\x22);\n  }\n};\ngoog.fs.url.findUrlObject_ \x3d function() {\n  if (goog.global.URL !\x3d\x3d undefined \x26\x26 goog.global.URL.createObjectURL !\x3d\x3d undefined) {\n    return goog.global.URL;\n  } else {\n    if (goog.global.webkitURL !\x3d\x3d undefined \x26\x26 goog.global.webkitURL.createObjectURL !\x3d\x3d undefined) {\n      return goog.global.webkitURL;\n    } else {\n      if (goog.global.createObjectURL !\x3d\x3d undefined) {\n        return goog.global;\n      } else {\n        return null;\n      }\n    }\n  }\n};\ngoog.fs.url.browserSupportsObjectUrls \x3d function() {\n  return goog.fs.url.findUrlObject_() !\x3d null;\n};\n");
SHADOW_ENV.evalLoad("goog.fs.blob.js", true , "goog.provide(\x22goog.fs.blob\x22);\ngoog.require(\x22goog.array\x22);\ngoog.fs.blob.getBlob \x3d function(var_args) {\n  var BlobBuilder \x3d goog.global.BlobBuilder || goog.global.WebKitBlobBuilder;\n  if (BlobBuilder !\x3d\x3d undefined) {\n    var bb \x3d new BlobBuilder;\n    for (var i \x3d 0; i \x3c arguments.length; i++) {\n      bb.append(arguments[i]);\n    }\n    return bb.getBlob();\n  } else {\n    return goog.fs.blob.getBlobWithProperties(goog.array.toArray(arguments));\n  }\n};\ngoog.fs.blob.getBlobWithProperties \x3d function(parts, opt_type, opt_endings) {\n  var BlobBuilder \x3d goog.global.BlobBuilder || goog.global.WebKitBlobBuilder;\n  if (BlobBuilder !\x3d\x3d undefined) {\n    var bb \x3d new BlobBuilder;\n    for (var i \x3d 0; i \x3c parts.length; i++) {\n      bb.append(parts[i], opt_endings);\n    }\n    return bb.getBlob(opt_type);\n  } else {\n    if (goog.global.Blob !\x3d\x3d undefined) {\n      var properties \x3d {};\n      if (opt_type) {\n        properties[\x22type\x22] \x3d opt_type;\n      }\n      if (opt_endings) {\n        properties[\x22endings\x22] \x3d opt_endings;\n      }\n      return new Blob(parts, properties);\n    } else {\n      throw new Error(\x22This browser doesn\x27t seem to support creating Blobs\x22);\n    }\n  }\n};\n");
SHADOW_ENV.evalLoad("goog.i18n.bidi.js", true , "goog.provide(\x22goog.i18n.bidi\x22);\ngoog.provide(\x22goog.i18n.bidi.Dir\x22);\ngoog.provide(\x22goog.i18n.bidi.DirectionalString\x22);\ngoog.provide(\x22goog.i18n.bidi.Format\x22);\ngoog.i18n.bidi.FORCE_RTL \x3d goog.define(\x22goog.i18n.bidi.FORCE_RTL\x22, false);\ngoog.i18n.bidi.IS_RTL \x3d goog.i18n.bidi.FORCE_RTL || (goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22ar\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22fa\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22he\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22iw\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22ps\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22sd\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22ug\x22 || goog.LOCALE.substring(0, 2).toLowerCase() \x3d\x3d \x22ur\x22 || goog.LOCALE.substring(0, \n2).toLowerCase() \x3d\x3d \x22yi\x22) \x26\x26 (goog.LOCALE.length \x3d\x3d 2 || goog.LOCALE.substring(2, 3) \x3d\x3d \x22-\x22 || goog.LOCALE.substring(2, 3) \x3d\x3d \x22_\x22) || goog.LOCALE.length \x3e\x3d 3 \x26\x26 goog.LOCALE.substring(0, 3).toLowerCase() \x3d\x3d \x22ckb\x22 \x26\x26 (goog.LOCALE.length \x3d\x3d 3 || goog.LOCALE.substring(3, 4) \x3d\x3d \x22-\x22 || goog.LOCALE.substring(3, 4) \x3d\x3d \x22_\x22) || goog.LOCALE.length \x3e\x3d 7 \x26\x26 ((goog.LOCALE.substring(2, 3) \x3d\x3d \x22-\x22 || goog.LOCALE.substring(2, 3) \x3d\x3d \x22_\x22) \x26\x26 (goog.LOCALE.substring(3, 7).toLowerCase() \x3d\x3d \x22adlm\x22 || goog.LOCALE.substring(3, \n7).toLowerCase() \x3d\x3d \x22arab\x22 || goog.LOCALE.substring(3, 7).toLowerCase() \x3d\x3d \x22hebr\x22 || goog.LOCALE.substring(3, 7).toLowerCase() \x3d\x3d \x22nkoo\x22 || goog.LOCALE.substring(3, 7).toLowerCase() \x3d\x3d \x22rohg\x22 || goog.LOCALE.substring(3, 7).toLowerCase() \x3d\x3d \x22thaa\x22)) || goog.LOCALE.length \x3e\x3d 8 \x26\x26 ((goog.LOCALE.substring(3, 4) \x3d\x3d \x22-\x22 || goog.LOCALE.substring(3, 4) \x3d\x3d \x22_\x22) \x26\x26 (goog.LOCALE.substring(4, 8).toLowerCase() \x3d\x3d \x22adlm\x22 || goog.LOCALE.substring(4, 8).toLowerCase() \x3d\x3d \x22arab\x22 || goog.LOCALE.substring(4, 8).toLowerCase() \x3d\x3d \n\x22hebr\x22 || goog.LOCALE.substring(4, 8).toLowerCase() \x3d\x3d \x22nkoo\x22 || goog.LOCALE.substring(4, 8).toLowerCase() \x3d\x3d \x22rohg\x22 || goog.LOCALE.substring(4, 8).toLowerCase() \x3d\x3d \x22thaa\x22));\ngoog.i18n.bidi.Format \x3d {LRE:\x22\u202a\x22, RLE:\x22\u202b\x22, PDF:\x22\u202c\x22, LRM:\x22\u200e\x22, RLM:\x22\u200f\x22};\ngoog.i18n.bidi.Dir \x3d {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT \x3d \x22right\x22;\ngoog.i18n.bidi.LEFT \x3d \x22left\x22;\ngoog.i18n.bidi.I18N_RIGHT \x3d goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT \x3d goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir \x3d function(givenDir, opt_noNeutral) {\n  if (typeof givenDir \x3d\x3d \x22number\x22) {\n    return givenDir \x3e 0 ? goog.i18n.bidi.Dir.LTR : givenDir \x3c 0 ? goog.i18n.bidi.Dir.RTL : opt_noNeutral ? null : goog.i18n.bidi.Dir.NEUTRAL;\n  } else {\n    if (givenDir \x3d\x3d null) {\n      return null;\n    } else {\n      return givenDir ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n    }\n  }\n};\ngoog.i18n.bidi.ltrChars_ \x3d \x22A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02b8\u0300-\u0590\u0900-\u1fff\x22 + \x22\u200e\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\x22 + \x22\uf900-\ufb1c\ufe00-\ufe6f\ufefd-\uffff\x22;\ngoog.i18n.bidi.rtlChars_ \x3d \x22\u0591-\u06ef\u06fa-\u08ff\u200f\\ud802-\\ud803\\ud83a-\\ud83b\x22 + \x22\ufb1d-\ufdff\ufe70-\ufefc\x22;\ngoog.i18n.bidi.htmlSkipReg_ \x3d /\x3c[^\x3e]*\x3e|\x26[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ \x3d function(str, opt_isStripNeeded) {\n  return opt_isStripNeeded ? str.replace(goog.i18n.bidi.htmlSkipReg_, \x22\x22) : str;\n};\ngoog.i18n.bidi.rtlCharReg_ \x3d new RegExp(\x22[\x22 + goog.i18n.bidi.rtlChars_ + \x22]\x22);\ngoog.i18n.bidi.ltrCharReg_ \x3d new RegExp(\x22[\x22 + goog.i18n.bidi.ltrChars_ + \x22]\x22);\ngoog.i18n.bidi.hasAnyRtl \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml));\n};\ngoog.i18n.bidi.hasRtlChar \x3d goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml));\n};\ngoog.i18n.bidi.ltrRe_ \x3d new RegExp(\x22^[\x22 + goog.i18n.bidi.ltrChars_ + \x22]\x22);\ngoog.i18n.bidi.rtlRe_ \x3d new RegExp(\x22^[\x22 + goog.i18n.bidi.rtlChars_ + \x22]\x22);\ngoog.i18n.bidi.isRtlChar \x3d function(str) {\n  return goog.i18n.bidi.rtlRe_.test(str);\n};\ngoog.i18n.bidi.isLtrChar \x3d function(str) {\n  return goog.i18n.bidi.ltrRe_.test(str);\n};\ngoog.i18n.bidi.isNeutralChar \x3d function(str) {\n  return !goog.i18n.bidi.isLtrChar(str) \x26\x26 !goog.i18n.bidi.isRtlChar(str);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ \x3d new RegExp(\x22^[^\x22 + goog.i18n.bidi.rtlChars_ + \x22]*[\x22 + goog.i18n.bidi.ltrChars_ + \x22]\x22);\ngoog.i18n.bidi.rtlDirCheckRe_ \x3d new RegExp(\x22^[^\x22 + goog.i18n.bidi.ltrChars_ + \x22]*[\x22 + goog.i18n.bidi.rtlChars_ + \x22]\x22);\ngoog.i18n.bidi.startsWithRtl \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml));\n};\ngoog.i18n.bidi.isRtlText \x3d goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml));\n};\ngoog.i18n.bidi.isLtrText \x3d goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ \x3d /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText \x3d function(str, opt_isHtml) {\n  str \x3d goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(str) || !goog.i18n.bidi.hasAnyLtr(str) \x26\x26 !goog.i18n.bidi.hasAnyRtl(str);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ \x3d new RegExp(\x22[\x22 + goog.i18n.bidi.ltrChars_ + \x22]\x22 + \x22[^\x22 + goog.i18n.bidi.rtlChars_ + \x22]*$\x22);\ngoog.i18n.bidi.rtlExitDirCheckRe_ \x3d new RegExp(\x22[\x22 + goog.i18n.bidi.rtlChars_ + \x22]\x22 + \x22[^\x22 + goog.i18n.bidi.ltrChars_ + \x22]*$\x22);\ngoog.i18n.bidi.endsWithLtr \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml));\n};\ngoog.i18n.bidi.isLtrExitText \x3d goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml));\n};\ngoog.i18n.bidi.isRtlExitText \x3d goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ \x3d new RegExp(\x22^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|\x22 + \x22.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))\x22 + \x22(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)\x22, \x22i\x22);\ngoog.i18n.bidi.isRtlLanguage \x3d function(lang) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(lang);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ \x3d /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(\x3c.*?\x3e+)/g;\ngoog.i18n.bidi.guardBracketInText \x3d function(s, opt_isRtlContext) {\n  var useRtl \x3d opt_isRtlContext \x3d\x3d\x3d undefined ? goog.i18n.bidi.hasAnyRtl(s) : opt_isRtlContext;\n  var mark \x3d useRtl ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return s.replace(goog.i18n.bidi.bracketGuardTextRe_, mark + \x22$\\x26\x22 + mark);\n};\ngoog.i18n.bidi.enforceRtlInHtml \x3d function(html) {\n  if (html.charAt(0) \x3d\x3d \x22\\x3c\x22) {\n    return html.replace(/\x3c\\w+/, \x22$\\x26 dir\\x3drtl\x22);\n  }\n  return \x22\\n\\x3cspan dir\\x3drtl\\x3e\x22 + html + \x22\\x3c/span\\x3e\x22;\n};\ngoog.i18n.bidi.enforceRtlInText \x3d function(text) {\n  return goog.i18n.bidi.Format.RLE + text + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml \x3d function(html) {\n  if (html.charAt(0) \x3d\x3d \x22\\x3c\x22) {\n    return html.replace(/\x3c\\w+/, \x22$\\x26 dir\\x3dltr\x22);\n  }\n  return \x22\\n\\x3cspan dir\\x3dltr\\x3e\x22 + html + \x22\\x3c/span\\x3e\x22;\n};\ngoog.i18n.bidi.enforceLtrInText \x3d function(text) {\n  return goog.i18n.bidi.Format.LRE + text + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ \x3d /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ \x3d /left/gi;\ngoog.i18n.bidi.rightRe_ \x3d /right/gi;\ngoog.i18n.bidi.tempRe_ \x3d /%%%%/g;\ngoog.i18n.bidi.mirrorCSS \x3d function(cssStr) {\n  return cssStr.replace(goog.i18n.bidi.dimensionsRe_, \x22:$1 $4 $3 $2\x22).replace(goog.i18n.bidi.leftRe_, \x22%%%%\x22).replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ \x3d /([\\u0591-\\u05f2])\x22/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ \x3d /([\\u0591-\\u05f2])\x27/g;\ngoog.i18n.bidi.normalizeHebrewQuote \x3d function(str) {\n  return str.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \x22$1\u05f4\x22).replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \x22$1\u05f3\x22);\n};\ngoog.i18n.bidi.wordSeparatorRe_ \x3d /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ \x3d /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ \x3d 0.40;\ngoog.i18n.bidi.estimateDirection \x3d function(str, opt_isHtml) {\n  var rtlCount \x3d 0;\n  var totalCount \x3d 0;\n  var hasWeaklyLtr \x3d false;\n  var tokens \x3d goog.i18n.bidi.stripHtmlIfNeeded_(str, opt_isHtml).split(goog.i18n.bidi.wordSeparatorRe_);\n  for (var i \x3d 0; i \x3c tokens.length; i++) {\n    var token \x3d tokens[i];\n    if (goog.i18n.bidi.startsWithRtl(token)) {\n      rtlCount++;\n      totalCount++;\n    } else {\n      if (goog.i18n.bidi.isRequiredLtrRe_.test(token)) {\n        hasWeaklyLtr \x3d true;\n      } else {\n        if (goog.i18n.bidi.hasAnyLtr(token)) {\n          totalCount++;\n        } else {\n          if (goog.i18n.bidi.hasNumeralsRe_.test(token)) {\n            hasWeaklyLtr \x3d true;\n          }\n        }\n      }\n    }\n  }\n  return totalCount \x3d\x3d 0 ? hasWeaklyLtr ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : rtlCount / totalCount \x3e goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality \x3d function(str, opt_isHtml) {\n  return goog.i18n.bidi.estimateDirection(str, opt_isHtml) \x3d\x3d goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign \x3d function(element, dir) {\n  if (element) {\n    var htmlElement \x3d element;\n    dir \x3d goog.i18n.bidi.toDir(dir);\n    if (dir) {\n      htmlElement.style.textAlign \x3d dir \x3d\x3d goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\n      htmlElement.dir \x3d dir \x3d\x3d goog.i18n.bidi.Dir.RTL ? \x22rtl\x22 : \x22ltr\x22;\n    }\n  }\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality \x3d function(element, text) {\n  var htmlElement \x3d element;\n  switch(goog.i18n.bidi.estimateDirection(text)) {\n    case goog.i18n.bidi.Dir.LTR:\n      if (htmlElement.dir !\x3d\x3d \x22ltr\x22) {\n        htmlElement.dir \x3d \x22ltr\x22;\n      }\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      if (htmlElement.dir !\x3d\x3d \x22rtl\x22) {\n        htmlElement.dir \x3d \x22rtl\x22;\n      }\n      break;\n    default:\n      htmlElement.removeAttribute(\x22dir\x22);\n  }\n};\ngoog.i18n.bidi.DirectionalString \x3d function() {\n};\ngoog.i18n.bidi.DirectionalString.prototype.implementsGoogI18nBidiDirectionalString;\ngoog.i18n.bidi.DirectionalString.prototype.getDirection;\n");
SHADOW_ENV.evalLoad("goog.html.trustedresourceurl.js", true , "goog.provide(\x22goog.html.TrustedResourceUrl\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.fs.blob\x22);\ngoog.require(\x22goog.fs.url\x22);\ngoog.require(\x22goog.html.SafeScript\x22);\ngoog.require(\x22goog.html.trustedtypes\x22);\ngoog.require(\x22goog.i18n.bidi.Dir\x22);\ngoog.require(\x22goog.i18n.bidi.DirectionalString\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.TypedString\x22);\ngoog.html.TrustedResourceUrl \x3d function(value, token) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ \x3d token \x3d\x3d\x3d goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ ? value : \x22\x22;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString \x3d true;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue \x3d function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString \x3d true;\ngoog.html.TrustedResourceUrl.prototype.getDirection \x3d function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams \x3d function(searchParams, opt_hashParams) {\n  var url \x3d goog.html.TrustedResourceUrl.unwrap(this);\n  var parts \x3d goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(url);\n  var urlBase \x3d parts[1];\n  var urlSearch \x3d parts[2] || \x22\x22;\n  var urlHash \x3d parts[3] || \x22\x22;\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(urlBase + goog.html.TrustedResourceUrl.stringifyParams_(\x22?\x22, urlSearch, searchParams) + goog.html.TrustedResourceUrl.stringifyParams_(\x22#\x22, urlHash, opt_hashParams));\n};\nif (goog.DEBUG) {\n  goog.html.TrustedResourceUrl.prototype.toString \x3d function() {\n    return \x22TrustedResourceUrl{\x22 + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \x22}\x22;\n  };\n}\ngoog.html.TrustedResourceUrl.unwrap \x3d function(trustedResourceUrl) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(trustedResourceUrl).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL \x3d function(trustedResourceUrl) {\n  if (trustedResourceUrl instanceof goog.html.TrustedResourceUrl \x26\x26 trustedResourceUrl.constructor \x3d\x3d\x3d goog.html.TrustedResourceUrl) {\n    return trustedResourceUrl.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  } else {\n    goog.asserts.fail(\x22expected object of type TrustedResourceUrl, got \x27\x22 + trustedResourceUrl + \x22\x27 of type \x22 + goog.typeOf(trustedResourceUrl));\n    return \x22type_error:TrustedResourceUrl\x22;\n  }\n};\ngoog.html.TrustedResourceUrl.format \x3d function(format, args) {\n  var formatStr \x3d goog.string.Const.unwrap(format);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(formatStr)) {\n    throw new Error(\x22Invalid TrustedResourceUrl format: \x22 + formatStr);\n  }\n  var result \x3d formatStr.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(match, id) {\n    if (!Object.prototype.hasOwnProperty.call(args, id)) {\n      throw new Error(\x27Found marker, \x22\x27 + id + \x27\x22, in format string, \x22\x27 + formatStr + \x27\x22, but no valid label mapping found \x27 + \x22in args: \x22 + JSON.stringify(args));\n    }\n    var arg \x3d args[id];\n    if (arg instanceof goog.string.Const) {\n      return goog.string.Const.unwrap(arg);\n    } else {\n      return encodeURIComponent(String(arg));\n    }\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(result);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ \x3d /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ \x3d new RegExp(\x22^((https:)?//[0-9a-z.:[\\\\]-]+/\x22 + \x22|/[^/\\\\\\\\]\x22 + \x22|[^:/\\\\\\\\%]+/\x22 + \x22|[^:/\\\\\\\\%]*[?#]\x22 + \x22|about:blank#\x22 + \x22)\x22, \x22i\x22);\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ \x3d /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams \x3d function(format, args, searchParams, opt_hashParams) {\n  var url \x3d goog.html.TrustedResourceUrl.format(format, args);\n  return url.cloneWithParams(searchParams, opt_hashParams);\n};\ngoog.html.TrustedResourceUrl.fromConstant \x3d function(url) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(url));\n};\ngoog.html.TrustedResourceUrl.fromConstants \x3d function(parts) {\n  var unwrapped \x3d \x22\x22;\n  for (var i \x3d 0; i \x3c parts.length; i++) {\n    unwrapped +\x3d goog.string.Const.unwrap(parts[i]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(unwrapped);\n};\ngoog.html.TrustedResourceUrl.fromSafeScript \x3d function(safeScript) {\n  var blob \x3d goog.fs.blob.getBlobWithProperties([goog.html.SafeScript.unwrap(safeScript)], \x22text/javascript\x22);\n  var url \x3d goog.fs.url.createObjectUrl(blob);\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ \x3d {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse \x3d function(url) {\n  var policy \x3d goog.html.trustedtypes.getPolicyPrivateDoNotAccessOrElse();\n  var value \x3d policy ? policy.createScriptURL(url) : url;\n  return new goog.html.TrustedResourceUrl(value, goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ \x3d function(prefix, currentString, params) {\n  if (params \x3d\x3d null) {\n    return currentString;\n  }\n  if (typeof params \x3d\x3d\x3d \x22string\x22) {\n    return params ? prefix + encodeURIComponent(params) : \x22\x22;\n  }\n  for (var key in params) {\n    if (Object.prototype.hasOwnProperty.call(params, key)) {\n      var value \x3d params[key];\n      var outputValues \x3d Array.isArray(value) ? value : [value];\n      for (var i \x3d 0; i \x3c outputValues.length; i++) {\n        var outputValue \x3d outputValues[i];\n        if (outputValue !\x3d null) {\n          if (!currentString) {\n            currentString \x3d prefix;\n          }\n          currentString +\x3d (currentString.length \x3e prefix.length ? \x22\\x26\x22 : \x22\x22) + encodeURIComponent(key) + \x22\\x3d\x22 + encodeURIComponent(String(outputValue));\n        }\n      }\n    }\n  }\n  return currentString;\n};\n");
SHADOW_ENV.evalLoad("goog.string.internal.js", true , "goog.provide(\x22goog.string.internal\x22);\ngoog.string.internal.startsWith \x3d function(str, prefix) {\n  return str.lastIndexOf(prefix, 0) \x3d\x3d 0;\n};\ngoog.string.internal.endsWith \x3d function(str, suffix) {\n  var l \x3d str.length - suffix.length;\n  return l \x3e\x3d 0 \x26\x26 str.indexOf(suffix, l) \x3d\x3d l;\n};\ngoog.string.internal.caseInsensitiveStartsWith \x3d function(str, prefix) {\n  return goog.string.internal.caseInsensitiveCompare(prefix, str.substr(0, prefix.length)) \x3d\x3d 0;\n};\ngoog.string.internal.caseInsensitiveEndsWith \x3d function(str, suffix) {\n  return goog.string.internal.caseInsensitiveCompare(suffix, str.substr(str.length - suffix.length, suffix.length)) \x3d\x3d 0;\n};\ngoog.string.internal.caseInsensitiveEquals \x3d function(str1, str2) {\n  return str1.toLowerCase() \x3d\x3d str2.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace \x3d function(str) {\n  return /^[\\s\\xa0]*$/.test(str);\n};\ngoog.string.internal.trim \x3d goog.TRUSTED_SITE \x26\x26 String.prototype.trim ? function(str) {\n  return str.trim();\n} : function(str) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(str)[1];\n};\ngoog.string.internal.caseInsensitiveCompare \x3d function(str1, str2) {\n  var test1 \x3d String(str1).toLowerCase();\n  var test2 \x3d String(str2).toLowerCase();\n  if (test1 \x3c test2) {\n    return -1;\n  } else {\n    if (test1 \x3d\x3d test2) {\n      return 0;\n    } else {\n      return 1;\n    }\n  }\n};\ngoog.string.internal.newLineToBr \x3d function(str, opt_xml) {\n  return str.replace(/(\\r\\n|\\r|\\n)/g, opt_xml ? \x22\\x3cbr /\\x3e\x22 : \x22\\x3cbr\\x3e\x22);\n};\ngoog.string.internal.htmlEscape \x3d function(str, opt_isLikelyToContainHtmlChars) {\n  if (opt_isLikelyToContainHtmlChars) {\n    str \x3d str.replace(goog.string.internal.AMP_RE_, \x22\\x26amp;\x22).replace(goog.string.internal.LT_RE_, \x22\\x26lt;\x22).replace(goog.string.internal.GT_RE_, \x22\\x26gt;\x22).replace(goog.string.internal.QUOT_RE_, \x22\\x26quot;\x22).replace(goog.string.internal.SINGLE_QUOTE_RE_, \x22\\x26#39;\x22).replace(goog.string.internal.NULL_RE_, \x22\\x26#0;\x22);\n    return str;\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(str)) {\n      return str;\n    }\n    if (str.indexOf(\x22\\x26\x22) !\x3d -1) {\n      str \x3d str.replace(goog.string.internal.AMP_RE_, \x22\\x26amp;\x22);\n    }\n    if (str.indexOf(\x22\\x3c\x22) !\x3d -1) {\n      str \x3d str.replace(goog.string.internal.LT_RE_, \x22\\x26lt;\x22);\n    }\n    if (str.indexOf(\x22\\x3e\x22) !\x3d -1) {\n      str \x3d str.replace(goog.string.internal.GT_RE_, \x22\\x26gt;\x22);\n    }\n    if (str.indexOf(\x27\x22\x27) !\x3d -1) {\n      str \x3d str.replace(goog.string.internal.QUOT_RE_, \x22\\x26quot;\x22);\n    }\n    if (str.indexOf(\x22\x27\x22) !\x3d -1) {\n      str \x3d str.replace(goog.string.internal.SINGLE_QUOTE_RE_, \x22\\x26#39;\x22);\n    }\n    if (str.indexOf(\x22\\x00\x22) !\x3d -1) {\n      str \x3d str.replace(goog.string.internal.NULL_RE_, \x22\\x26#0;\x22);\n    }\n    return str;\n  }\n};\ngoog.string.internal.AMP_RE_ \x3d /\x26/g;\ngoog.string.internal.LT_RE_ \x3d /\x3c/g;\ngoog.string.internal.GT_RE_ \x3d /\x3e/g;\ngoog.string.internal.QUOT_RE_ \x3d /\x22/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ \x3d /\x27/g;\ngoog.string.internal.NULL_RE_ \x3d /\\x00/g;\ngoog.string.internal.ALL_RE_ \x3d /[\\x00\x26\x3c\x3e\x22\x27]/;\ngoog.string.internal.whitespaceEscape \x3d function(str, opt_xml) {\n  return goog.string.internal.newLineToBr(str.replace(/  /g, \x22 \\x26#160;\x22), opt_xml);\n};\ngoog.string.internal.contains \x3d function(str, subString) {\n  return str.indexOf(subString) !\x3d -1;\n};\ngoog.string.internal.caseInsensitiveContains \x3d function(str, subString) {\n  return goog.string.internal.contains(str.toLowerCase(), subString.toLowerCase());\n};\ngoog.string.internal.compareVersions \x3d function(version1, version2) {\n  var order \x3d 0;\n  var v1Subs \x3d goog.string.internal.trim(String(version1)).split(\x22.\x22);\n  var v2Subs \x3d goog.string.internal.trim(String(version2)).split(\x22.\x22);\n  var subCount \x3d Math.max(v1Subs.length, v2Subs.length);\n  for (var subIdx \x3d 0; order \x3d\x3d 0 \x26\x26 subIdx \x3c subCount; subIdx++) {\n    var v1Sub \x3d v1Subs[subIdx] || \x22\x22;\n    var v2Sub \x3d v2Subs[subIdx] || \x22\x22;\n    do {\n      var v1Comp \x3d /(\\d*)(\\D*)(.*)/.exec(v1Sub) || [\x22\x22, \x22\x22, \x22\x22, \x22\x22];\n      var v2Comp \x3d /(\\d*)(\\D*)(.*)/.exec(v2Sub) || [\x22\x22, \x22\x22, \x22\x22, \x22\x22];\n      if (v1Comp[0].length \x3d\x3d 0 \x26\x26 v2Comp[0].length \x3d\x3d 0) {\n        break;\n      }\n      var v1CompNum \x3d v1Comp[1].length \x3d\x3d 0 ? 0 : parseInt(v1Comp[1], 10);\n      var v2CompNum \x3d v2Comp[1].length \x3d\x3d 0 ? 0 : parseInt(v2Comp[1], 10);\n      order \x3d goog.string.internal.compareElements_(v1CompNum, v2CompNum) || goog.string.internal.compareElements_(v1Comp[2].length \x3d\x3d 0, v2Comp[2].length \x3d\x3d 0) || goog.string.internal.compareElements_(v1Comp[2], v2Comp[2]);\n      v1Sub \x3d v1Comp[3];\n      v2Sub \x3d v2Comp[3];\n    } while (order \x3d\x3d 0);\n  }\n  return order;\n};\ngoog.string.internal.compareElements_ \x3d function(left, right) {\n  if (left \x3c right) {\n    return -1;\n  } else {\n    if (left \x3e right) {\n      return 1;\n    }\n  }\n  return 0;\n};\n");
SHADOW_ENV.evalLoad("goog.html.safeurl.js", true , "goog.provide(\x22goog.html.SafeUrl\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.fs.url\x22);\ngoog.require(\x22goog.html.TrustedResourceUrl\x22);\ngoog.require(\x22goog.i18n.bidi.Dir\x22);\ngoog.require(\x22goog.i18n.bidi.DirectionalString\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.TypedString\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.html.SafeUrl \x3d function(value, token) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ \x3d token \x3d\x3d\x3d goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ ? value : \x22\x22;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING \x3d \x22about:invalid#zClosurez\x22;\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString \x3d true;\ngoog.html.SafeUrl.prototype.getTypedStringValue \x3d function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString \x3d true;\ngoog.html.SafeUrl.prototype.getDirection \x3d function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\nif (goog.DEBUG) {\n  goog.html.SafeUrl.prototype.toString \x3d function() {\n    return \x22SafeUrl{\x22 + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \x22}\x22;\n  };\n}\ngoog.html.SafeUrl.unwrap \x3d function(safeUrl) {\n  if (safeUrl instanceof goog.html.SafeUrl \x26\x26 safeUrl.constructor \x3d\x3d\x3d goog.html.SafeUrl) {\n    return safeUrl.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  } else {\n    goog.asserts.fail(\x22expected object of type SafeUrl, got \x27\x22 + safeUrl + \x22\x27 of type \x22 + goog.typeOf(safeUrl));\n    return \x22type_error:SafeUrl\x22;\n  }\n};\ngoog.html.SafeUrl.fromConstant \x3d function(url) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(url));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ \x3d new RegExp(\x22^(?:audio/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-matroska|x-wav|wav|webm)|\x22 + \x22font/\\\\w+|\x22 + \x22image/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|\x22 + \x22video/(?:mpeg|mp4|ogg|webm|quicktime|x-matroska))\x22 + \x27(?:;\\\\w+\\x3d(?:\\\\w+|\x22[\\\\w;,\\x3d ]+\x22))*$\x27, \x22i\x22);\ngoog.html.SafeUrl.isSafeMimeType \x3d function(mimeType) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(mimeType);\n};\ngoog.html.SafeUrl.fromBlob \x3d function(blob) {\n  var url \x3d goog.html.SafeUrl.isSafeMimeType(blob.type) ? goog.fs.url.createObjectUrl(blob) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.SafeUrl.revokeObjectUrl \x3d function(safeUrl) {\n  var url \x3d safeUrl.getTypedStringValue();\n  if (url !\x3d\x3d goog.html.SafeUrl.INNOCUOUS_STRING) {\n    goog.fs.url.revokeObjectUrl(url);\n  }\n};\ngoog.html.SafeUrl.fromMediaSource \x3d function(mediaSource) {\n  goog.asserts.assert(\x22MediaSource\x22 in goog.global, \x22No support for MediaSource\x22);\n  var url \x3d mediaSource instanceof MediaSource ? goog.fs.url.createObjectUrl(mediaSource) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.DATA_URL_PATTERN_ \x3d /^data:(.*);base64,[a-z0-9+\\/]+\x3d*$/i;\ngoog.html.SafeUrl.tryFromDataUrl \x3d function(dataUrl) {\n  dataUrl \x3d String(dataUrl);\n  var filteredDataUrl \x3d dataUrl.replace(/(%0A|%0D)/g, \x22\x22);\n  var match \x3d filteredDataUrl.match(goog.html.DATA_URL_PATTERN_);\n  var valid \x3d match \x26\x26 goog.html.SafeUrl.isSafeMimeType(match[1]);\n  if (valid) {\n    return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(filteredDataUrl);\n  }\n  return null;\n};\ngoog.html.SafeUrl.fromDataUrl \x3d function(dataUrl) {\n  return goog.html.SafeUrl.tryFromDataUrl(dataUrl) || goog.html.SafeUrl.INNOCUOUS_URL;\n};\ngoog.html.SafeUrl.fromTelUrl \x3d function(telUrl) {\n  if (!goog.string.internal.caseInsensitiveStartsWith(telUrl, \x22tel:\x22)) {\n    telUrl \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(telUrl);\n};\ngoog.html.SIP_URL_PATTERN_ \x3d new RegExp(\x22^sip[s]?:[+a-z0-9_.!$%\\x26\x27*\\\\/\\x3d^`{|}~-]+@([a-z0-9-]+\\\\.)+[a-z0-9]{2,63}$\x22, \x22i\x22);\ngoog.html.SafeUrl.fromSipUrl \x3d function(sipUrl) {\n  if (!goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(sipUrl))) {\n    sipUrl \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(sipUrl);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl \x3d function(facebookMessengerUrl) {\n  if (!goog.string.internal.caseInsensitiveStartsWith(facebookMessengerUrl, \x22fb-messenger://share\x22)) {\n    facebookMessengerUrl \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(facebookMessengerUrl);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl \x3d function(whatsAppUrl) {\n  if (!goog.string.internal.caseInsensitiveStartsWith(whatsAppUrl, \x22whatsapp://send\x22)) {\n    whatsAppUrl \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(whatsAppUrl);\n};\ngoog.html.SafeUrl.fromSmsUrl \x3d function(smsUrl) {\n  if (!goog.string.internal.caseInsensitiveStartsWith(smsUrl, \x22sms:\x22) || !goog.html.SafeUrl.isSmsUrlBodyValid_(smsUrl)) {\n    smsUrl \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(smsUrl);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ \x3d function(smsUrl) {\n  var hash \x3d smsUrl.indexOf(\x22#\x22);\n  if (hash \x3e 0) {\n    smsUrl \x3d smsUrl.substring(0, hash);\n  }\n  var bodyParams \x3d smsUrl.match(/[?\x26]body\x3d/gi);\n  if (!bodyParams) {\n    return true;\n  }\n  if (bodyParams.length \x3e 1) {\n    return false;\n  }\n  var bodyValue \x3d smsUrl.match(/[?\x26]body\x3d([^\x26]*)/)[1];\n  if (!bodyValue) {\n    return true;\n  }\n  try {\n    decodeURIComponent(bodyValue);\n  } catch (error) {\n    return false;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(bodyValue);\n};\ngoog.html.SafeUrl.fromSshUrl \x3d function(sshUrl) {\n  if (!goog.string.internal.caseInsensitiveStartsWith(sshUrl, \x22ssh://\x22)) {\n    sshUrl \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(sshUrl);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl \x3d function(url, extensionId) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, url, extensionId);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl \x3d function(url, extensionId) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, url, extensionId);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl \x3d function(url, extensionId) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, url, extensionId);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ \x3d function(scheme, url, extensionId) {\n  var matches \x3d scheme.exec(url);\n  if (!matches) {\n    url \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  } else {\n    var extractedExtensionId \x3d matches[1];\n    var acceptedExtensionIds;\n    if (extensionId instanceof goog.string.Const) {\n      acceptedExtensionIds \x3d [goog.string.Const.unwrap(extensionId)];\n    } else {\n      acceptedExtensionIds \x3d extensionId.map(function unwrap(x) {\n        return goog.string.Const.unwrap(x);\n      });\n    }\n    if (acceptedExtensionIds.indexOf(extractedExtensionId) \x3d\x3d -1) {\n      url \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n    }\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl \x3d function(trustedResourceUrl) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(trustedResourceUrl));\n};\ngoog.html.SAFE_URL_PATTERN_ \x3d /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN \x3d goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.trySanitize \x3d function(url) {\n  if (url instanceof goog.html.SafeUrl) {\n    return url;\n  }\n  if (typeof url \x3d\x3d \x22object\x22 \x26\x26 url.implementsGoogStringTypedString) {\n    url \x3d url.getTypedStringValue();\n  } else {\n    url \x3d String(url);\n  }\n  if (!goog.html.SAFE_URL_PATTERN_.test(url)) {\n    return goog.html.SafeUrl.tryFromDataUrl(url);\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.SafeUrl.sanitize \x3d function(url) {\n  return goog.html.SafeUrl.trySanitize(url) || goog.html.SafeUrl.INNOCUOUS_URL;\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged \x3d function(url, opt_allowDataUrl) {\n  if (url instanceof goog.html.SafeUrl) {\n    return url;\n  } else {\n    if (typeof url \x3d\x3d \x22object\x22 \x26\x26 url.implementsGoogStringTypedString) {\n      url \x3d url.getTypedStringValue();\n    } else {\n      url \x3d String(url);\n    }\n  }\n  if (opt_allowDataUrl \x26\x26 /^data:/i.test(url)) {\n    var safeUrl \x3d goog.html.SafeUrl.fromDataUrl(url);\n    if (safeUrl.getTypedStringValue() \x3d\x3d url) {\n      return safeUrl;\n    }\n  }\n  if (!goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(url), \x22%s does not match the safe URL pattern\x22, url)) {\n    url \x3d goog.html.SafeUrl.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ \x3d {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse \x3d function(url) {\n  return new goog.html.SafeUrl(url, goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_);\n};\ngoog.html.SafeUrl.INNOCUOUS_URL \x3d goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.SafeUrl.INNOCUOUS_STRING);\ngoog.html.SafeUrl.ABOUT_BLANK \x3d goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\x22about:blank\x22);\n");
SHADOW_ENV.evalLoad("goog.html.safestyle.js", true , "goog.provide(\x22goog.html.SafeStyle\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.html.SafeUrl\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.TypedString\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.html.SafeStyle \x3d function(value, token) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ \x3d token \x3d\x3d\x3d goog.html.SafeStyle.CONSTRUCTOR_TOKEN_PRIVATE_ ? value : \x22\x22;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString \x3d true;\ngoog.html.SafeStyle.fromConstant \x3d function(style) {\n  var styleString \x3d goog.string.Const.unwrap(style);\n  if (styleString.length \x3d\x3d\x3d 0) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(styleString, \x22;\x22), \x22Last character of style string is not \x27;\x27: \x22 + styleString);\n  goog.asserts.assert(goog.string.internal.contains(styleString, \x22:\x22), \x22Style string must contain at least one \x27:\x27, to \x22 + \x27specify a \x22name: value\x22 pair: \x27 + styleString);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(styleString);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue \x3d function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\nif (goog.DEBUG) {\n  goog.html.SafeStyle.prototype.toString \x3d function() {\n    return \x22SafeStyle{\x22 + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \x22}\x22;\n  };\n}\ngoog.html.SafeStyle.unwrap \x3d function(safeStyle) {\n  if (safeStyle instanceof goog.html.SafeStyle \x26\x26 safeStyle.constructor \x3d\x3d\x3d goog.html.SafeStyle) {\n    return safeStyle.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  } else {\n    goog.asserts.fail(\x22expected object of type SafeStyle, got \x27\x22 + safeStyle + \x22\x27 of type \x22 + goog.typeOf(safeStyle));\n    return \x22type_error:SafeStyle\x22;\n  }\n};\ngoog.html.SafeStyle.CONSTRUCTOR_TOKEN_PRIVATE_ \x3d {};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse \x3d function(style) {\n  return new goog.html.SafeStyle(style, goog.html.SafeStyle.CONSTRUCTOR_TOKEN_PRIVATE_);\n};\ngoog.html.SafeStyle.EMPTY \x3d goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\x22\x22);\ngoog.html.SafeStyle.INNOCUOUS_STRING \x3d \x22zClosurez\x22;\ngoog.html.SafeStyle.PropertyValue;\ngoog.html.SafeStyle.PropertyMap;\ngoog.html.SafeStyle.create \x3d function(map) {\n  var style \x3d \x22\x22;\n  for (var name in map) {\n    if (Object.prototype.hasOwnProperty.call(map, name)) {\n      if (!/^[-_a-zA-Z0-9]+$/.test(name)) {\n        throw new Error(\x22Name allows only [-_a-zA-Z0-9], got: \x22 + name);\n      }\n      var value \x3d map[name];\n      if (value \x3d\x3d null) {\n        continue;\n      }\n      if (Array.isArray(value)) {\n        value \x3d goog.array.map(value, goog.html.SafeStyle.sanitizePropertyValue_).join(\x22 \x22);\n      } else {\n        value \x3d goog.html.SafeStyle.sanitizePropertyValue_(value);\n      }\n      style +\x3d name + \x22:\x22 + value + \x22;\x22;\n    }\n  }\n  if (!style) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(style);\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ \x3d function(value) {\n  if (value instanceof goog.html.SafeUrl) {\n    var url \x3d goog.html.SafeUrl.unwrap(value);\n    return \x27url(\x22\x27 + url.replace(/\x3c/g, \x22%3c\x22).replace(/[\\\\\x22]/g, \x22\\\\$\\x26\x22) + \x27\x22)\x27;\n  }\n  var result \x3d value instanceof goog.string.Const ? goog.string.Const.unwrap(value) : goog.html.SafeStyle.sanitizePropertyValueString_(String(value));\n  if (/[{;}]/.test(result)) {\n    throw new goog.asserts.AssertionError(\x22Value does not allow [{;}], got: %s.\x22, [result]);\n  }\n  return result;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ \x3d function(value) {\n  var valueWithoutFunctions \x3d value.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \x22$1\x22).replace(goog.html.SafeStyle.FUNCTIONS_RE_, \x22$1\x22).replace(goog.html.SafeStyle.URL_RE_, \x22url\x22);\n  if (!goog.html.SafeStyle.VALUE_RE_.test(valueWithoutFunctions)) {\n    goog.asserts.fail(\x22String value allows only \x22 + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \x22 and simple functions, got: \x22 + value);\n    return goog.html.SafeStyle.INNOCUOUS_STRING;\n  } else {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(value)) {\n      goog.asserts.fail(\x22String value disallows comments, got: \x22 + value);\n      return goog.html.SafeStyle.INNOCUOUS_STRING;\n    } else {\n      if (!goog.html.SafeStyle.hasBalancedQuotes_(value)) {\n        goog.asserts.fail(\x22String value requires balanced quotes, got: \x22 + value);\n        return goog.html.SafeStyle.INNOCUOUS_STRING;\n      } else {\n        if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(value)) {\n          goog.asserts.fail(\x22String value requires balanced square brackets and one\x22 + \x22 identifier per pair of brackets, got: \x22 + value);\n          return goog.html.SafeStyle.INNOCUOUS_STRING;\n        }\n      }\n    }\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(value);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ \x3d function(value) {\n  var outsideSingle \x3d true;\n  var outsideDouble \x3d true;\n  for (var i \x3d 0; i \x3c value.length; i++) {\n    var c \x3d value.charAt(i);\n    if (c \x3d\x3d \x22\x27\x22 \x26\x26 outsideDouble) {\n      outsideSingle \x3d !outsideSingle;\n    } else {\n      if (c \x3d\x3d \x27\x22\x27 \x26\x26 outsideSingle) {\n        outsideDouble \x3d !outsideDouble;\n      }\n    }\n  }\n  return outsideSingle \x26\x26 outsideDouble;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ \x3d function(value) {\n  var outside \x3d true;\n  var tokenRe \x3d /^[-_a-zA-Z0-9]$/;\n  for (var i \x3d 0; i \x3c value.length; i++) {\n    var c \x3d value.charAt(i);\n    if (c \x3d\x3d \x22]\x22) {\n      if (outside) {\n        return false;\n      }\n      outside \x3d true;\n    } else {\n      if (c \x3d\x3d \x22[\x22) {\n        if (!outside) {\n          return false;\n        }\n        outside \x3d false;\n      } else {\n        if (!outside \x26\x26 !tokenRe.test(c)) {\n          return false;\n        }\n      }\n    }\n  }\n  return outside;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ \x3d \x22[-,.\\\x22\x27%_!# a-zA-Z0-9\\\\[\\\\]]\x22;\ngoog.html.SafeStyle.VALUE_RE_ \x3d new RegExp(\x22^\x22 + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \x22+$\x22);\ngoog.html.SafeStyle.URL_RE_ \x3d new RegExp(\x22\\\\b(url\\\\([ \\t\\n]*)(\x22 + \x22\x27[ -\\x26(-\\\\[\\\\]-~]*\x27\x22 + \x27|\x22[ !#-\\\\[\\\\]-~]*\x22\x27 + \x22|[!#-\\x26*-\\\\[\\\\]-~]*\x22 + \x22)([ \\t\\n]*\\\\))\x22, \x22g\x22);\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ \x3d [\x22calc\x22, \x22cubic-bezier\x22, \x22fit-content\x22, \x22hsl\x22, \x22hsla\x22, \x22linear-gradient\x22, \x22matrix\x22, \x22minmax\x22, \x22repeat\x22, \x22rgb\x22, \x22rgba\x22, \x22(rotate|scale|translate)(X|Y|Z|3d)?\x22, ];\ngoog.html.SafeStyle.FUNCTIONS_RE_ \x3d new RegExp(\x22\\\\b(\x22 + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\x22|\x22) + \x22)\x22 + \x22\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\x22, \x22g\x22);\ngoog.html.SafeStyle.COMMENT_RE_ \x3d /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ \x3d function(value) {\n  return value.replace(goog.html.SafeStyle.URL_RE_, function(match, before, url, after) {\n    var quote \x3d \x22\x22;\n    url \x3d url.replace(/^([\x27\x22])(.*)\\1$/, function(match, start, inside) {\n      quote \x3d start;\n      return inside;\n    });\n    var sanitized \x3d goog.html.SafeUrl.sanitize(url).getTypedStringValue();\n    return before + quote + sanitized + quote + after;\n  });\n};\ngoog.html.SafeStyle.concat \x3d function(var_args) {\n  var style \x3d \x22\x22;\n  var addArgument \x3d function(argument) {\n    if (Array.isArray(argument)) {\n      goog.array.forEach(argument, addArgument);\n    } else {\n      style +\x3d goog.html.SafeStyle.unwrap(argument);\n    }\n  };\n  goog.array.forEach(arguments, addArgument);\n  if (!style) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(style);\n};\n");
SHADOW_ENV.evalLoad("goog.html.safestylesheet.js", true , "goog.loadModule(function(exports) {\n  \x22use strict\x22;\n  goog.module(\x22goog.html.SafeStyleSheet\x22);\n  goog.module.declareLegacyNamespace();\n  var Const \x3d goog.require(\x22goog.string.Const\x22);\n  var SafeStyle \x3d goog.require(\x22goog.html.SafeStyle\x22);\n  var TypedString \x3d goog.require(\x22goog.string.TypedString\x22);\n  var googArray \x3d goog.require(\x22goog.array\x22);\n  var googObject \x3d goog.require(\x22goog.object\x22);\n  var $jscomp$destructuring$var1 \x3d goog.require(\x22goog.asserts\x22);\n  var assert \x3d $jscomp$destructuring$var1.assert;\n  var fail \x3d $jscomp$destructuring$var1.fail;\n  var $jscomp$destructuring$var2 \x3d goog.require(\x22goog.string.internal\x22);\n  var contains \x3d $jscomp$destructuring$var2.contains;\n  var CONSTRUCTOR_TOKEN_PRIVATE \x3d {};\n  var SafeStyleSheet \x3d function(value, token) {\n    this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ \x3d token \x3d\x3d\x3d CONSTRUCTOR_TOKEN_PRIVATE ? value : \x22\x22;\n    this.implementsGoogStringTypedString \x3d true;\n  };\n  SafeStyleSheet.createRule \x3d function(selector, style) {\n    if (contains(selector, \x22\\x3c\x22)) {\n      throw new Error(\x22Selector does not allow \x27\\x3c\x27, got: \x22 + selector);\n    }\n    var selectorToCheck \x3d selector.replace(/(\x27|\x22)((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \x22\x22);\n    if (!/^[-_a-zA-Z0-9#.:* ,\x3e+~[\\]()\x3d^$|]+$/.test(selectorToCheck)) {\n      throw new Error(\x22Selector allows only [-_a-zA-Z0-9#.:* ,\\x3e+~[\\\\]()\\x3d^$|] and \x22 + \x22strings, got: \x22 + selector);\n    }\n    if (!SafeStyleSheet.hasBalancedBrackets_(selectorToCheck)) {\n      throw new Error(\x22() and [] in selector must be balanced, got: \x22 + selector);\n    }\n    if (!(style instanceof SafeStyle)) {\n      style \x3d SafeStyle.create(style);\n    }\n    var styleSheet \x3d selector + \x22{\x22 + SafeStyle.unwrap(style).replace(/\x3c/g, \x22\\\\3C \x22) + \x22}\x22;\n    return SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(styleSheet);\n  };\n  SafeStyleSheet.hasBalancedBrackets_ \x3d function(s) {\n    var brackets \x3d {\x22(\x22:\x22)\x22, \x22[\x22:\x22]\x22};\n    var expectedBrackets \x3d [];\n    for (var i \x3d 0; i \x3c s.length; i++) {\n      var ch \x3d s[i];\n      if (brackets[ch]) {\n        expectedBrackets.push(brackets[ch]);\n      } else {\n        if (googObject.contains(brackets, ch)) {\n          if (expectedBrackets.pop() !\x3d ch) {\n            return false;\n          }\n        }\n      }\n    }\n    return expectedBrackets.length \x3d\x3d 0;\n  };\n  SafeStyleSheet.concat \x3d function(var_args) {\n    var result \x3d \x22\x22;\n    var addArgument \x3d function(argument) {\n      if (Array.isArray(argument)) {\n        googArray.forEach(argument, addArgument);\n      } else {\n        result +\x3d SafeStyleSheet.unwrap(argument);\n      }\n    };\n    googArray.forEach(arguments, addArgument);\n    return SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(result);\n  };\n  SafeStyleSheet.fromConstant \x3d function(styleSheet) {\n    var styleSheetString \x3d Const.unwrap(styleSheet);\n    if (styleSheetString.length \x3d\x3d\x3d 0) {\n      return SafeStyleSheet.EMPTY;\n    }\n    assert(!contains(styleSheetString, \x22\\x3c\x22), \x22Forbidden \x27\\x3c\x27 character in style sheet string: \x22 + styleSheetString);\n    return SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(styleSheetString);\n  };\n  SafeStyleSheet.prototype.getTypedStringValue \x3d function() {\n    return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  };\n  SafeStyleSheet.unwrap \x3d function(safeStyleSheet) {\n    if (safeStyleSheet instanceof SafeStyleSheet \x26\x26 safeStyleSheet.constructor \x3d\x3d\x3d SafeStyleSheet) {\n      return safeStyleSheet.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n    } else {\n      fail(\x22expected object of type SafeStyleSheet, got \x27\x22 + safeStyleSheet + \x22\x27 of type \x22 + goog.typeOf(safeStyleSheet));\n      return \x22type_error:SafeStyleSheet\x22;\n    }\n  };\n  SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse \x3d function(styleSheet) {\n    return new SafeStyleSheet(styleSheet, CONSTRUCTOR_TOKEN_PRIVATE);\n  };\n  if (goog.DEBUG) {\n    SafeStyleSheet.prototype.toString \x3d function() {\n      return \x22SafeStyleSheet{\x22 + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \x22}\x22;\n    };\n  }\n  SafeStyleSheet.EMPTY \x3d SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\x22\x22);\n  exports \x3d SafeStyleSheet;\n  return exports;\n});\n");
SHADOW_ENV.evalLoad("goog.labs.useragent.util.js", true , "goog.provide(\x22goog.labs.userAgent.util\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.labs.userAgent.util.getNativeUserAgentString_ \x3d function() {\n  var navigator \x3d goog.labs.userAgent.util.getNavigator_();\n  if (navigator) {\n    var userAgent \x3d navigator.userAgent;\n    if (userAgent) {\n      return userAgent;\n    }\n  }\n  return \x22\x22;\n};\ngoog.labs.userAgent.util.getNavigator_ \x3d function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ \x3d goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent \x3d function(opt_userAgent) {\n  goog.labs.userAgent.util.userAgent_ \x3d opt_userAgent || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent \x3d function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent \x3d function(str) {\n  var userAgent \x3d goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(userAgent, str);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase \x3d function(str) {\n  var userAgent \x3d goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(userAgent, str);\n};\ngoog.labs.userAgent.util.extractVersionTuples \x3d function(userAgent) {\n  var versionRegExp \x3d new RegExp(\x22(\\\\w[\\\\w ]+)\x22 + \x22/\x22 + \x22([^\\\\s]+)\x22 + \x22\\\\s*\x22 + \x22(?:\\\\((.*?)\\\\))?\x22, \x22g\x22);\n  var data \x3d [];\n  var match;\n  while (match \x3d versionRegExp.exec(userAgent)) {\n    data.push([match[1], match[2], match[3] || undefined]);\n  }\n  return data;\n};\n");
SHADOW_ENV.evalLoad("goog.labs.useragent.browser.js", true , "goog.provide(\x22goog.labs.userAgent.browser\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.labs.userAgent.util\x22);\ngoog.require(\x22goog.object\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.labs.userAgent.browser.matchOpera_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Opera\x22);\n};\ngoog.labs.userAgent.browser.matchIE_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Trident\x22) || goog.labs.userAgent.util.matchUserAgent(\x22MSIE\x22);\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Edge\x22);\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Edg/\x22);\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22OPR\x22);\n};\ngoog.labs.userAgent.browser.matchFirefox_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Firefox\x22) || goog.labs.userAgent.util.matchUserAgent(\x22FxiOS\x22);\n};\ngoog.labs.userAgent.browser.matchSafari_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Safari\x22) \x26\x26 !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\x22Android\x22));\n};\ngoog.labs.userAgent.browser.matchCoast_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Coast\x22);\n};\ngoog.labs.userAgent.browser.matchIosWebview_ \x3d function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\x22iPad\x22) || goog.labs.userAgent.util.matchUserAgent(\x22iPhone\x22)) \x26\x26 !goog.labs.userAgent.browser.matchSafari_() \x26\x26 !goog.labs.userAgent.browser.matchChrome_() \x26\x26 !goog.labs.userAgent.browser.matchCoast_() \x26\x26 !goog.labs.userAgent.browser.matchFirefox_() \x26\x26 goog.labs.userAgent.util.matchUserAgent(\x22AppleWebKit\x22);\n};\ngoog.labs.userAgent.browser.matchChrome_ \x3d function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\x22Chrome\x22) || goog.labs.userAgent.util.matchUserAgent(\x22CriOS\x22)) \x26\x26 !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Android\x22) \x26\x26 !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera \x3d goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE \x3d goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge \x3d goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium \x3d goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium \x3d goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox \x3d goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari \x3d goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast \x3d goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview \x3d goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome \x3d goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser \x3d goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Silk\x22);\n};\ngoog.labs.userAgent.browser.getVersion \x3d function() {\n  var userAgentString \x3d goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(userAgentString);\n  }\n  var versionTuples \x3d goog.labs.userAgent.util.extractVersionTuples(userAgentString);\n  var versionMap \x3d {};\n  goog.array.forEach(versionTuples, function(tuple) {\n    var key \x3d tuple[0];\n    var value \x3d tuple[1];\n    versionMap[key] \x3d value;\n  });\n  var versionMapHasKey \x3d goog.partial(goog.object.containsKey, versionMap);\n  function lookUpValueWithKeys(keys) {\n    var key \x3d goog.array.find(keys, versionMapHasKey);\n    return versionMap[key] || \x22\x22;\n  }\n  if (goog.labs.userAgent.browser.isOpera()) {\n    return lookUpValueWithKeys([\x22Version\x22, \x22Opera\x22]);\n  }\n  if (goog.labs.userAgent.browser.isEdge()) {\n    return lookUpValueWithKeys([\x22Edge\x22]);\n  }\n  if (goog.labs.userAgent.browser.isEdgeChromium()) {\n    return lookUpValueWithKeys([\x22Edg\x22]);\n  }\n  if (goog.labs.userAgent.browser.isChrome()) {\n    return lookUpValueWithKeys([\x22Chrome\x22, \x22CriOS\x22, \x22HeadlessChrome\x22]);\n  }\n  var tuple \x3d versionTuples[2];\n  return tuple \x26\x26 tuple[1] || \x22\x22;\n};\ngoog.labs.userAgent.browser.isVersionOrHigher \x3d function(version) {\n  return goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), version) \x3e\x3d 0;\n};\ngoog.labs.userAgent.browser.getIEVersion_ \x3d function(userAgent) {\n  var rv \x3d /rv: *([\\d\\.]*)/.exec(userAgent);\n  if (rv \x26\x26 rv[1]) {\n    return rv[1];\n  }\n  var version \x3d \x22\x22;\n  var msie \x3d /MSIE +([\\d\\.]+)/.exec(userAgent);\n  if (msie \x26\x26 msie[1]) {\n    var tridentVersion \x3d /Trident\\/(\\d.\\d)/.exec(userAgent);\n    if (msie[1] \x3d\x3d \x227.0\x22) {\n      if (tridentVersion \x26\x26 tridentVersion[1]) {\n        switch(tridentVersion[1]) {\n          case \x224.0\x22:\n            version \x3d \x228.0\x22;\n            break;\n          case \x225.0\x22:\n            version \x3d \x229.0\x22;\n            break;\n          case \x226.0\x22:\n            version \x3d \x2210.0\x22;\n            break;\n          case \x227.0\x22:\n            version \x3d \x2211.0\x22;\n            break;\n        }\n      } else {\n        version \x3d \x227.0\x22;\n      }\n    } else {\n      version \x3d msie[1];\n    }\n  }\n  return version;\n};\n");
SHADOW_ENV.evalLoad("goog.html.safehtml.js", true , "goog.provide(\x22goog.html.SafeHtml\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.tags\x22);\ngoog.require(\x22goog.html.SafeScript\x22);\ngoog.require(\x22goog.html.SafeStyle\x22);\ngoog.require(\x22goog.html.SafeStyleSheet\x22);\ngoog.require(\x22goog.html.SafeUrl\x22);\ngoog.require(\x22goog.html.TrustedResourceUrl\x22);\ngoog.require(\x22goog.html.trustedtypes\x22);\ngoog.require(\x22goog.i18n.bidi.Dir\x22);\ngoog.require(\x22goog.i18n.bidi.DirectionalString\x22);\ngoog.require(\x22goog.labs.userAgent.browser\x22);\ngoog.require(\x22goog.object\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.TypedString\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.html.SafeHtml \x3d function(value, dir, token) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ \x3d token \x3d\x3d\x3d goog.html.SafeHtml.CONSTRUCTOR_TOKEN_PRIVATE_ ? value : \x22\x22;\n  this.dir_ \x3d dir;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES \x3d goog.define(\x22goog.html.SafeHtml.ENABLE_ERROR_MESSAGES\x22, goog.DEBUG);\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE \x3d goog.define(\x22goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE\x22, true);\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString \x3d true;\ngoog.html.SafeHtml.prototype.getDirection \x3d function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString \x3d true;\ngoog.html.SafeHtml.prototype.getTypedStringValue \x3d function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\nif (goog.DEBUG) {\n  goog.html.SafeHtml.prototype.toString \x3d function() {\n    return \x22SafeHtml{\x22 + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \x22}\x22;\n  };\n}\ngoog.html.SafeHtml.unwrap \x3d function(safeHtml) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(safeHtml).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML \x3d function(safeHtml) {\n  if (safeHtml instanceof goog.html.SafeHtml \x26\x26 safeHtml.constructor \x3d\x3d\x3d goog.html.SafeHtml) {\n    return safeHtml.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  } else {\n    goog.asserts.fail(\x22expected object of type SafeHtml, got \x27\x22 + safeHtml + \x22\x27 of type \x22 + goog.typeOf(safeHtml));\n    return \x22type_error:SafeHtml\x22;\n  }\n};\ngoog.html.SafeHtml.TextOrHtml_;\ngoog.html.SafeHtml.htmlEscape \x3d function(textOrHtml) {\n  if (textOrHtml instanceof goog.html.SafeHtml) {\n    return textOrHtml;\n  }\n  var textIsObject \x3d typeof textOrHtml \x3d\x3d \x22object\x22;\n  var dir \x3d null;\n  if (textIsObject \x26\x26 textOrHtml.implementsGoogI18nBidiDirectionalString) {\n    dir \x3d textOrHtml.getDirection();\n  }\n  var textAsString;\n  if (textIsObject \x26\x26 textOrHtml.implementsGoogStringTypedString) {\n    textAsString \x3d textOrHtml.getTypedStringValue();\n  } else {\n    textAsString \x3d String(textOrHtml);\n  }\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(textAsString), dir);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines \x3d function(textOrHtml) {\n  if (textOrHtml instanceof goog.html.SafeHtml) {\n    return textOrHtml;\n  }\n  var html \x3d goog.html.SafeHtml.htmlEscape(textOrHtml);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(html)), html.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces \x3d function(textOrHtml) {\n  if (textOrHtml instanceof goog.html.SafeHtml) {\n    return textOrHtml;\n  }\n  var html \x3d goog.html.SafeHtml.htmlEscape(textOrHtml);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(html)), html.getDirection());\n};\ngoog.html.SafeHtml.from \x3d goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.comment \x3d function(text) {\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\x22\\x3c!--\x22 + goog.string.internal.htmlEscape(text) + \x22--\\x3e\x22, null);\n};\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ \x3d /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ \x3d goog.object.createSet(\x22action\x22, \x22cite\x22, \x22data\x22, \x22formaction\x22, \x22href\x22, \x22manifest\x22, \x22poster\x22, \x22src\x22);\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ \x3d goog.object.createSet(goog.dom.TagName.APPLET, goog.dom.TagName.BASE, goog.dom.TagName.EMBED, goog.dom.TagName.IFRAME, goog.dom.TagName.LINK, goog.dom.TagName.MATH, goog.dom.TagName.META, goog.dom.TagName.OBJECT, goog.dom.TagName.SCRIPT, goog.dom.TagName.STYLE, goog.dom.TagName.SVG, goog.dom.TagName.TEMPLATE);\ngoog.html.SafeHtml.AttributeValue;\ngoog.html.SafeHtml.create \x3d function(tagName, opt_attributes, opt_content) {\n  goog.html.SafeHtml.verifyTagName(String(tagName));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(tagName), opt_attributes, opt_content);\n};\ngoog.html.SafeHtml.verifyTagName \x3d function(tagName) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(tagName)) {\n    throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x22Invalid tag name \\x3c\x22 + tagName + \x22\\x3e.\x22 : \x22\x22);\n  }\n  if (tagName.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x22Tag name \\x3c\x22 + tagName + \x22\\x3e is not allowed for SafeHtml.\x22 : \x22\x22);\n  }\n};\ngoog.html.SafeHtml.createIframe \x3d function(opt_src, opt_srcdoc, opt_attributes, opt_content) {\n  if (opt_src) {\n    goog.html.TrustedResourceUrl.unwrap(opt_src);\n  }\n  var fixedAttributes \x3d {};\n  fixedAttributes[\x22src\x22] \x3d opt_src || null;\n  fixedAttributes[\x22srcdoc\x22] \x3d opt_srcdoc \x26\x26 goog.html.SafeHtml.unwrap(opt_srcdoc);\n  var defaultAttributes \x3d {\x22sandbox\x22:\x22\x22};\n  var attributes \x3d goog.html.SafeHtml.combineAttributes(fixedAttributes, defaultAttributes, opt_attributes);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\x22iframe\x22, attributes, opt_content);\n};\ngoog.html.SafeHtml.createSandboxIframe \x3d function(opt_src, opt_srcdoc, opt_attributes, opt_content) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x22The browser does not support sandboxed iframes.\x22 : \x22\x22);\n  }\n  var fixedAttributes \x3d {};\n  if (opt_src) {\n    fixedAttributes[\x22src\x22] \x3d goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(opt_src));\n  } else {\n    fixedAttributes[\x22src\x22] \x3d null;\n  }\n  fixedAttributes[\x22srcdoc\x22] \x3d opt_srcdoc || null;\n  fixedAttributes[\x22sandbox\x22] \x3d \x22\x22;\n  var attributes \x3d goog.html.SafeHtml.combineAttributes(fixedAttributes, {}, opt_attributes);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\x22iframe\x22, attributes, opt_content);\n};\ngoog.html.SafeHtml.canUseSandboxIframe \x3d function() {\n  return goog.global[\x22HTMLIFrameElement\x22] \x26\x26 \x22sandbox\x22 in goog.global[\x22HTMLIFrameElement\x22].prototype;\n};\ngoog.html.SafeHtml.createScriptSrc \x3d function(src, opt_attributes) {\n  goog.html.TrustedResourceUrl.unwrap(src);\n  var fixedAttributes \x3d {\x22src\x22:src};\n  var defaultAttributes \x3d {};\n  var attributes \x3d goog.html.SafeHtml.combineAttributes(fixedAttributes, defaultAttributes, opt_attributes);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\x22script\x22, attributes);\n};\ngoog.html.SafeHtml.createScript \x3d function(script, opt_attributes) {\n  for (var attr in opt_attributes) {\n    if (Object.prototype.hasOwnProperty.call(opt_attributes, attr)) {\n      var attrLower \x3d attr.toLowerCase();\n      if (attrLower \x3d\x3d \x22language\x22 || attrLower \x3d\x3d \x22src\x22 || attrLower \x3d\x3d \x22text\x22 || attrLower \x3d\x3d \x22type\x22) {\n        throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27Cannot set \x22\x27 + attrLower + \x27\x22 attribute\x27 : \x22\x22);\n      }\n    }\n  }\n  var content \x3d \x22\x22;\n  script \x3d goog.array.concat(script);\n  for (var i \x3d 0; i \x3c script.length; i++) {\n    content +\x3d goog.html.SafeScript.unwrap(script[i]);\n  }\n  var htmlContent \x3d goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(content, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\x22script\x22, opt_attributes, htmlContent);\n};\ngoog.html.SafeHtml.createStyle \x3d function(styleSheet, opt_attributes) {\n  var fixedAttributes \x3d {\x22type\x22:\x22text/css\x22};\n  var defaultAttributes \x3d {};\n  var attributes \x3d goog.html.SafeHtml.combineAttributes(fixedAttributes, defaultAttributes, opt_attributes);\n  var content \x3d \x22\x22;\n  styleSheet \x3d goog.array.concat(styleSheet);\n  for (var i \x3d 0; i \x3c styleSheet.length; i++) {\n    content +\x3d goog.html.SafeStyleSheet.unwrap(styleSheet[i]);\n  }\n  var htmlContent \x3d goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(content, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\x22style\x22, attributes, htmlContent);\n};\ngoog.html.SafeHtml.createMetaRefresh \x3d function(url, opt_secs) {\n  var unwrappedUrl \x3d goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(url));\n  if (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) {\n    if (goog.string.internal.contains(unwrappedUrl, \x22;\x22)) {\n      unwrappedUrl \x3d \x22\x27\x22 + unwrappedUrl.replace(/\x27/g, \x22%27\x22) + \x22\x27\x22;\n    }\n  }\n  var attributes \x3d {\x22http-equiv\x22:\x22refresh\x22, \x22content\x22:(opt_secs || 0) + \x22; url\\x3d\x22 + unwrappedUrl};\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\x22meta\x22, attributes);\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ \x3d function(tagName, name, value) {\n  if (value instanceof goog.string.Const) {\n    value \x3d goog.string.Const.unwrap(value);\n  } else {\n    if (name.toLowerCase() \x3d\x3d \x22style\x22) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        value \x3d goog.html.SafeHtml.getStyleValue_(value);\n      } else {\n        throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27Attribute \x22style\x22 not supported.\x27 : \x22\x22);\n      }\n    } else {\n      if (/^on/i.test(name)) {\n        throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27Attribute \x22\x27 + name + \x27\x22 requires goog.string.Const value, \x22\x27 + value + \x27\x22 given.\x27 : \x22\x22);\n      } else {\n        if (name.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n          if (value instanceof goog.html.TrustedResourceUrl) {\n            value \x3d goog.html.TrustedResourceUrl.unwrap(value);\n          } else {\n            if (value instanceof goog.html.SafeUrl) {\n              value \x3d goog.html.SafeUrl.unwrap(value);\n            } else {\n              if (typeof value \x3d\x3d\x3d \x22string\x22) {\n                value \x3d goog.html.SafeUrl.sanitize(value).getTypedStringValue();\n              } else {\n                throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27Attribute \x22\x27 + name + \x27\x22 on tag \x22\x27 + tagName + \x27\x22 requires goog.html.SafeUrl, goog.string.Const, or\x27 + \x27 string, value \x22\x27 + value + \x27\x22 given.\x27 : \x22\x22);\n              }\n            }\n          }\n        }\n      }\n    }\n  }\n  if (value.implementsGoogStringTypedString) {\n    value \x3d value.getTypedStringValue();\n  }\n  goog.asserts.assert(typeof value \x3d\x3d\x3d \x22string\x22 || typeof value \x3d\x3d\x3d \x22number\x22, \x22String or number value expected, got \x22 + typeof value + \x22 with value: \x22 + value);\n  return name + \x27\\x3d\x22\x27 + goog.string.internal.htmlEscape(String(value)) + \x27\x22\x27;\n};\ngoog.html.SafeHtml.getStyleValue_ \x3d function(value) {\n  if (!goog.isObject(value)) {\n    throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27The \x22style\x22 attribute requires goog.html.SafeStyle or map \x27 + \x22of style properties, \x22 + typeof value + \x22 given: \x22 + value : \x22\x22);\n  }\n  if (!(value instanceof goog.html.SafeStyle)) {\n    value \x3d goog.html.SafeStyle.create(value);\n  }\n  return goog.html.SafeStyle.unwrap(value);\n};\ngoog.html.SafeHtml.createWithDir \x3d function(dir, tagName, opt_attributes, opt_content) {\n  var html \x3d goog.html.SafeHtml.create(tagName, opt_attributes, opt_content);\n  html.dir_ \x3d dir;\n  return html;\n};\ngoog.html.SafeHtml.join \x3d function(separator, parts) {\n  var separatorHtml \x3d goog.html.SafeHtml.htmlEscape(separator);\n  var dir \x3d separatorHtml.getDirection();\n  var content \x3d [];\n  var addArgument \x3d function(argument) {\n    if (Array.isArray(argument)) {\n      goog.array.forEach(argument, addArgument);\n    } else {\n      var html \x3d goog.html.SafeHtml.htmlEscape(argument);\n      content.push(goog.html.SafeHtml.unwrap(html));\n      var htmlDir \x3d html.getDirection();\n      if (dir \x3d\x3d goog.i18n.bidi.Dir.NEUTRAL) {\n        dir \x3d htmlDir;\n      } else {\n        if (htmlDir !\x3d goog.i18n.bidi.Dir.NEUTRAL \x26\x26 dir !\x3d htmlDir) {\n          dir \x3d null;\n        }\n      }\n    }\n  };\n  goog.array.forEach(parts, addArgument);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(content.join(goog.html.SafeHtml.unwrap(separatorHtml)), dir);\n};\ngoog.html.SafeHtml.concat \x3d function(var_args) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir \x3d function(dir, var_args) {\n  var html \x3d goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  html.dir_ \x3d dir;\n  return html;\n};\ngoog.html.SafeHtml.CONSTRUCTOR_TOKEN_PRIVATE_ \x3d {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse \x3d function(html, dir) {\n  var policy \x3d goog.html.trustedtypes.getPolicyPrivateDoNotAccessOrElse();\n  var trustedHtml \x3d policy ? policy.createHTML(html) : html;\n  return new goog.html.SafeHtml(trustedHtml, dir, goog.html.SafeHtml.CONSTRUCTOR_TOKEN_PRIVATE_);\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse \x3d function(tagName, opt_attributes, opt_content) {\n  var dir \x3d null;\n  var result \x3d \x22\\x3c\x22 + tagName;\n  result +\x3d goog.html.SafeHtml.stringifyAttributes(tagName, opt_attributes);\n  var content \x3d opt_content;\n  if (content \x3d\x3d null) {\n    content \x3d [];\n  } else {\n    if (!Array.isArray(content)) {\n      content \x3d [content];\n    }\n  }\n  if (goog.dom.tags.isVoidTag(tagName.toLowerCase())) {\n    goog.asserts.assert(!content.length, \x22Void tag \\x3c\x22 + tagName + \x22\\x3e does not allow content.\x22);\n    result +\x3d \x22\\x3e\x22;\n  } else {\n    var html \x3d goog.html.SafeHtml.concat(content);\n    result +\x3d \x22\\x3e\x22 + goog.html.SafeHtml.unwrap(html) + \x22\\x3c/\x22 + tagName + \x22\\x3e\x22;\n    dir \x3d html.getDirection();\n  }\n  var dirAttribute \x3d opt_attributes \x26\x26 opt_attributes[\x22dir\x22];\n  if (dirAttribute) {\n    if (/^(ltr|rtl|auto)$/i.test(dirAttribute)) {\n      dir \x3d goog.i18n.bidi.Dir.NEUTRAL;\n    } else {\n      dir \x3d null;\n    }\n  }\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(result, dir);\n};\ngoog.html.SafeHtml.stringifyAttributes \x3d function(tagName, opt_attributes) {\n  var result \x3d \x22\x22;\n  if (opt_attributes) {\n    for (var name in opt_attributes) {\n      if (Object.prototype.hasOwnProperty.call(opt_attributes, name)) {\n        if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(name)) {\n          throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27Invalid attribute name \x22\x27 + name + \x27\x22.\x27 : \x22\x22);\n        }\n        var value \x3d opt_attributes[name];\n        if (value \x3d\x3d null) {\n          continue;\n        }\n        result +\x3d \x22 \x22 + goog.html.SafeHtml.getAttrNameAndValue_(tagName, name, value);\n      }\n    }\n  }\n  return result;\n};\ngoog.html.SafeHtml.combineAttributes \x3d function(fixedAttributes, defaultAttributes, opt_attributes) {\n  var combinedAttributes \x3d {};\n  var name;\n  for (name in fixedAttributes) {\n    if (Object.prototype.hasOwnProperty.call(fixedAttributes, name)) {\n      goog.asserts.assert(name.toLowerCase() \x3d\x3d name, \x22Must be lower case\x22);\n      combinedAttributes[name] \x3d fixedAttributes[name];\n    }\n  }\n  for (name in defaultAttributes) {\n    if (Object.prototype.hasOwnProperty.call(defaultAttributes, name)) {\n      goog.asserts.assert(name.toLowerCase() \x3d\x3d name, \x22Must be lower case\x22);\n      combinedAttributes[name] \x3d defaultAttributes[name];\n    }\n  }\n  if (opt_attributes) {\n    for (name in opt_attributes) {\n      if (Object.prototype.hasOwnProperty.call(opt_attributes, name)) {\n        var nameLower \x3d name.toLowerCase();\n        if (nameLower in fixedAttributes) {\n          throw new Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \x27Cannot override \x22\x27 + nameLower + \x27\x22 attribute, got \x22\x27 + name + \x27\x22 with value \x22\x27 + opt_attributes[name] + \x27\x22\x27 : \x22\x22);\n        }\n        if (nameLower in defaultAttributes) {\n          delete combinedAttributes[nameLower];\n        }\n        combinedAttributes[name] \x3d opt_attributes[name];\n      }\n    }\n  }\n  return combinedAttributes;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML \x3d {valueOf:function() {\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\x22\\x3c!DOCTYPE html\\x3e\x22, goog.i18n.bidi.Dir.NEUTRAL);\n}, }.valueOf();\ngoog.html.SafeHtml.EMPTY \x3d new goog.html.SafeHtml(goog.global.trustedTypes \x26\x26 goog.global.trustedTypes.emptyHTML || \x22\x22, goog.i18n.bidi.Dir.NEUTRAL, goog.html.SafeHtml.CONSTRUCTOR_TOKEN_PRIVATE_);\ngoog.html.SafeHtml.BR \x3d {valueOf:function() {\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\x22\\x3cbr\\x3e\x22, goog.i18n.bidi.Dir.NEUTRAL);\n}, }.valueOf();\n");
SHADOW_ENV.evalLoad("goog.html.uncheckedconversions.js", true , "goog.provide(\x22goog.html.uncheckedconversions\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.html.SafeHtml\x22);\ngoog.require(\x22goog.html.SafeScript\x22);\ngoog.require(\x22goog.html.SafeStyle\x22);\ngoog.require(\x22goog.html.SafeStyleSheet\x22);\ngoog.require(\x22goog.html.SafeUrl\x22);\ngoog.require(\x22goog.html.TrustedResourceUrl\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.requireType(\x22goog.i18n.bidi.Dir\x22);\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract \x3d function(justification, html, opt_dir) {\n  goog.asserts.assertString(goog.string.Const.unwrap(justification), \x22must provide justification\x22);\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(justification)), \x22must provide non-empty justification\x22);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(html, opt_dir || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract \x3d function(justification, script) {\n  goog.asserts.assertString(goog.string.Const.unwrap(justification), \x22must provide justification\x22);\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(justification)), \x22must provide non-empty justification\x22);\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(script);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract \x3d function(justification, style) {\n  goog.asserts.assertString(goog.string.Const.unwrap(justification), \x22must provide justification\x22);\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(justification)), \x22must provide non-empty justification\x22);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(style);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract \x3d function(justification, styleSheet) {\n  goog.asserts.assertString(goog.string.Const.unwrap(justification), \x22must provide justification\x22);\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(justification)), \x22must provide non-empty justification\x22);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(styleSheet);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract \x3d function(justification, url) {\n  goog.asserts.assertString(goog.string.Const.unwrap(justification), \x22must provide justification\x22);\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(justification)), \x22must provide non-empty justification\x22);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(url);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract \x3d function(justification, url) {\n  goog.asserts.assertString(goog.string.Const.unwrap(justification), \x22must provide justification\x22);\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(justification)), \x22must provide non-empty justification\x22);\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(url);\n};\n");
SHADOW_ENV.evalLoad("goog.dom.safe.js", true , "goog.provide(\x22goog.dom.safe\x22);\ngoog.provide(\x22goog.dom.safe.InsertAdjacentHtmlPosition\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.dom.asserts\x22);\ngoog.require(\x22goog.functions\x22);\ngoog.require(\x22goog.html.SafeHtml\x22);\ngoog.require(\x22goog.html.SafeScript\x22);\ngoog.require(\x22goog.html.SafeStyle\x22);\ngoog.require(\x22goog.html.SafeUrl\x22);\ngoog.require(\x22goog.html.TrustedResourceUrl\x22);\ngoog.require(\x22goog.html.uncheckedconversions\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.dom.safe.InsertAdjacentHtmlPosition \x3d {AFTERBEGIN:\x22afterbegin\x22, AFTEREND:\x22afterend\x22, BEFOREBEGIN:\x22beforebegin\x22, BEFOREEND:\x22beforeend\x22};\ngoog.dom.safe.insertAdjacentHtml \x3d function(node, position, html) {\n  node.insertAdjacentHTML(position, goog.html.SafeHtml.unwrapTrustedHTML(html));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ \x3d {\x22MATH\x22:true, \x22SCRIPT\x22:true, \x22STYLE\x22:true, \x22SVG\x22:true, \x22TEMPLATE\x22:true};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ \x3d goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG \x26\x26 typeof document \x3d\x3d\x3d \x22undefined\x22) {\n    return false;\n  }\n  var div \x3d document.createElement(\x22div\x22);\n  var childDiv \x3d document.createElement(\x22div\x22);\n  childDiv.appendChild(document.createElement(\x22div\x22));\n  div.appendChild(childDiv);\n  if (goog.DEBUG \x26\x26 !div.firstChild) {\n    return false;\n  }\n  var innerChild \x3d div.firstChild.firstChild;\n  div.innerHTML \x3d goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !innerChild.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse \x3d function(elem, html) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    while (elem.lastChild) {\n      elem.removeChild(elem.lastChild);\n    }\n  }\n  elem.innerHTML \x3d goog.html.SafeHtml.unwrapTrustedHTML(html);\n};\ngoog.dom.safe.setInnerHtml \x3d function(elem, html) {\n  if (goog.asserts.ENABLE_ASSERTS \x26\x26 elem.tagName) {\n    var tagName \x3d elem.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[tagName]) {\n      throw new Error(\x22goog.dom.safe.setInnerHtml cannot be used to set content of \x22 + elem.tagName + \x22.\x22);\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(elem, html);\n};\ngoog.dom.safe.setInnerHtmlFromConstant \x3d function(element, constHtml) {\n  goog.dom.safe.setInnerHtml(element, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\x22Constant HTML to be immediatelly used.\x22), goog.string.Const.unwrap(constHtml)));\n};\ngoog.dom.safe.setOuterHtml \x3d function(elem, html) {\n  elem.outerHTML \x3d goog.html.SafeHtml.unwrapTrustedHTML(html);\n};\ngoog.dom.safe.setFormElementAction \x3d function(form, url) {\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  goog.dom.asserts.assertIsHTMLFormElement(form).action \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setButtonFormAction \x3d function(button, url) {\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  goog.dom.asserts.assertIsHTMLButtonElement(button).formAction \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setInputFormAction \x3d function(input, url) {\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  goog.dom.asserts.assertIsHTMLInputElement(input).formAction \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setStyle \x3d function(elem, style) {\n  elem.style.cssText \x3d goog.html.SafeStyle.unwrap(style);\n};\ngoog.dom.safe.documentWrite \x3d function(doc, html) {\n  doc.write(goog.html.SafeHtml.unwrapTrustedHTML(html));\n};\ngoog.dom.safe.setAnchorHref \x3d function(anchor, url) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(anchor);\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  anchor.href \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setImageSrc \x3d function(imageElement, url) {\n  goog.dom.asserts.assertIsHTMLImageElement(imageElement);\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    var allowDataUrl \x3d /^data:image\\//i.test(url);\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url, allowDataUrl);\n  }\n  imageElement.src \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setAudioSrc \x3d function(audioElement, url) {\n  goog.dom.asserts.assertIsHTMLAudioElement(audioElement);\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    var allowDataUrl \x3d /^data:audio\\//i.test(url);\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url, allowDataUrl);\n  }\n  audioElement.src \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setVideoSrc \x3d function(videoElement, url) {\n  goog.dom.asserts.assertIsHTMLVideoElement(videoElement);\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    var allowDataUrl \x3d /^data:video\\//i.test(url);\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url, allowDataUrl);\n  }\n  videoElement.src \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.setEmbedSrc \x3d function(embed, url) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(embed);\n  embed.src \x3d goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(url);\n};\ngoog.dom.safe.setFrameSrc \x3d function(frame, url) {\n  goog.dom.asserts.assertIsHTMLFrameElement(frame);\n  frame.src \x3d goog.html.TrustedResourceUrl.unwrap(url);\n};\ngoog.dom.safe.setIframeSrc \x3d function(iframe, url) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(iframe);\n  iframe.src \x3d goog.html.TrustedResourceUrl.unwrap(url);\n};\ngoog.dom.safe.setIframeSrcdoc \x3d function(iframe, html) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(iframe);\n  iframe.srcdoc \x3d goog.html.SafeHtml.unwrapTrustedHTML(html);\n};\ngoog.dom.safe.setLinkHrefAndRel \x3d function(link, url, rel) {\n  goog.dom.asserts.assertIsHTMLLinkElement(link);\n  link.rel \x3d rel;\n  if (goog.string.internal.caseInsensitiveContains(rel, \x22stylesheet\x22)) {\n    goog.asserts.assert(url instanceof goog.html.TrustedResourceUrl, \x27URL must be TrustedResourceUrl because \x22rel\x22 contains \x22stylesheet\x22\x27);\n    link.href \x3d goog.html.TrustedResourceUrl.unwrap(url);\n  } else {\n    if (url instanceof goog.html.TrustedResourceUrl) {\n      link.href \x3d goog.html.TrustedResourceUrl.unwrap(url);\n    } else {\n      if (url instanceof goog.html.SafeUrl) {\n        link.href \x3d goog.html.SafeUrl.unwrap(url);\n      } else {\n        link.href \x3d goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitizeAssertUnchanged(url));\n      }\n    }\n  }\n};\ngoog.dom.safe.setObjectData \x3d function(object, url) {\n  goog.dom.asserts.assertIsHTMLObjectElement(object);\n  object.data \x3d goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(url);\n};\ngoog.dom.safe.setScriptSrc \x3d function(script, url) {\n  goog.dom.asserts.assertIsHTMLScriptElement(script);\n  script.src \x3d goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(url);\n  goog.dom.safe.setNonceForScriptElement_(script);\n};\ngoog.dom.safe.setScriptContent \x3d function(script, content) {\n  goog.dom.asserts.assertIsHTMLScriptElement(script);\n  script.textContent \x3d goog.html.SafeScript.unwrapTrustedScript(content);\n  goog.dom.safe.setNonceForScriptElement_(script);\n};\ngoog.dom.safe.setNonceForScriptElement_ \x3d function(script) {\n  var win \x3d script.ownerDocument \x26\x26 script.ownerDocument.defaultView;\n  var nonce \x3d goog.getScriptNonce(win);\n  if (nonce) {\n    script.setAttribute(\x22nonce\x22, nonce);\n  }\n};\ngoog.dom.safe.setLocationHref \x3d function(loc, url) {\n  goog.dom.asserts.assertIsLocation(loc);\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  loc.href \x3d goog.html.SafeUrl.unwrap(safeUrl);\n};\ngoog.dom.safe.assignLocation \x3d function(loc, url) {\n  goog.dom.asserts.assertIsLocation(loc);\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  loc.assign(goog.html.SafeUrl.unwrap(safeUrl));\n};\ngoog.dom.safe.replaceLocation \x3d function(loc, url) {\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  loc.replace(goog.html.SafeUrl.unwrap(safeUrl));\n};\ngoog.dom.safe.openInWindow \x3d function(url, opt_openerWin, opt_name, opt_specs, opt_replace) {\n  var safeUrl;\n  if (url instanceof goog.html.SafeUrl) {\n    safeUrl \x3d url;\n  } else {\n    safeUrl \x3d goog.html.SafeUrl.sanitizeAssertUnchanged(url);\n  }\n  var win \x3d opt_openerWin || goog.global;\n  var name \x3d opt_name instanceof goog.string.Const ? goog.string.Const.unwrap(opt_name) : opt_name || \x22\x22;\n  if (opt_specs !\x3d\x3d undefined || opt_replace !\x3d\x3d undefined) {\n    return win.open(goog.html.SafeUrl.unwrap(safeUrl), name, opt_specs, opt_replace);\n  } else {\n    return win.open(goog.html.SafeUrl.unwrap(safeUrl), name);\n  }\n};\ngoog.dom.safe.parseFromStringHtml \x3d function(parser, html) {\n  return goog.dom.safe.parseFromString(parser, html, \x22text/html\x22);\n};\ngoog.dom.safe.parseFromString \x3d function(parser, content, type) {\n  return parser.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(content), type);\n};\ngoog.dom.safe.createImageFromBlob \x3d function(blob) {\n  if (!/^image\\/.*/g.test(blob.type)) {\n    throw new Error(\x22goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\x22);\n  }\n  var objectUrl \x3d goog.global.URL.createObjectURL(blob);\n  var image \x3d new goog.global.Image;\n  image.onload \x3d function() {\n    goog.global.URL.revokeObjectURL(objectUrl);\n  };\n  goog.dom.safe.setImageSrc(image, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\x22Image blob URL.\x22), objectUrl));\n  return image;\n};\ngoog.dom.safe.createContextualFragment \x3d function(range, html) {\n  return range.createContextualFragment(goog.html.SafeHtml.unwrapTrustedHTML(html));\n};\n");
SHADOW_ENV.evalLoad("goog.string.string.js", true , "goog.provide(\x22goog.string\x22);\ngoog.provide(\x22goog.string.Unicode\x22);\ngoog.require(\x22goog.dom.safe\x22);\ngoog.require(\x22goog.html.uncheckedconversions\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.internal\x22);\ngoog.string.DETECT_DOUBLE_ESCAPING \x3d goog.define(\x22goog.string.DETECT_DOUBLE_ESCAPING\x22, false);\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING \x3d goog.define(\x22goog.string.FORCE_NON_DOM_HTML_UNESCAPING\x22, false);\ngoog.string.Unicode \x3d {NBSP:\x22\xa0\x22};\ngoog.string.startsWith \x3d goog.string.internal.startsWith;\ngoog.string.endsWith \x3d goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith \x3d goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith \x3d goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals \x3d goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs \x3d function(str, var_args) {\n  var splitParts \x3d str.split(\x22%s\x22);\n  var returnString \x3d \x22\x22;\n  var subsArguments \x3d Array.prototype.slice.call(arguments, 1);\n  while (subsArguments.length \x26\x26 splitParts.length \x3e 1) {\n    returnString +\x3d splitParts.shift() + subsArguments.shift();\n  }\n  return returnString + splitParts.join(\x22%s\x22);\n};\ngoog.string.collapseWhitespace \x3d function(str) {\n  return str.replace(/[\\s\\xa0]+/g, \x22 \x22).replace(/^\\s+|\\s+$/g, \x22\x22);\n};\ngoog.string.isEmptyOrWhitespace \x3d goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString \x3d function(str) {\n  return str.length \x3d\x3d 0;\n};\ngoog.string.isEmpty \x3d goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe \x3d function(str) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(str));\n};\ngoog.string.isEmptySafe \x3d goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace \x3d function(str) {\n  return !/[^\\t\\n\\r ]/.test(str);\n};\ngoog.string.isAlpha \x3d function(str) {\n  return !/[^a-zA-Z]/.test(str);\n};\ngoog.string.isNumeric \x3d function(str) {\n  return !/[^0-9]/.test(str);\n};\ngoog.string.isAlphaNumeric \x3d function(str) {\n  return !/[^a-zA-Z0-9]/.test(str);\n};\ngoog.string.isSpace \x3d function(ch) {\n  return ch \x3d\x3d \x22 \x22;\n};\ngoog.string.isUnicodeChar \x3d function(ch) {\n  return ch.length \x3d\x3d 1 \x26\x26 ch \x3e\x3d \x22 \x22 \x26\x26 ch \x3c\x3d \x22~\x22 || ch \x3e\x3d \x22\x80\x22 \x26\x26 ch \x3c\x3d \x22\ufffd\x22;\n};\ngoog.string.stripNewlines \x3d function(str) {\n  return str.replace(/(\\r\\n|\\r|\\n)+/g, \x22 \x22);\n};\ngoog.string.canonicalizeNewlines \x3d function(str) {\n  return str.replace(/(\\r\\n|\\r|\\n)/g, \x22\\n\x22);\n};\ngoog.string.normalizeWhitespace \x3d function(str) {\n  return str.replace(/\\xa0|\\s/g, \x22 \x22);\n};\ngoog.string.normalizeSpaces \x3d function(str) {\n  return str.replace(/\\xa0|[ \\t]+/g, \x22 \x22);\n};\ngoog.string.collapseBreakingSpaces \x3d function(str) {\n  return str.replace(/[\\t\\r\\n ]+/g, \x22 \x22).replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \x22\x22);\n};\ngoog.string.trim \x3d goog.string.internal.trim;\ngoog.string.trimLeft \x3d function(str) {\n  return str.replace(/^[\\s\\xa0]+/, \x22\x22);\n};\ngoog.string.trimRight \x3d function(str) {\n  return str.replace(/[\\s\\xa0]+$/, \x22\x22);\n};\ngoog.string.caseInsensitiveCompare \x3d goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ \x3d function(str1, str2, tokenizerRegExp) {\n  if (str1 \x3d\x3d str2) {\n    return 0;\n  }\n  if (!str1) {\n    return -1;\n  }\n  if (!str2) {\n    return 1;\n  }\n  var tokens1 \x3d str1.toLowerCase().match(tokenizerRegExp);\n  var tokens2 \x3d str2.toLowerCase().match(tokenizerRegExp);\n  var count \x3d Math.min(tokens1.length, tokens2.length);\n  for (var i \x3d 0; i \x3c count; i++) {\n    var a \x3d tokens1[i];\n    var b \x3d tokens2[i];\n    if (a !\x3d b) {\n      var num1 \x3d parseInt(a, 10);\n      if (!isNaN(num1)) {\n        var num2 \x3d parseInt(b, 10);\n        if (!isNaN(num2) \x26\x26 num1 - num2) {\n          return num1 - num2;\n        }\n      }\n      return a \x3c b ? -1 : 1;\n    }\n  }\n  if (tokens1.length !\x3d tokens2.length) {\n    return tokens1.length - tokens2.length;\n  }\n  return str1 \x3c str2 ? -1 : 1;\n};\ngoog.string.intAwareCompare \x3d function(str1, str2) {\n  return goog.string.numberAwareCompare_(str1, str2, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare \x3d function(str1, str2) {\n  return goog.string.numberAwareCompare_(str1, str2, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare \x3d goog.string.floatAwareCompare;\ngoog.string.urlEncode \x3d function(str) {\n  return encodeURIComponent(String(str));\n};\ngoog.string.urlDecode \x3d function(str) {\n  return decodeURIComponent(str.replace(/\\+/g, \x22 \x22));\n};\ngoog.string.newLineToBr \x3d goog.string.internal.newLineToBr;\ngoog.string.htmlEscape \x3d function(str, opt_isLikelyToContainHtmlChars) {\n  str \x3d goog.string.internal.htmlEscape(str, opt_isLikelyToContainHtmlChars);\n  if (goog.string.DETECT_DOUBLE_ESCAPING) {\n    str \x3d str.replace(goog.string.E_RE_, \x22\\x26#101;\x22);\n  }\n  return str;\n};\ngoog.string.E_RE_ \x3d /e/g;\ngoog.string.unescapeEntities \x3d function(str) {\n  if (goog.string.contains(str, \x22\\x26\x22)) {\n    if (!goog.string.FORCE_NON_DOM_HTML_UNESCAPING \x26\x26 \x22document\x22 in goog.global) {\n      return goog.string.unescapeEntitiesUsingDom_(str);\n    } else {\n      return goog.string.unescapePureXmlEntities_(str);\n    }\n  }\n  return str;\n};\ngoog.string.unescapeEntitiesWithDocument \x3d function(str, document) {\n  if (goog.string.contains(str, \x22\\x26\x22)) {\n    return goog.string.unescapeEntitiesUsingDom_(str, document);\n  }\n  return str;\n};\ngoog.string.unescapeEntitiesUsingDom_ \x3d function(str, opt_document) {\n  var seen \x3d {\x22\\x26amp;\x22:\x22\\x26\x22, \x22\\x26lt;\x22:\x22\\x3c\x22, \x22\\x26gt;\x22:\x22\\x3e\x22, \x22\\x26quot;\x22:\x27\x22\x27};\n  var div;\n  if (opt_document) {\n    div \x3d opt_document.createElement(\x22div\x22);\n  } else {\n    div \x3d goog.global.document.createElement(\x22div\x22);\n  }\n  return str.replace(goog.string.HTML_ENTITY_PATTERN_, function(s, entity) {\n    var value \x3d seen[s];\n    if (value) {\n      return value;\n    }\n    if (entity.charAt(0) \x3d\x3d \x22#\x22) {\n      var n \x3d Number(\x220\x22 + entity.substr(1));\n      if (!isNaN(n)) {\n        value \x3d String.fromCharCode(n);\n      }\n    }\n    if (!value) {\n      goog.dom.safe.setInnerHtml(div, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\x22Single HTML entity.\x22), s + \x22 \x22));\n      value \x3d div.firstChild.nodeValue.slice(0, -1);\n    }\n    return seen[s] \x3d value;\n  });\n};\ngoog.string.unescapePureXmlEntities_ \x3d function(str) {\n  return str.replace(/\x26([^;]+);/g, function(s, entity) {\n    switch(entity) {\n      case \x22amp\x22:\n        return \x22\\x26\x22;\n      case \x22lt\x22:\n        return \x22\\x3c\x22;\n      case \x22gt\x22:\n        return \x22\\x3e\x22;\n      case \x22quot\x22:\n        return \x27\x22\x27;\n      default:\n        if (entity.charAt(0) \x3d\x3d \x22#\x22) {\n          var n \x3d Number(\x220\x22 + entity.substr(1));\n          if (!isNaN(n)) {\n            return String.fromCharCode(n);\n          }\n        }\n        return s;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ \x3d /\x26([^;\\s\x3c\x26]+);?/g;\ngoog.string.whitespaceEscape \x3d function(str, opt_xml) {\n  return goog.string.newLineToBr(str.replace(/  /g, \x22 \\x26#160;\x22), opt_xml);\n};\ngoog.string.preserveSpaces \x3d function(str) {\n  return str.replace(/(^|[\\n ]) /g, \x22$1\x22 + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes \x3d function(str, quoteChars) {\n  var length \x3d quoteChars.length;\n  for (var i \x3d 0; i \x3c length; i++) {\n    var quoteChar \x3d length \x3d\x3d 1 ? quoteChars : quoteChars.charAt(i);\n    if (str.charAt(0) \x3d\x3d quoteChar \x26\x26 str.charAt(str.length - 1) \x3d\x3d quoteChar) {\n      return str.substring(1, str.length - 1);\n    }\n  }\n  return str;\n};\ngoog.string.truncate \x3d function(str, chars, opt_protectEscapedCharacters) {\n  if (opt_protectEscapedCharacters) {\n    str \x3d goog.string.unescapeEntities(str);\n  }\n  if (str.length \x3e chars) {\n    str \x3d str.substring(0, chars - 3) + \x22...\x22;\n  }\n  if (opt_protectEscapedCharacters) {\n    str \x3d goog.string.htmlEscape(str);\n  }\n  return str;\n};\ngoog.string.truncateMiddle \x3d function(str, chars, opt_protectEscapedCharacters, opt_trailingChars) {\n  if (opt_protectEscapedCharacters) {\n    str \x3d goog.string.unescapeEntities(str);\n  }\n  if (opt_trailingChars \x26\x26 str.length \x3e chars) {\n    if (opt_trailingChars \x3e chars) {\n      opt_trailingChars \x3d chars;\n    }\n    var endPoint \x3d str.length - opt_trailingChars;\n    var startPoint \x3d chars - opt_trailingChars;\n    str \x3d str.substring(0, startPoint) + \x22...\x22 + str.substring(endPoint);\n  } else {\n    if (str.length \x3e chars) {\n      var half \x3d Math.floor(chars / 2);\n      var endPos \x3d str.length - half;\n      half +\x3d chars % 2;\n      str \x3d str.substring(0, half) + \x22...\x22 + str.substring(endPos);\n    }\n  }\n  if (opt_protectEscapedCharacters) {\n    str \x3d goog.string.htmlEscape(str);\n  }\n  return str;\n};\ngoog.string.specialEscapeChars_ \x3d {\x22\\x00\x22:\x22\\\\0\x22, \x22\\b\x22:\x22\\\\b\x22, \x22\\f\x22:\x22\\\\f\x22, \x22\\n\x22:\x22\\\\n\x22, \x22\\r\x22:\x22\\\\r\x22, \x22\\t\x22:\x22\\\\t\x22, \x22\\x0B\x22:\x22\\\\x0B\x22, \x27\x22\x27:\x27\\\\\x22\x27, \x22\\\\\x22:\x22\\\\\\\\\x22, \x22\\x3c\x22:\x22\\\\u003C\x22};\ngoog.string.jsEscapeCache_ \x3d {\x22\x27\x22:\x22\\\\\x27\x22};\ngoog.string.quote \x3d function(s) {\n  s \x3d String(s);\n  var sb \x3d [\x27\x22\x27];\n  for (var i \x3d 0; i \x3c s.length; i++) {\n    var ch \x3d s.charAt(i);\n    var cc \x3d ch.charCodeAt(0);\n    sb[i + 1] \x3d goog.string.specialEscapeChars_[ch] || (cc \x3e 31 \x26\x26 cc \x3c 127 ? ch : goog.string.escapeChar(ch));\n  }\n  sb.push(\x27\x22\x27);\n  return sb.join(\x22\x22);\n};\ngoog.string.escapeString \x3d function(str) {\n  var sb \x3d [];\n  for (var i \x3d 0; i \x3c str.length; i++) {\n    sb[i] \x3d goog.string.escapeChar(str.charAt(i));\n  }\n  return sb.join(\x22\x22);\n};\ngoog.string.escapeChar \x3d function(c) {\n  if (c in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[c];\n  }\n  if (c in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[c] \x3d goog.string.specialEscapeChars_[c];\n  }\n  var rv \x3d c;\n  var cc \x3d c.charCodeAt(0);\n  if (cc \x3e 31 \x26\x26 cc \x3c 127) {\n    rv \x3d c;\n  } else {\n    if (cc \x3c 256) {\n      rv \x3d \x22\\\\x\x22;\n      if (cc \x3c 16 || cc \x3e 256) {\n        rv +\x3d \x220\x22;\n      }\n    } else {\n      rv \x3d \x22\\\\u\x22;\n      if (cc \x3c 4096) {\n        rv +\x3d \x220\x22;\n      }\n    }\n    rv +\x3d cc.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[c] \x3d rv;\n};\ngoog.string.contains \x3d goog.string.internal.contains;\ngoog.string.caseInsensitiveContains \x3d goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf \x3d function(s, ss) {\n  return s \x26\x26 ss ? s.split(ss).length - 1 : 0;\n};\ngoog.string.removeAt \x3d function(s, index, stringLength) {\n  var resultStr \x3d s;\n  if (index \x3e\x3d 0 \x26\x26 index \x3c s.length \x26\x26 stringLength \x3e 0) {\n    resultStr \x3d s.substr(0, index) + s.substr(index + stringLength, s.length - index - stringLength);\n  }\n  return resultStr;\n};\ngoog.string.remove \x3d function(str, substr) {\n  return str.replace(substr, \x22\x22);\n};\ngoog.string.removeAll \x3d function(s, ss) {\n  var re \x3d new RegExp(goog.string.regExpEscape(ss), \x22g\x22);\n  return s.replace(re, \x22\x22);\n};\ngoog.string.replaceAll \x3d function(s, ss, replacement) {\n  var re \x3d new RegExp(goog.string.regExpEscape(ss), \x22g\x22);\n  return s.replace(re, replacement.replace(/\\$/g, \x22$$$$\x22));\n};\ngoog.string.regExpEscape \x3d function(s) {\n  return String(s).replace(/([-()\\[\\]{}+?*.$\\^|,:#\x3c!\\\\])/g, \x22\\\\$1\x22).replace(/\\x08/g, \x22\\\\x08\x22);\n};\ngoog.string.repeat \x3d String.prototype.repeat ? function(string, length) {\n  return string.repeat(length);\n} : function(string, length) {\n  return (new Array(length + 1)).join(string);\n};\ngoog.string.padNumber \x3d function(num, length, opt_precision) {\n  var s \x3d opt_precision !\x3d\x3d undefined ? num.toFixed(opt_precision) : String(num);\n  var index \x3d s.indexOf(\x22.\x22);\n  if (index \x3d\x3d -1) {\n    index \x3d s.length;\n  }\n  return goog.string.repeat(\x220\x22, Math.max(0, length - index)) + s;\n};\ngoog.string.makeSafe \x3d function(obj) {\n  return obj \x3d\x3d null ? \x22\x22 : String(obj);\n};\ngoog.string.buildString \x3d function(var_args) {\n  return Array.prototype.join.call(arguments, \x22\x22);\n};\ngoog.string.getRandomString \x3d function() {\n  var x \x3d 2147483648;\n  return Math.floor(Math.random() * x).toString(36) + Math.abs(Math.floor(Math.random() * x) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions \x3d goog.string.internal.compareVersions;\ngoog.string.hashCode \x3d function(str) {\n  var result \x3d 0;\n  for (var i \x3d 0; i \x3c str.length; ++i) {\n    result \x3d 31 * result + str.charCodeAt(i) \x3e\x3e\x3e 0;\n  }\n  return result;\n};\ngoog.string.uniqueStringCounter_ \x3d Math.random() * 2147483648 | 0;\ngoog.string.createUniqueString \x3d function() {\n  return \x22goog_\x22 + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber \x3d function(str) {\n  var num \x3d Number(str);\n  if (num \x3d\x3d 0 \x26\x26 goog.string.isEmptyOrWhitespace(str)) {\n    return NaN;\n  }\n  return num;\n};\ngoog.string.isLowerCamelCase \x3d function(str) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(str);\n};\ngoog.string.isUpperCamelCase \x3d function(str) {\n  return /^([A-Z][a-z]*)+$/.test(str);\n};\ngoog.string.toCamelCase \x3d function(str) {\n  return String(str).replace(/\\-([a-z])/g, function(all, match) {\n    return match.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase \x3d function(str) {\n  return String(str).replace(/([A-Z])/g, \x22-$1\x22).toLowerCase();\n};\ngoog.string.toTitleCase \x3d function(str, opt_delimiters) {\n  var delimiters \x3d typeof opt_delimiters \x3d\x3d\x3d \x22string\x22 ? goog.string.regExpEscape(opt_delimiters) : \x22\\\\s\x22;\n  delimiters \x3d delimiters ? \x22|[\x22 + delimiters + \x22]+\x22 : \x22\x22;\n  var regexp \x3d new RegExp(\x22(^\x22 + delimiters + \x22)([a-z])\x22, \x22g\x22);\n  return str.replace(regexp, function(all, p1, p2) {\n    return p1 + p2.toUpperCase();\n  });\n};\ngoog.string.capitalize \x3d function(str) {\n  return String(str.charAt(0)).toUpperCase() + String(str.substr(1)).toLowerCase();\n};\ngoog.string.parseInt \x3d function(value) {\n  if (isFinite(value)) {\n    value \x3d String(value);\n  }\n  if (typeof value \x3d\x3d\x3d \x22string\x22) {\n    return /^\\s*-?0x/i.test(value) ? parseInt(value, 16) : parseInt(value, 10);\n  }\n  return NaN;\n};\ngoog.string.splitLimit \x3d function(str, separator, limit) {\n  var parts \x3d str.split(separator);\n  var returnVal \x3d [];\n  while (limit \x3e 0 \x26\x26 parts.length) {\n    returnVal.push(parts.shift());\n    limit--;\n  }\n  if (parts.length) {\n    returnVal.push(parts.join(separator));\n  }\n  return returnVal;\n};\ngoog.string.lastComponent \x3d function(str, separators) {\n  if (!separators) {\n    return str;\n  } else {\n    if (typeof separators \x3d\x3d \x22string\x22) {\n      separators \x3d [separators];\n    }\n  }\n  var lastSeparatorIndex \x3d -1;\n  for (var i \x3d 0; i \x3c separators.length; i++) {\n    if (separators[i] \x3d\x3d \x22\x22) {\n      continue;\n    }\n    var currentSeparatorIndex \x3d str.lastIndexOf(separators[i]);\n    if (currentSeparatorIndex \x3e lastSeparatorIndex) {\n      lastSeparatorIndex \x3d currentSeparatorIndex;\n    }\n  }\n  if (lastSeparatorIndex \x3d\x3d -1) {\n    return str;\n  }\n  return str.slice(lastSeparatorIndex + 1);\n};\ngoog.string.editDistance \x3d function(a, b) {\n  var v0 \x3d [];\n  var v1 \x3d [];\n  if (a \x3d\x3d b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var i \x3d 0; i \x3c b.length + 1; i++) {\n    v0[i] \x3d i;\n  }\n  for (var i \x3d 0; i \x3c a.length; i++) {\n    v1[0] \x3d i + 1;\n    for (var j \x3d 0; j \x3c b.length; j++) {\n      var cost \x3d Number(a[i] !\x3d b[j]);\n      v1[j + 1] \x3d Math.min(v1[j] + 1, v0[j + 1] + 1, v0[j] + cost);\n    }\n    for (var j \x3d 0; j \x3c v0.length; j++) {\n      v0[j] \x3d v1[j];\n    }\n  }\n  return v1[b.length];\n};\n");
SHADOW_ENV.evalLoad("goog.structs.structs.js", true , "goog.provide(\x22goog.structs\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.object\x22);\ngoog.structs.getCount \x3d function(col) {\n  if (col.getCount \x26\x26 typeof col.getCount \x3d\x3d \x22function\x22) {\n    return col.getCount();\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return col.length;\n  }\n  return goog.object.getCount(col);\n};\ngoog.structs.getValues \x3d function(col) {\n  if (col.getValues \x26\x26 typeof col.getValues \x3d\x3d \x22function\x22) {\n    return col.getValues();\n  }\n  if (typeof col \x3d\x3d\x3d \x22string\x22) {\n    return col.split(\x22\x22);\n  }\n  if (goog.isArrayLike(col)) {\n    var rv \x3d [];\n    var l \x3d col.length;\n    for (var i \x3d 0; i \x3c l; i++) {\n      rv.push(col[i]);\n    }\n    return rv;\n  }\n  return goog.object.getValues(col);\n};\ngoog.structs.getKeys \x3d function(col) {\n  if (col.getKeys \x26\x26 typeof col.getKeys \x3d\x3d \x22function\x22) {\n    return col.getKeys();\n  }\n  if (col.getValues \x26\x26 typeof col.getValues \x3d\x3d \x22function\x22) {\n    return undefined;\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    var rv \x3d [];\n    var l \x3d col.length;\n    for (var i \x3d 0; i \x3c l; i++) {\n      rv.push(i);\n    }\n    return rv;\n  }\n  return goog.object.getKeys(col);\n};\ngoog.structs.contains \x3d function(col, val) {\n  if (col.contains \x26\x26 typeof col.contains \x3d\x3d \x22function\x22) {\n    return col.contains(val);\n  }\n  if (col.containsValue \x26\x26 typeof col.containsValue \x3d\x3d \x22function\x22) {\n    return col.containsValue(val);\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return goog.array.contains(col, val);\n  }\n  return goog.object.containsValue(col, val);\n};\ngoog.structs.isEmpty \x3d function(col) {\n  if (col.isEmpty \x26\x26 typeof col.isEmpty \x3d\x3d \x22function\x22) {\n    return col.isEmpty();\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return goog.array.isEmpty(col);\n  }\n  return goog.object.isEmpty(col);\n};\ngoog.structs.clear \x3d function(col) {\n  if (col.clear \x26\x26 typeof col.clear \x3d\x3d \x22function\x22) {\n    col.clear();\n  } else {\n    if (goog.isArrayLike(col)) {\n      goog.array.clear(col);\n    } else {\n      goog.object.clear(col);\n    }\n  }\n};\ngoog.structs.forEach \x3d function(col, f, opt_obj) {\n  if (col.forEach \x26\x26 typeof col.forEach \x3d\x3d \x22function\x22) {\n    col.forEach(f, opt_obj);\n  } else {\n    if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n      goog.array.forEach(col, f, opt_obj);\n    } else {\n      var keys \x3d goog.structs.getKeys(col);\n      var values \x3d goog.structs.getValues(col);\n      var l \x3d values.length;\n      for (var i \x3d 0; i \x3c l; i++) {\n        f.call(opt_obj, values[i], keys \x26\x26 keys[i], col);\n      }\n    }\n  }\n};\ngoog.structs.filter \x3d function(col, f, opt_obj) {\n  if (typeof col.filter \x3d\x3d \x22function\x22) {\n    return col.filter(f, opt_obj);\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return goog.array.filter(col, f, opt_obj);\n  }\n  var rv;\n  var keys \x3d goog.structs.getKeys(col);\n  var values \x3d goog.structs.getValues(col);\n  var l \x3d values.length;\n  if (keys) {\n    rv \x3d {};\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (f.call(opt_obj, values[i], keys[i], col)) {\n        rv[keys[i]] \x3d values[i];\n      }\n    }\n  } else {\n    rv \x3d [];\n    for (var i \x3d 0; i \x3c l; i++) {\n      if (f.call(opt_obj, values[i], undefined, col)) {\n        rv.push(values[i]);\n      }\n    }\n  }\n  return rv;\n};\ngoog.structs.map \x3d function(col, f, opt_obj) {\n  if (typeof col.map \x3d\x3d \x22function\x22) {\n    return col.map(f, opt_obj);\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return goog.array.map(col, f, opt_obj);\n  }\n  var rv;\n  var keys \x3d goog.structs.getKeys(col);\n  var values \x3d goog.structs.getValues(col);\n  var l \x3d values.length;\n  if (keys) {\n    rv \x3d {};\n    for (var i \x3d 0; i \x3c l; i++) {\n      rv[keys[i]] \x3d f.call(opt_obj, values[i], keys[i], col);\n    }\n  } else {\n    rv \x3d [];\n    for (var i \x3d 0; i \x3c l; i++) {\n      rv[i] \x3d f.call(opt_obj, values[i], undefined, col);\n    }\n  }\n  return rv;\n};\ngoog.structs.some \x3d function(col, f, opt_obj) {\n  if (typeof col.some \x3d\x3d \x22function\x22) {\n    return col.some(f, opt_obj);\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return goog.array.some(col, f, opt_obj);\n  }\n  var keys \x3d goog.structs.getKeys(col);\n  var values \x3d goog.structs.getValues(col);\n  var l \x3d values.length;\n  for (var i \x3d 0; i \x3c l; i++) {\n    if (f.call(opt_obj, values[i], keys \x26\x26 keys[i], col)) {\n      return true;\n    }\n  }\n  return false;\n};\ngoog.structs.every \x3d function(col, f, opt_obj) {\n  if (typeof col.every \x3d\x3d \x22function\x22) {\n    return col.every(f, opt_obj);\n  }\n  if (goog.isArrayLike(col) || typeof col \x3d\x3d\x3d \x22string\x22) {\n    return goog.array.every(col, f, opt_obj);\n  }\n  var keys \x3d goog.structs.getKeys(col);\n  var values \x3d goog.structs.getValues(col);\n  var l \x3d values.length;\n  for (var i \x3d 0; i \x3c l; i++) {\n    if (!f.call(opt_obj, values[i], keys \x26\x26 keys[i], col)) {\n      return false;\n    }\n  }\n  return true;\n};\n");
SHADOW_ENV.evalLoad("goog.math.math.js", true , "goog.provide(\x22goog.math\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.math.randomInt \x3d function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom \x3d function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp \x3d function(value, min, max) {\n  return Math.min(Math.max(value, min), max);\n};\ngoog.math.modulo \x3d function(a, b) {\n  var r \x3d a % b;\n  return r * b \x3c 0 ? r + b : r;\n};\ngoog.math.lerp \x3d function(a, b, x) {\n  return a + x * (b - a);\n};\ngoog.math.nearlyEquals \x3d function(a, b, opt_tolerance) {\n  return Math.abs(a - b) \x3c\x3d (opt_tolerance || 0.000001);\n};\ngoog.math.standardAngle \x3d function(angle) {\n  return goog.math.modulo(angle, 360);\n};\ngoog.math.standardAngleInRadians \x3d function(angle) {\n  return goog.math.modulo(angle, 2 * Math.PI);\n};\ngoog.math.toRadians \x3d function(angleDegrees) {\n  return angleDegrees * Math.PI / 180;\n};\ngoog.math.toDegrees \x3d function(angleRadians) {\n  return angleRadians * 180 / Math.PI;\n};\ngoog.math.angleDx \x3d function(degrees, radius) {\n  return radius * Math.cos(goog.math.toRadians(degrees));\n};\ngoog.math.angleDy \x3d function(degrees, radius) {\n  return radius * Math.sin(goog.math.toRadians(degrees));\n};\ngoog.math.angle \x3d function(x1, y1, x2, y2) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(y2 - y1, x2 - x1)));\n};\ngoog.math.angleDifference \x3d function(startAngle, endAngle) {\n  var d \x3d goog.math.standardAngle(endAngle) - goog.math.standardAngle(startAngle);\n  if (d \x3e 180) {\n    d \x3d d - 360;\n  } else {\n    if (d \x3c\x3d -180) {\n      d \x3d 360 + d;\n    }\n  }\n  return d;\n};\ngoog.math.sign \x3d function(x) {\n  if (x \x3e 0) {\n    return 1;\n  }\n  if (x \x3c 0) {\n    return -1;\n  }\n  return x;\n};\ngoog.math.longestCommonSubsequence \x3d function(array1, array2, opt_compareFn, opt_collectorFn) {\n  var compare \x3d opt_compareFn || function(a, b) {\n    return a \x3d\x3d b;\n  };\n  var collect \x3d opt_collectorFn || function(i1, i2) {\n    return array1[i1];\n  };\n  var length1 \x3d array1.length;\n  var length2 \x3d array2.length;\n  var arr \x3d [];\n  for (var i \x3d 0; i \x3c length1 + 1; i++) {\n    arr[i] \x3d [];\n    arr[i][0] \x3d 0;\n  }\n  for (var j \x3d 0; j \x3c length2 + 1; j++) {\n    arr[0][j] \x3d 0;\n  }\n  for (i \x3d 1; i \x3c\x3d length1; i++) {\n    for (j \x3d 1; j \x3c\x3d length2; j++) {\n      if (compare(array1[i - 1], array2[j - 1])) {\n        arr[i][j] \x3d arr[i - 1][j - 1] + 1;\n      } else {\n        arr[i][j] \x3d Math.max(arr[i - 1][j], arr[i][j - 1]);\n      }\n    }\n  }\n  var result \x3d [];\n  var i \x3d length1, j \x3d length2;\n  while (i \x3e 0 \x26\x26 j \x3e 0) {\n    if (compare(array1[i - 1], array2[j - 1])) {\n      result.unshift(collect(i - 1, j - 1));\n      i--;\n      j--;\n    } else {\n      if (arr[i - 1][j] \x3e arr[i][j - 1]) {\n        i--;\n      } else {\n        j--;\n      }\n    }\n  }\n  return result;\n};\ngoog.math.sum \x3d function(var_args) {\n  return goog.array.reduce(arguments, function(sum, value) {\n    return sum + value;\n  }, 0);\n};\ngoog.math.average \x3d function(var_args) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance \x3d function(var_args) {\n  var sampleSize \x3d arguments.length;\n  if (sampleSize \x3c 2) {\n    return 0;\n  }\n  var mean \x3d goog.math.average.apply(null, arguments);\n  var variance \x3d goog.math.sum.apply(null, goog.array.map(arguments, function(val) {\n    return Math.pow(val - mean, 2);\n  })) / (sampleSize - 1);\n  return variance;\n};\ngoog.math.standardDeviation \x3d function(var_args) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt \x3d function(num) {\n  return isFinite(num) \x26\x26 num % 1 \x3d\x3d 0;\n};\ngoog.math.isFiniteNumber \x3d function(num) {\n  return isFinite(num);\n};\ngoog.math.isNegativeZero \x3d function(num) {\n  return num \x3d\x3d 0 \x26\x26 1 / num \x3c 0;\n};\ngoog.math.log10Floor \x3d function(num) {\n  if (num \x3e 0) {\n    var x \x3d Math.round(Math.log(num) * Math.LOG10E);\n    return x - (parseFloat(\x221e\x22 + x) \x3e num ? 1 : 0);\n  }\n  return num \x3d\x3d 0 ? -Infinity : NaN;\n};\ngoog.math.safeFloor \x3d function(num, opt_epsilon) {\n  goog.asserts.assert(opt_epsilon \x3d\x3d\x3d undefined || opt_epsilon \x3e 0);\n  return Math.floor(num + (opt_epsilon || 2e-15));\n};\ngoog.math.safeCeil \x3d function(num, opt_epsilon) {\n  goog.asserts.assert(opt_epsilon \x3d\x3d\x3d undefined || opt_epsilon \x3e 0);\n  return Math.ceil(num - (opt_epsilon || 2e-15));\n};\n");
SHADOW_ENV.evalLoad("goog.iter.iter.js", true , "goog.provide(\x22goog.iter\x22);\ngoog.provide(\x22goog.iter.Iterable\x22);\ngoog.provide(\x22goog.iter.Iterator\x22);\ngoog.provide(\x22goog.iter.StopIteration\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.functions\x22);\ngoog.require(\x22goog.math\x22);\ngoog.iter.Iterable;\ngoog.iter.StopIteration \x3d \x22StopIteration\x22 in goog.global ? goog.global[\x22StopIteration\x22] : {message:\x22StopIteration\x22, stack:\x22\x22};\ngoog.iter.Iterator \x3d function() {\n};\ngoog.iter.Iterator.prototype.next \x3d function() {\n  throw goog.iter.StopIteration;\n};\ngoog.iter.Iterator.prototype.__iterator__ \x3d function(opt_keys) {\n  return this;\n};\ngoog.iter.toIterator \x3d function(iterable) {\n  if (iterable instanceof goog.iter.Iterator) {\n    return iterable;\n  }\n  if (typeof iterable.__iterator__ \x3d\x3d \x22function\x22) {\n    return iterable.__iterator__(false);\n  }\n  if (goog.isArrayLike(iterable)) {\n    var like \x3d iterable;\n    var i \x3d 0;\n    var newIter \x3d new goog.iter.Iterator;\n    newIter.next \x3d function() {\n      while (true) {\n        if (i \x3e\x3d like.length) {\n          throw goog.iter.StopIteration;\n        }\n        if (!(i in like)) {\n          i++;\n          continue;\n        }\n        return like[i++];\n      }\n    };\n    return newIter;\n  }\n  throw new Error(\x22Not implemented\x22);\n};\ngoog.iter.forEach \x3d function(iterable, f, opt_obj) {\n  if (goog.isArrayLike(iterable)) {\n    try {\n      goog.array.forEach(iterable, f, opt_obj);\n    } catch (ex) {\n      if (ex !\x3d\x3d goog.iter.StopIteration) {\n        throw ex;\n      }\n    }\n  } else {\n    iterable \x3d goog.iter.toIterator(iterable);\n    try {\n      while (true) {\n        f.call(opt_obj, iterable.next(), undefined, iterable);\n      }\n    } catch (ex$1) {\n      if (ex$1 !\x3d\x3d goog.iter.StopIteration) {\n        throw ex$1;\n      }\n    }\n  }\n};\ngoog.iter.filter \x3d function(iterable, f, opt_obj) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var newIter \x3d new goog.iter.Iterator;\n  newIter.next \x3d function() {\n    while (true) {\n      var val \x3d iterator.next();\n      if (f.call(opt_obj, val, undefined, iterator)) {\n        return val;\n      }\n    }\n  };\n  return newIter;\n};\ngoog.iter.filterFalse \x3d function(iterable, f, opt_obj) {\n  return goog.iter.filter(iterable, goog.functions.not(f), opt_obj);\n};\ngoog.iter.range \x3d function(startOrStop, opt_stop, opt_step) {\n  var start \x3d 0;\n  var stop \x3d startOrStop;\n  var step \x3d opt_step || 1;\n  if (arguments.length \x3e 1) {\n    start \x3d startOrStop;\n    stop \x3d +opt_stop;\n  }\n  if (step \x3d\x3d 0) {\n    throw new Error(\x22Range step argument must not be zero\x22);\n  }\n  var newIter \x3d new goog.iter.Iterator;\n  newIter.next \x3d function() {\n    if (step \x3e 0 \x26\x26 start \x3e\x3d stop || step \x3c 0 \x26\x26 start \x3c\x3d stop) {\n      throw goog.iter.StopIteration;\n    }\n    var rv \x3d start;\n    start +\x3d step;\n    return rv;\n  };\n  return newIter;\n};\ngoog.iter.join \x3d function(iterable, deliminator) {\n  return goog.iter.toArray(iterable).join(deliminator);\n};\ngoog.iter.map \x3d function(iterable, f, opt_obj) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var newIter \x3d new goog.iter.Iterator;\n  newIter.next \x3d function() {\n    var val \x3d iterator.next();\n    return f.call(opt_obj, val, undefined, iterator);\n  };\n  return newIter;\n};\ngoog.iter.reduce \x3d function(iterable, f, val, opt_obj) {\n  var rval \x3d val;\n  goog.iter.forEach(iterable, function(val) {\n    rval \x3d f.call(opt_obj, rval, val);\n  });\n  return rval;\n};\ngoog.iter.some \x3d function(iterable, f, opt_obj) {\n  iterable \x3d goog.iter.toIterator(iterable);\n  try {\n    while (true) {\n      if (f.call(opt_obj, iterable.next(), undefined, iterable)) {\n        return true;\n      }\n    }\n  } catch (ex) {\n    if (ex !\x3d\x3d goog.iter.StopIteration) {\n      throw ex;\n    }\n  }\n  return false;\n};\ngoog.iter.every \x3d function(iterable, f, opt_obj) {\n  iterable \x3d goog.iter.toIterator(iterable);\n  try {\n    while (true) {\n      if (!f.call(opt_obj, iterable.next(), undefined, iterable)) {\n        return false;\n      }\n    }\n  } catch (ex) {\n    if (ex !\x3d\x3d goog.iter.StopIteration) {\n      throw ex;\n    }\n  }\n  return true;\n};\ngoog.iter.chain \x3d function(var_args) {\n  return goog.iter.chainFromIterable(arguments);\n};\ngoog.iter.chainFromIterable \x3d function(iterable) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var iter \x3d new goog.iter.Iterator;\n  var current \x3d null;\n  iter.next \x3d function() {\n    while (true) {\n      if (current \x3d\x3d null) {\n        var it \x3d iterator.next();\n        current \x3d goog.iter.toIterator(it);\n      }\n      try {\n        return current.next();\n      } catch (ex) {\n        if (ex !\x3d\x3d goog.iter.StopIteration) {\n          throw ex;\n        }\n        current \x3d null;\n      }\n    }\n  };\n  return iter;\n};\ngoog.iter.dropWhile \x3d function(iterable, f, opt_obj) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var newIter \x3d new goog.iter.Iterator;\n  var dropping \x3d true;\n  newIter.next \x3d function() {\n    while (true) {\n      var val \x3d iterator.next();\n      if (dropping \x26\x26 f.call(opt_obj, val, undefined, iterator)) {\n        continue;\n      } else {\n        dropping \x3d false;\n      }\n      return val;\n    }\n  };\n  return newIter;\n};\ngoog.iter.takeWhile \x3d function(iterable, f, opt_obj) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var iter \x3d new goog.iter.Iterator;\n  iter.next \x3d function() {\n    var val \x3d iterator.next();\n    if (f.call(opt_obj, val, undefined, iterator)) {\n      return val;\n    }\n    throw goog.iter.StopIteration;\n  };\n  return iter;\n};\ngoog.iter.toArray \x3d function(iterable) {\n  if (goog.isArrayLike(iterable)) {\n    return goog.array.toArray(iterable);\n  }\n  iterable \x3d goog.iter.toIterator(iterable);\n  var array \x3d [];\n  goog.iter.forEach(iterable, function(val) {\n    array.push(val);\n  });\n  return array;\n};\ngoog.iter.equals \x3d function(iterable1, iterable2, opt_equalsFn) {\n  var fillValue \x3d {};\n  var pairs \x3d goog.iter.zipLongest(fillValue, iterable1, iterable2);\n  var equalsFn \x3d opt_equalsFn || goog.array.defaultCompareEquality;\n  return goog.iter.every(pairs, function(pair) {\n    return equalsFn(pair[0], pair[1]);\n  });\n};\ngoog.iter.nextOrValue \x3d function(iterable, defaultValue) {\n  try {\n    return goog.iter.toIterator(iterable).next();\n  } catch (e) {\n    if (e !\x3d goog.iter.StopIteration) {\n      throw e;\n    }\n    return defaultValue;\n  }\n};\ngoog.iter.product \x3d function(var_args) {\n  var someArrayEmpty \x3d goog.array.some(arguments, function(arr) {\n    return !arr.length;\n  });\n  if (someArrayEmpty || !arguments.length) {\n    return new goog.iter.Iterator;\n  }\n  var iter \x3d new goog.iter.Iterator;\n  var arrays \x3d arguments;\n  var indicies \x3d goog.array.repeat(0, arrays.length);\n  iter.next \x3d function() {\n    if (indicies) {\n      var retVal \x3d goog.array.map(indicies, function(valueIndex, arrayIndex) {\n        return arrays[arrayIndex][valueIndex];\n      });\n      for (var i \x3d indicies.length - 1; i \x3e\x3d 0; i--) {\n        goog.asserts.assert(indicies);\n        if (indicies[i] \x3c arrays[i].length - 1) {\n          indicies[i]++;\n          break;\n        }\n        if (i \x3d\x3d 0) {\n          indicies \x3d null;\n          break;\n        }\n        indicies[i] \x3d 0;\n      }\n      return retVal;\n    }\n    throw goog.iter.StopIteration;\n  };\n  return iter;\n};\ngoog.iter.cycle \x3d function(iterable) {\n  var baseIterator \x3d goog.iter.toIterator(iterable);\n  var cache \x3d [];\n  var cacheIndex \x3d 0;\n  var iter \x3d new goog.iter.Iterator;\n  var useCache \x3d false;\n  iter.next \x3d function() {\n    var returnElement \x3d null;\n    if (!useCache) {\n      try {\n        returnElement \x3d baseIterator.next();\n        cache.push(returnElement);\n        return returnElement;\n      } catch (e) {\n        if (e !\x3d goog.iter.StopIteration || goog.array.isEmpty(cache)) {\n          throw e;\n        }\n        useCache \x3d true;\n      }\n    }\n    returnElement \x3d cache[cacheIndex];\n    cacheIndex \x3d (cacheIndex + 1) % cache.length;\n    return returnElement;\n  };\n  return iter;\n};\ngoog.iter.count \x3d function(opt_start, opt_step) {\n  var counter \x3d opt_start || 0;\n  var step \x3d opt_step !\x3d\x3d undefined ? opt_step : 1;\n  var iter \x3d new goog.iter.Iterator;\n  iter.next \x3d function() {\n    var returnValue \x3d counter;\n    counter +\x3d step;\n    return returnValue;\n  };\n  return iter;\n};\ngoog.iter.repeat \x3d function(value) {\n  var iter \x3d new goog.iter.Iterator;\n  iter.next \x3d goog.functions.constant(value);\n  return iter;\n};\ngoog.iter.accumulate \x3d function(iterable) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var total \x3d 0;\n  var iter \x3d new goog.iter.Iterator;\n  iter.next \x3d function() {\n    total +\x3d iterator.next();\n    return total;\n  };\n  return iter;\n};\ngoog.iter.zip \x3d function(var_args) {\n  var args \x3d arguments;\n  var iter \x3d new goog.iter.Iterator;\n  if (args.length \x3e 0) {\n    var iterators \x3d goog.array.map(args, goog.iter.toIterator);\n    iter.next \x3d function() {\n      var arr \x3d goog.array.map(iterators, function(it) {\n        return it.next();\n      });\n      return arr;\n    };\n  }\n  return iter;\n};\ngoog.iter.zipLongest \x3d function(fillValue, var_args) {\n  var args \x3d goog.array.slice(arguments, 1);\n  var iter \x3d new goog.iter.Iterator;\n  if (args.length \x3e 0) {\n    var iterators \x3d goog.array.map(args, goog.iter.toIterator);\n    iter.next \x3d function() {\n      var iteratorsHaveValues \x3d false;\n      var arr \x3d goog.array.map(iterators, function(it) {\n        var returnValue;\n        try {\n          returnValue \x3d it.next();\n          iteratorsHaveValues \x3d true;\n        } catch (ex) {\n          if (ex !\x3d\x3d goog.iter.StopIteration) {\n            throw ex;\n          }\n          returnValue \x3d fillValue;\n        }\n        return returnValue;\n      });\n      if (!iteratorsHaveValues) {\n        throw goog.iter.StopIteration;\n      }\n      return arr;\n    };\n  }\n  return iter;\n};\ngoog.iter.compress \x3d function(iterable, selectors) {\n  var selectorIterator \x3d goog.iter.toIterator(selectors);\n  return goog.iter.filter(iterable, function() {\n    return !!selectorIterator.next();\n  });\n};\ngoog.iter.GroupByIterator_ \x3d function(iterable, opt_keyFunc) {\n  this.iterator \x3d goog.iter.toIterator(iterable);\n  this.keyFunc \x3d opt_keyFunc || goog.functions.identity;\n  this.targetKey;\n  this.currentKey;\n  this.currentValue;\n};\ngoog.inherits(goog.iter.GroupByIterator_, goog.iter.Iterator);\ngoog.iter.GroupByIterator_.prototype.next \x3d function() {\n  while (this.currentKey \x3d\x3d this.targetKey) {\n    this.currentValue \x3d this.iterator.next();\n    this.currentKey \x3d this.keyFunc(this.currentValue);\n  }\n  this.targetKey \x3d this.currentKey;\n  return [this.currentKey, this.groupItems_(this.targetKey)];\n};\ngoog.iter.GroupByIterator_.prototype.groupItems_ \x3d function(targetKey) {\n  var arr \x3d [];\n  while (this.currentKey \x3d\x3d targetKey) {\n    arr.push(this.currentValue);\n    try {\n      this.currentValue \x3d this.iterator.next();\n    } catch (ex) {\n      if (ex !\x3d\x3d goog.iter.StopIteration) {\n        throw ex;\n      }\n      break;\n    }\n    this.currentKey \x3d this.keyFunc(this.currentValue);\n  }\n  return arr;\n};\ngoog.iter.groupBy \x3d function(iterable, opt_keyFunc) {\n  return new goog.iter.GroupByIterator_(iterable, opt_keyFunc);\n};\ngoog.iter.starMap \x3d function(iterable, f, opt_obj) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var iter \x3d new goog.iter.Iterator;\n  iter.next \x3d function() {\n    var args \x3d goog.iter.toArray(iterator.next());\n    return f.apply(opt_obj, goog.array.concat(args, undefined, iterator));\n  };\n  return iter;\n};\ngoog.iter.tee \x3d function(iterable, opt_num) {\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var num \x3d typeof opt_num \x3d\x3d\x3d \x22number\x22 ? opt_num : 2;\n  var buffers \x3d goog.array.map(goog.array.range(num), function() {\n    return [];\n  });\n  var addNextIteratorValueToBuffers \x3d function() {\n    var val \x3d iterator.next();\n    goog.array.forEach(buffers, function(buffer) {\n      buffer.push(val);\n    });\n  };\n  var createIterator \x3d function(buffer) {\n    var iter \x3d new goog.iter.Iterator;\n    iter.next \x3d function() {\n      if (goog.array.isEmpty(buffer)) {\n        addNextIteratorValueToBuffers();\n      }\n      goog.asserts.assert(!goog.array.isEmpty(buffer));\n      return buffer.shift();\n    };\n    return iter;\n  };\n  return goog.array.map(buffers, createIterator);\n};\ngoog.iter.enumerate \x3d function(iterable, opt_start) {\n  return goog.iter.zip(goog.iter.count(opt_start), iterable);\n};\ngoog.iter.limit \x3d function(iterable, limitSize) {\n  goog.asserts.assert(goog.math.isInt(limitSize) \x26\x26 limitSize \x3e\x3d 0);\n  var iterator \x3d goog.iter.toIterator(iterable);\n  var iter \x3d new goog.iter.Iterator;\n  var remaining \x3d limitSize;\n  iter.next \x3d function() {\n    if (remaining-- \x3e 0) {\n      return iterator.next();\n    }\n    throw goog.iter.StopIteration;\n  };\n  return iter;\n};\ngoog.iter.consume \x3d function(iterable, count) {\n  goog.asserts.assert(goog.math.isInt(count) \x26\x26 count \x3e\x3d 0);\n  var iterator \x3d goog.iter.toIterator(iterable);\n  while (count-- \x3e 0) {\n    goog.iter.nextOrValue(iterator, null);\n  }\n  return iterator;\n};\ngoog.iter.slice \x3d function(iterable, start, opt_end) {\n  goog.asserts.assert(goog.math.isInt(start) \x26\x26 start \x3e\x3d 0);\n  var iterator \x3d goog.iter.consume(iterable, start);\n  if (typeof opt_end \x3d\x3d\x3d \x22number\x22) {\n    goog.asserts.assert(goog.math.isInt(opt_end) \x26\x26 opt_end \x3e\x3d start);\n    iterator \x3d goog.iter.limit(iterator, opt_end - start);\n  }\n  return iterator;\n};\ngoog.iter.hasDuplicates_ \x3d function(arr) {\n  var deduped \x3d [];\n  goog.array.removeDuplicates(arr, deduped);\n  return arr.length !\x3d deduped.length;\n};\ngoog.iter.permutations \x3d function(iterable, opt_length) {\n  var elements \x3d goog.iter.toArray(iterable);\n  var length \x3d typeof opt_length \x3d\x3d\x3d \x22number\x22 ? opt_length : elements.length;\n  var sets \x3d goog.array.repeat(elements, length);\n  var product \x3d goog.iter.product.apply(undefined, sets);\n  return goog.iter.filter(product, function(arr) {\n    return !goog.iter.hasDuplicates_(arr);\n  });\n};\ngoog.iter.combinations \x3d function(iterable, length) {\n  var elements \x3d goog.iter.toArray(iterable);\n  var indexes \x3d goog.iter.range(elements.length);\n  var indexIterator \x3d goog.iter.permutations(indexes, length);\n  var sortedIndexIterator \x3d goog.iter.filter(indexIterator, function(arr) {\n    return goog.array.isSorted(arr);\n  });\n  var iter \x3d new goog.iter.Iterator;\n  function getIndexFromElements(index) {\n    return elements[index];\n  }\n  iter.next \x3d function() {\n    return goog.array.map(sortedIndexIterator.next(), getIndexFromElements);\n  };\n  return iter;\n};\ngoog.iter.combinationsWithReplacement \x3d function(iterable, length) {\n  var elements \x3d goog.iter.toArray(iterable);\n  var indexes \x3d goog.array.range(elements.length);\n  var sets \x3d goog.array.repeat(indexes, length);\n  var indexIterator \x3d goog.iter.product.apply(undefined, sets);\n  var sortedIndexIterator \x3d goog.iter.filter(indexIterator, function(arr) {\n    return goog.array.isSorted(arr);\n  });\n  var iter \x3d new goog.iter.Iterator;\n  function getIndexFromElements(index) {\n    return elements[index];\n  }\n  iter.next \x3d function() {\n    return goog.array.map(sortedIndexIterator.next(), getIndexFromElements);\n  };\n  return iter;\n};\n");
SHADOW_ENV.evalLoad("goog.structs.map.js", true , "goog.provide(\x22goog.structs.Map\x22);\ngoog.require(\x22goog.iter.Iterator\x22);\ngoog.require(\x22goog.iter.StopIteration\x22);\ngoog.structs.Map \x3d function(opt_map, var_args) {\n  this.map_ \x3d {};\n  this.keys_ \x3d [];\n  this.count_ \x3d 0;\n  this.version_ \x3d 0;\n  var argLength \x3d arguments.length;\n  if (argLength \x3e 1) {\n    if (argLength % 2) {\n      throw new Error(\x22Uneven number of arguments\x22);\n    }\n    for (var i \x3d 0; i \x3c argLength; i +\x3d 2) {\n      this.set(arguments[i], arguments[i + 1]);\n    }\n  } else {\n    if (opt_map) {\n      this.addAll(opt_map);\n    }\n  }\n};\ngoog.structs.Map.prototype.getCount \x3d function() {\n  return this.count_;\n};\ngoog.structs.Map.prototype.getValues \x3d function() {\n  this.cleanupKeysArray_();\n  var rv \x3d [];\n  for (var i \x3d 0; i \x3c this.keys_.length; i++) {\n    var key \x3d this.keys_[i];\n    rv.push(this.map_[key]);\n  }\n  return rv;\n};\ngoog.structs.Map.prototype.getKeys \x3d function() {\n  this.cleanupKeysArray_();\n  return this.keys_.concat();\n};\ngoog.structs.Map.prototype.containsKey \x3d function(key) {\n  return goog.structs.Map.hasKey_(this.map_, key);\n};\ngoog.structs.Map.prototype.containsValue \x3d function(val) {\n  for (var i \x3d 0; i \x3c this.keys_.length; i++) {\n    var key \x3d this.keys_[i];\n    if (goog.structs.Map.hasKey_(this.map_, key) \x26\x26 this.map_[key] \x3d\x3d val) {\n      return true;\n    }\n  }\n  return false;\n};\ngoog.structs.Map.prototype.equals \x3d function(otherMap, opt_equalityFn) {\n  if (this \x3d\x3d\x3d otherMap) {\n    return true;\n  }\n  if (this.count_ !\x3d otherMap.getCount()) {\n    return false;\n  }\n  var equalityFn \x3d opt_equalityFn || goog.structs.Map.defaultEquals;\n  this.cleanupKeysArray_();\n  for (var key, i \x3d 0; key \x3d this.keys_[i]; i++) {\n    if (!equalityFn(this.get(key), otherMap.get(key))) {\n      return false;\n    }\n  }\n  return true;\n};\ngoog.structs.Map.defaultEquals \x3d function(a, b) {\n  return a \x3d\x3d\x3d b;\n};\ngoog.structs.Map.prototype.isEmpty \x3d function() {\n  return this.count_ \x3d\x3d 0;\n};\ngoog.structs.Map.prototype.clear \x3d function() {\n  this.map_ \x3d {};\n  this.keys_.length \x3d 0;\n  this.count_ \x3d 0;\n  this.version_ \x3d 0;\n};\ngoog.structs.Map.prototype.remove \x3d function(key) {\n  if (goog.structs.Map.hasKey_(this.map_, key)) {\n    delete this.map_[key];\n    this.count_--;\n    this.version_++;\n    if (this.keys_.length \x3e 2 * this.count_) {\n      this.cleanupKeysArray_();\n    }\n    return true;\n  }\n  return false;\n};\ngoog.structs.Map.prototype.cleanupKeysArray_ \x3d function() {\n  if (this.count_ !\x3d this.keys_.length) {\n    var srcIndex \x3d 0;\n    var destIndex \x3d 0;\n    while (srcIndex \x3c this.keys_.length) {\n      var key \x3d this.keys_[srcIndex];\n      if (goog.structs.Map.hasKey_(this.map_, key)) {\n        this.keys_[destIndex++] \x3d key;\n      }\n      srcIndex++;\n    }\n    this.keys_.length \x3d destIndex;\n  }\n  if (this.count_ !\x3d this.keys_.length) {\n    var seen \x3d {};\n    var srcIndex \x3d 0;\n    var destIndex \x3d 0;\n    while (srcIndex \x3c this.keys_.length) {\n      var key \x3d this.keys_[srcIndex];\n      if (!goog.structs.Map.hasKey_(seen, key)) {\n        this.keys_[destIndex++] \x3d key;\n        seen[key] \x3d 1;\n      }\n      srcIndex++;\n    }\n    this.keys_.length \x3d destIndex;\n  }\n};\ngoog.structs.Map.prototype.get \x3d function(key, opt_val) {\n  if (goog.structs.Map.hasKey_(this.map_, key)) {\n    return this.map_[key];\n  }\n  return opt_val;\n};\ngoog.structs.Map.prototype.set \x3d function(key, value) {\n  if (!goog.structs.Map.hasKey_(this.map_, key)) {\n    this.count_++;\n    this.keys_.push(key);\n    this.version_++;\n  }\n  this.map_[key] \x3d value;\n};\ngoog.structs.Map.prototype.addAll \x3d function(map) {\n  if (map instanceof goog.structs.Map) {\n    var keys \x3d map.getKeys();\n    for (var i \x3d 0; i \x3c keys.length; i++) {\n      this.set(keys[i], map.get(keys[i]));\n    }\n  } else {\n    for (var key in map) {\n      this.set(key, map[key]);\n    }\n  }\n};\ngoog.structs.Map.prototype.forEach \x3d function(f, opt_obj) {\n  var keys \x3d this.getKeys();\n  for (var i \x3d 0; i \x3c keys.length; i++) {\n    var key \x3d keys[i];\n    var value \x3d this.get(key);\n    f.call(opt_obj, value, key, this);\n  }\n};\ngoog.structs.Map.prototype.clone \x3d function() {\n  return new goog.structs.Map(this);\n};\ngoog.structs.Map.prototype.transpose \x3d function() {\n  var transposed \x3d new goog.structs.Map;\n  for (var i \x3d 0; i \x3c this.keys_.length; i++) {\n    var key \x3d this.keys_[i];\n    var value \x3d this.map_[key];\n    transposed.set(value, key);\n  }\n  return transposed;\n};\ngoog.structs.Map.prototype.toObject \x3d function() {\n  this.cleanupKeysArray_();\n  var obj \x3d {};\n  for (var i \x3d 0; i \x3c this.keys_.length; i++) {\n    var key \x3d this.keys_[i];\n    obj[key] \x3d this.map_[key];\n  }\n  return obj;\n};\ngoog.structs.Map.prototype.getKeyIterator \x3d function() {\n  return this.__iterator__(true);\n};\ngoog.structs.Map.prototype.getValueIterator \x3d function() {\n  return this.__iterator__(false);\n};\ngoog.structs.Map.prototype.__iterator__ \x3d function(opt_keys) {\n  this.cleanupKeysArray_();\n  var i \x3d 0;\n  var version \x3d this.version_;\n  var selfObj \x3d this;\n  var newIter \x3d new goog.iter.Iterator;\n  newIter.next \x3d function() {\n    if (version !\x3d selfObj.version_) {\n      throw new Error(\x22The map has changed since the iterator was created\x22);\n    }\n    if (i \x3e\x3d selfObj.keys_.length) {\n      throw goog.iter.StopIteration;\n    }\n    var key \x3d selfObj.keys_[i++];\n    return opt_keys ? key : selfObj.map_[key];\n  };\n  return newIter;\n};\ngoog.structs.Map.hasKey_ \x3d function(obj, key) {\n  return Object.prototype.hasOwnProperty.call(obj, key);\n};\n");
SHADOW_ENV.evalLoad("goog.uri.utils.js", true , "goog.provide(\x22goog.uri.utils\x22);\ngoog.provide(\x22goog.uri.utils.ComponentIndex\x22);\ngoog.provide(\x22goog.uri.utils.QueryArray\x22);\ngoog.provide(\x22goog.uri.utils.QueryValue\x22);\ngoog.provide(\x22goog.uri.utils.StandardQueryParam\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.string\x22);\ngoog.uri.utils.CharCode_ \x3d {AMPERSAND:38, EQUAL:61, HASH:35, QUESTION:63};\ngoog.uri.utils.buildFromEncodedParts \x3d function(opt_scheme, opt_userInfo, opt_domain, opt_port, opt_path, opt_queryData, opt_fragment) {\n  var out \x3d \x22\x22;\n  if (opt_scheme) {\n    out +\x3d opt_scheme + \x22:\x22;\n  }\n  if (opt_domain) {\n    out +\x3d \x22//\x22;\n    if (opt_userInfo) {\n      out +\x3d opt_userInfo + \x22@\x22;\n    }\n    out +\x3d opt_domain;\n    if (opt_port) {\n      out +\x3d \x22:\x22 + opt_port;\n    }\n  }\n  if (opt_path) {\n    out +\x3d opt_path;\n  }\n  if (opt_queryData) {\n    out +\x3d \x22?\x22 + opt_queryData;\n  }\n  if (opt_fragment) {\n    out +\x3d \x22#\x22 + opt_fragment;\n  }\n  return out;\n};\ngoog.uri.utils.splitRe_ \x3d new RegExp(\x22^\x22 + \x22(?:\x22 + \x22([^:/?#.]+)\x22 + \x22:)?\x22 + \x22(?://\x22 + \x22(?:([^\\\\\\\\/?#]*)@)?\x22 + \x22([^\\\\\\\\/?#]*?)\x22 + \x22(?::([0-9]+))?\x22 + \x22(?\\x3d[\\\\\\\\/?#]|$)\x22 + \x22)?\x22 + \x22([^?#]+)?\x22 + \x22(?:\\\\?([^#]*))?\x22 + \x22(?:#([\\\\s\\\\S]*))?\x22 + \x22$\x22);\ngoog.uri.utils.ComponentIndex \x3d {SCHEME:1, USER_INFO:2, DOMAIN:3, PORT:4, PATH:5, QUERY_DATA:6, FRAGMENT:7};\ngoog.uri.utils.urlPackageSupportLoggingHandler_ \x3d null;\ngoog.uri.utils.setUrlPackageSupportLoggingHandler \x3d function(handler) {\n  goog.uri.utils.urlPackageSupportLoggingHandler_ \x3d handler;\n};\ngoog.uri.utils.split \x3d function(uri) {\n  var result \x3d uri.match(goog.uri.utils.splitRe_);\n  if (goog.uri.utils.urlPackageSupportLoggingHandler_ \x26\x26 [\x22http\x22, \x22https\x22, \x22ws\x22, \x22wss\x22, \x22ftp\x22].indexOf(result[goog.uri.utils.ComponentIndex.SCHEME]) \x3e\x3d 0) {\n    goog.uri.utils.urlPackageSupportLoggingHandler_(uri);\n  }\n  return result;\n};\ngoog.uri.utils.decodeIfPossible_ \x3d function(uri, opt_preserveReserved) {\n  if (!uri) {\n    return uri;\n  }\n  return opt_preserveReserved ? decodeURI(uri) : decodeURIComponent(uri);\n};\ngoog.uri.utils.getComponentByIndex_ \x3d function(componentIndex, uri) {\n  return goog.uri.utils.split(uri)[componentIndex] || null;\n};\ngoog.uri.utils.getScheme \x3d function(uri) {\n  return goog.uri.utils.getComponentByIndex_(goog.uri.utils.ComponentIndex.SCHEME, uri);\n};\ngoog.uri.utils.getEffectiveScheme \x3d function(uri) {\n  var scheme \x3d goog.uri.utils.getScheme(uri);\n  if (!scheme \x26\x26 goog.global.self \x26\x26 goog.global.self.location) {\n    var protocol \x3d goog.global.self.location.protocol;\n    scheme \x3d protocol.substr(0, protocol.length - 1);\n  }\n  return scheme ? scheme.toLowerCase() : \x22\x22;\n};\ngoog.uri.utils.getUserInfoEncoded \x3d function(uri) {\n  return goog.uri.utils.getComponentByIndex_(goog.uri.utils.ComponentIndex.USER_INFO, uri);\n};\ngoog.uri.utils.getUserInfo \x3d function(uri) {\n  return goog.uri.utils.decodeIfPossible_(goog.uri.utils.getUserInfoEncoded(uri));\n};\ngoog.uri.utils.getDomainEncoded \x3d function(uri) {\n  return goog.uri.utils.getComponentByIndex_(goog.uri.utils.ComponentIndex.DOMAIN, uri);\n};\ngoog.uri.utils.getDomain \x3d function(uri) {\n  return goog.uri.utils.decodeIfPossible_(goog.uri.utils.getDomainEncoded(uri), true);\n};\ngoog.uri.utils.getPort \x3d function(uri) {\n  return Number(goog.uri.utils.getComponentByIndex_(goog.uri.utils.ComponentIndex.PORT, uri)) || null;\n};\ngoog.uri.utils.getPathEncoded \x3d function(uri) {\n  return goog.uri.utils.getComponentByIndex_(goog.uri.utils.ComponentIndex.PATH, uri);\n};\ngoog.uri.utils.getPath \x3d function(uri) {\n  return goog.uri.utils.decodeIfPossible_(goog.uri.utils.getPathEncoded(uri), true);\n};\ngoog.uri.utils.getQueryData \x3d function(uri) {\n  return goog.uri.utils.getComponentByIndex_(goog.uri.utils.ComponentIndex.QUERY_DATA, uri);\n};\ngoog.uri.utils.getFragmentEncoded \x3d function(uri) {\n  var hashIndex \x3d uri.indexOf(\x22#\x22);\n  return hashIndex \x3c 0 ? null : uri.substr(hashIndex + 1);\n};\ngoog.uri.utils.setFragmentEncoded \x3d function(uri, fragment) {\n  return goog.uri.utils.removeFragment(uri) + (fragment ? \x22#\x22 + fragment : \x22\x22);\n};\ngoog.uri.utils.getFragment \x3d function(uri) {\n  return goog.uri.utils.decodeIfPossible_(goog.uri.utils.getFragmentEncoded(uri));\n};\ngoog.uri.utils.getHost \x3d function(uri) {\n  var pieces \x3d goog.uri.utils.split(uri);\n  return goog.uri.utils.buildFromEncodedParts(pieces[goog.uri.utils.ComponentIndex.SCHEME], pieces[goog.uri.utils.ComponentIndex.USER_INFO], pieces[goog.uri.utils.ComponentIndex.DOMAIN], pieces[goog.uri.utils.ComponentIndex.PORT]);\n};\ngoog.uri.utils.getOrigin \x3d function(uri) {\n  var pieces \x3d goog.uri.utils.split(uri);\n  return goog.uri.utils.buildFromEncodedParts(pieces[goog.uri.utils.ComponentIndex.SCHEME], null, pieces[goog.uri.utils.ComponentIndex.DOMAIN], pieces[goog.uri.utils.ComponentIndex.PORT]);\n};\ngoog.uri.utils.getPathAndAfter \x3d function(uri) {\n  var pieces \x3d goog.uri.utils.split(uri);\n  return goog.uri.utils.buildFromEncodedParts(null, null, null, null, pieces[goog.uri.utils.ComponentIndex.PATH], pieces[goog.uri.utils.ComponentIndex.QUERY_DATA], pieces[goog.uri.utils.ComponentIndex.FRAGMENT]);\n};\ngoog.uri.utils.removeFragment \x3d function(uri) {\n  var hashIndex \x3d uri.indexOf(\x22#\x22);\n  return hashIndex \x3c 0 ? uri : uri.substr(0, hashIndex);\n};\ngoog.uri.utils.haveSameDomain \x3d function(uri1, uri2) {\n  var pieces1 \x3d goog.uri.utils.split(uri1);\n  var pieces2 \x3d goog.uri.utils.split(uri2);\n  return pieces1[goog.uri.utils.ComponentIndex.DOMAIN] \x3d\x3d pieces2[goog.uri.utils.ComponentIndex.DOMAIN] \x26\x26 pieces1[goog.uri.utils.ComponentIndex.SCHEME] \x3d\x3d pieces2[goog.uri.utils.ComponentIndex.SCHEME] \x26\x26 pieces1[goog.uri.utils.ComponentIndex.PORT] \x3d\x3d pieces2[goog.uri.utils.ComponentIndex.PORT];\n};\ngoog.uri.utils.assertNoFragmentsOrQueries_ \x3d function(uri) {\n  goog.asserts.assert(uri.indexOf(\x22#\x22) \x3c 0 \x26\x26 uri.indexOf(\x22?\x22) \x3c 0, \x22goog.uri.utils: Fragment or query identifiers are not supported: [%s]\x22, uri);\n};\ngoog.uri.utils.QueryValue;\ngoog.uri.utils.QueryArray;\ngoog.uri.utils.parseQueryData \x3d function(encodedQuery, callback) {\n  if (!encodedQuery) {\n    return;\n  }\n  var pairs \x3d encodedQuery.split(\x22\\x26\x22);\n  for (var i \x3d 0; i \x3c pairs.length; i++) {\n    var indexOfEquals \x3d pairs[i].indexOf(\x22\\x3d\x22);\n    var name \x3d null;\n    var value \x3d null;\n    if (indexOfEquals \x3e\x3d 0) {\n      name \x3d pairs[i].substring(0, indexOfEquals);\n      value \x3d pairs[i].substring(indexOfEquals + 1);\n    } else {\n      name \x3d pairs[i];\n    }\n    callback(name, value ? goog.string.urlDecode(value) : \x22\x22);\n  }\n};\ngoog.uri.utils.splitQueryData_ \x3d function(uri) {\n  var hashIndex \x3d uri.indexOf(\x22#\x22);\n  if (hashIndex \x3c 0) {\n    hashIndex \x3d uri.length;\n  }\n  var questionIndex \x3d uri.indexOf(\x22?\x22);\n  var queryData;\n  if (questionIndex \x3c 0 || questionIndex \x3e hashIndex) {\n    questionIndex \x3d hashIndex;\n    queryData \x3d \x22\x22;\n  } else {\n    queryData \x3d uri.substring(questionIndex + 1, hashIndex);\n  }\n  return [uri.substr(0, questionIndex), queryData, uri.substr(hashIndex)];\n};\ngoog.uri.utils.joinQueryData_ \x3d function(parts) {\n  return parts[0] + (parts[1] ? \x22?\x22 + parts[1] : \x22\x22) + parts[2];\n};\ngoog.uri.utils.appendQueryData_ \x3d function(queryData, newData) {\n  if (!newData) {\n    return queryData;\n  }\n  return queryData ? queryData + \x22\\x26\x22 + newData : newData;\n};\ngoog.uri.utils.appendQueryDataToUri_ \x3d function(uri, queryData) {\n  if (!queryData) {\n    return uri;\n  }\n  var parts \x3d goog.uri.utils.splitQueryData_(uri);\n  parts[1] \x3d goog.uri.utils.appendQueryData_(parts[1], queryData);\n  return goog.uri.utils.joinQueryData_(parts);\n};\ngoog.uri.utils.appendKeyValuePairs_ \x3d function(key, value, pairs) {\n  goog.asserts.assertString(key);\n  if (Array.isArray(value)) {\n    goog.asserts.assertArray(value);\n    for (var j \x3d 0; j \x3c value.length; j++) {\n      goog.uri.utils.appendKeyValuePairs_(key, String(value[j]), pairs);\n    }\n  } else {\n    if (value !\x3d null) {\n      pairs.push(key + (value \x3d\x3d\x3d \x22\x22 ? \x22\x22 : \x22\\x3d\x22 + goog.string.urlEncode(value)));\n    }\n  }\n};\ngoog.uri.utils.buildQueryData \x3d function(keysAndValues, opt_startIndex) {\n  goog.asserts.assert(Math.max(keysAndValues.length - (opt_startIndex || 0), 0) % 2 \x3d\x3d 0, \x22goog.uri.utils: Key/value lists must be even in length.\x22);\n  var params \x3d [];\n  for (var i \x3d opt_startIndex || 0; i \x3c keysAndValues.length; i +\x3d 2) {\n    var key \x3d keysAndValues[i];\n    goog.uri.utils.appendKeyValuePairs_(key, keysAndValues[i + 1], params);\n  }\n  return params.join(\x22\\x26\x22);\n};\ngoog.uri.utils.buildQueryDataFromMap \x3d function(map) {\n  var params \x3d [];\n  for (var key in map) {\n    goog.uri.utils.appendKeyValuePairs_(key, map[key], params);\n  }\n  return params.join(\x22\\x26\x22);\n};\ngoog.uri.utils.appendParams \x3d function(uri, var_args) {\n  var queryData \x3d arguments.length \x3d\x3d 2 ? goog.uri.utils.buildQueryData(arguments[1], 0) : goog.uri.utils.buildQueryData(arguments, 1);\n  return goog.uri.utils.appendQueryDataToUri_(uri, queryData);\n};\ngoog.uri.utils.appendParamsFromMap \x3d function(uri, map) {\n  var queryData \x3d goog.uri.utils.buildQueryDataFromMap(map);\n  return goog.uri.utils.appendQueryDataToUri_(uri, queryData);\n};\ngoog.uri.utils.appendParam \x3d function(uri, key, opt_value) {\n  var value \x3d opt_value !\x3d null ? \x22\\x3d\x22 + goog.string.urlEncode(opt_value) : \x22\x22;\n  return goog.uri.utils.appendQueryDataToUri_(uri, key + value);\n};\ngoog.uri.utils.findParam_ \x3d function(uri, startIndex, keyEncoded, hashOrEndIndex) {\n  var index \x3d startIndex;\n  var keyLength \x3d keyEncoded.length;\n  while ((index \x3d uri.indexOf(keyEncoded, index)) \x3e\x3d 0 \x26\x26 index \x3c hashOrEndIndex) {\n    var precedingChar \x3d uri.charCodeAt(index - 1);\n    if (precedingChar \x3d\x3d goog.uri.utils.CharCode_.AMPERSAND || precedingChar \x3d\x3d goog.uri.utils.CharCode_.QUESTION) {\n      var followingChar \x3d uri.charCodeAt(index + keyLength);\n      if (!followingChar || followingChar \x3d\x3d goog.uri.utils.CharCode_.EQUAL || followingChar \x3d\x3d goog.uri.utils.CharCode_.AMPERSAND || followingChar \x3d\x3d goog.uri.utils.CharCode_.HASH) {\n        return index;\n      }\n    }\n    index +\x3d keyLength + 1;\n  }\n  return -1;\n};\ngoog.uri.utils.hashOrEndRe_ \x3d /#|$/;\ngoog.uri.utils.hasParam \x3d function(uri, keyEncoded) {\n  return goog.uri.utils.findParam_(uri, 0, keyEncoded, uri.search(goog.uri.utils.hashOrEndRe_)) \x3e\x3d 0;\n};\ngoog.uri.utils.getParamValue \x3d function(uri, keyEncoded) {\n  var hashOrEndIndex \x3d uri.search(goog.uri.utils.hashOrEndRe_);\n  var foundIndex \x3d goog.uri.utils.findParam_(uri, 0, keyEncoded, hashOrEndIndex);\n  if (foundIndex \x3c 0) {\n    return null;\n  } else {\n    var endPosition \x3d uri.indexOf(\x22\\x26\x22, foundIndex);\n    if (endPosition \x3c 0 || endPosition \x3e hashOrEndIndex) {\n      endPosition \x3d hashOrEndIndex;\n    }\n    foundIndex +\x3d keyEncoded.length + 1;\n    return goog.string.urlDecode(uri.substr(foundIndex, endPosition - foundIndex));\n  }\n};\ngoog.uri.utils.getParamValues \x3d function(uri, keyEncoded) {\n  var hashOrEndIndex \x3d uri.search(goog.uri.utils.hashOrEndRe_);\n  var position \x3d 0;\n  var foundIndex;\n  var result \x3d [];\n  while ((foundIndex \x3d goog.uri.utils.findParam_(uri, position, keyEncoded, hashOrEndIndex)) \x3e\x3d 0) {\n    position \x3d uri.indexOf(\x22\\x26\x22, foundIndex);\n    if (position \x3c 0 || position \x3e hashOrEndIndex) {\n      position \x3d hashOrEndIndex;\n    }\n    foundIndex +\x3d keyEncoded.length + 1;\n    result.push(goog.string.urlDecode(uri.substr(foundIndex, position - foundIndex)));\n  }\n  return result;\n};\ngoog.uri.utils.trailingQueryPunctuationRe_ \x3d /[?\x26]($|#)/;\ngoog.uri.utils.removeParam \x3d function(uri, keyEncoded) {\n  var hashOrEndIndex \x3d uri.search(goog.uri.utils.hashOrEndRe_);\n  var position \x3d 0;\n  var foundIndex;\n  var buffer \x3d [];\n  while ((foundIndex \x3d goog.uri.utils.findParam_(uri, position, keyEncoded, hashOrEndIndex)) \x3e\x3d 0) {\n    buffer.push(uri.substring(position, foundIndex));\n    position \x3d Math.min(uri.indexOf(\x22\\x26\x22, foundIndex) + 1 || hashOrEndIndex, hashOrEndIndex);\n  }\n  buffer.push(uri.substr(position));\n  return buffer.join(\x22\x22).replace(goog.uri.utils.trailingQueryPunctuationRe_, \x22$1\x22);\n};\ngoog.uri.utils.setParam \x3d function(uri, keyEncoded, value) {\n  return goog.uri.utils.appendParam(goog.uri.utils.removeParam(uri, keyEncoded), keyEncoded, value);\n};\ngoog.uri.utils.setParamsFromMap \x3d function(uri, params) {\n  var parts \x3d goog.uri.utils.splitQueryData_(uri);\n  var queryData \x3d parts[1];\n  var buffer \x3d [];\n  if (queryData) {\n    queryData.split(\x22\\x26\x22).forEach(function(pair) {\n      var indexOfEquals \x3d pair.indexOf(\x22\\x3d\x22);\n      var name \x3d indexOfEquals \x3e\x3d 0 ? pair.substr(0, indexOfEquals) : pair;\n      if (!params.hasOwnProperty(name)) {\n        buffer.push(pair);\n      }\n    });\n  }\n  parts[1] \x3d goog.uri.utils.appendQueryData_(buffer.join(\x22\\x26\x22), goog.uri.utils.buildQueryDataFromMap(params));\n  return goog.uri.utils.joinQueryData_(parts);\n};\ngoog.uri.utils.appendPath \x3d function(baseUri, path) {\n  goog.uri.utils.assertNoFragmentsOrQueries_(baseUri);\n  if (goog.string.endsWith(baseUri, \x22/\x22)) {\n    baseUri \x3d baseUri.substr(0, baseUri.length - 1);\n  }\n  if (goog.string.startsWith(path, \x22/\x22)) {\n    path \x3d path.substr(1);\n  }\n  return \x22\x22 + baseUri + \x22/\x22 + path;\n};\ngoog.uri.utils.setPath \x3d function(uri, path) {\n  if (!goog.string.startsWith(path, \x22/\x22)) {\n    path \x3d \x22/\x22 + path;\n  }\n  var parts \x3d goog.uri.utils.split(uri);\n  return goog.uri.utils.buildFromEncodedParts(parts[goog.uri.utils.ComponentIndex.SCHEME], parts[goog.uri.utils.ComponentIndex.USER_INFO], parts[goog.uri.utils.ComponentIndex.DOMAIN], parts[goog.uri.utils.ComponentIndex.PORT], path, parts[goog.uri.utils.ComponentIndex.QUERY_DATA], parts[goog.uri.utils.ComponentIndex.FRAGMENT]);\n};\ngoog.uri.utils.StandardQueryParam \x3d {RANDOM:\x22zx\x22};\ngoog.uri.utils.makeUnique \x3d function(uri) {\n  return goog.uri.utils.setParam(uri, goog.uri.utils.StandardQueryParam.RANDOM, goog.string.getRandomString());\n};\n");
SHADOW_ENV.evalLoad("goog.uri.uri.js", true , "goog.provide(\x22goog.Uri\x22);\ngoog.provide(\x22goog.Uri.QueryData\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.string\x22);\ngoog.require(\x22goog.structs\x22);\ngoog.require(\x22goog.structs.Map\x22);\ngoog.require(\x22goog.uri.utils\x22);\ngoog.require(\x22goog.uri.utils.ComponentIndex\x22);\ngoog.require(\x22goog.uri.utils.StandardQueryParam\x22);\ngoog.Uri \x3d function(opt_uri, opt_ignoreCase) {\n  this.scheme_ \x3d \x22\x22;\n  this.userInfo_ \x3d \x22\x22;\n  this.domain_ \x3d \x22\x22;\n  this.port_ \x3d null;\n  this.path_ \x3d \x22\x22;\n  this.fragment_ \x3d \x22\x22;\n  this.isReadOnly_ \x3d false;\n  this.ignoreCase_ \x3d false;\n  this.queryData_;\n  var m;\n  if (opt_uri instanceof goog.Uri) {\n    this.ignoreCase_ \x3d opt_ignoreCase !\x3d\x3d undefined ? opt_ignoreCase : opt_uri.getIgnoreCase();\n    this.setScheme(opt_uri.getScheme());\n    this.setUserInfo(opt_uri.getUserInfo());\n    this.setDomain(opt_uri.getDomain());\n    this.setPort(opt_uri.getPort());\n    this.setPath(opt_uri.getPath());\n    this.setQueryData(opt_uri.getQueryData().clone());\n    this.setFragment(opt_uri.getFragment());\n  } else {\n    if (opt_uri \x26\x26 (m \x3d goog.uri.utils.split(String(opt_uri)))) {\n      this.ignoreCase_ \x3d !!opt_ignoreCase;\n      this.setScheme(m[goog.uri.utils.ComponentIndex.SCHEME] || \x22\x22, true);\n      this.setUserInfo(m[goog.uri.utils.ComponentIndex.USER_INFO] || \x22\x22, true);\n      this.setDomain(m[goog.uri.utils.ComponentIndex.DOMAIN] || \x22\x22, true);\n      this.setPort(m[goog.uri.utils.ComponentIndex.PORT]);\n      this.setPath(m[goog.uri.utils.ComponentIndex.PATH] || \x22\x22, true);\n      this.setQueryData(m[goog.uri.utils.ComponentIndex.QUERY_DATA] || \x22\x22, true);\n      this.setFragment(m[goog.uri.utils.ComponentIndex.FRAGMENT] || \x22\x22, true);\n    } else {\n      this.ignoreCase_ \x3d !!opt_ignoreCase;\n      this.queryData_ \x3d new goog.Uri.QueryData(null, this.ignoreCase_);\n    }\n  }\n};\ngoog.Uri.RANDOM_PARAM \x3d goog.uri.utils.StandardQueryParam.RANDOM;\ngoog.Uri.prototype.toString \x3d function() {\n  var out \x3d [];\n  var scheme \x3d this.getScheme();\n  if (scheme) {\n    out.push(goog.Uri.encodeSpecialChars_(scheme, goog.Uri.reDisallowedInSchemeOrUserInfo_, true), \x22:\x22);\n  }\n  var domain \x3d this.getDomain();\n  if (domain || scheme \x3d\x3d \x22file\x22) {\n    out.push(\x22//\x22);\n    var userInfo \x3d this.getUserInfo();\n    if (userInfo) {\n      out.push(goog.Uri.encodeSpecialChars_(userInfo, goog.Uri.reDisallowedInSchemeOrUserInfo_, true), \x22@\x22);\n    }\n    out.push(goog.Uri.removeDoubleEncoding_(goog.string.urlEncode(domain)));\n    var port \x3d this.getPort();\n    if (port !\x3d null) {\n      out.push(\x22:\x22, String(port));\n    }\n  }\n  var path \x3d this.getPath();\n  if (path) {\n    if (this.hasDomain() \x26\x26 path.charAt(0) !\x3d \x22/\x22) {\n      out.push(\x22/\x22);\n    }\n    out.push(goog.Uri.encodeSpecialChars_(path, path.charAt(0) \x3d\x3d \x22/\x22 ? goog.Uri.reDisallowedInAbsolutePath_ : goog.Uri.reDisallowedInRelativePath_, true));\n  }\n  var query \x3d this.getEncodedQuery();\n  if (query) {\n    out.push(\x22?\x22, query);\n  }\n  var fragment \x3d this.getFragment();\n  if (fragment) {\n    out.push(\x22#\x22, goog.Uri.encodeSpecialChars_(fragment, goog.Uri.reDisallowedInFragment_));\n  }\n  return out.join(\x22\x22);\n};\ngoog.Uri.prototype.resolve \x3d function(relativeUri) {\n  var absoluteUri \x3d this.clone();\n  var overridden \x3d relativeUri.hasScheme();\n  if (overridden) {\n    absoluteUri.setScheme(relativeUri.getScheme());\n  } else {\n    overridden \x3d relativeUri.hasUserInfo();\n  }\n  if (overridden) {\n    absoluteUri.setUserInfo(relativeUri.getUserInfo());\n  } else {\n    overridden \x3d relativeUri.hasDomain();\n  }\n  if (overridden) {\n    absoluteUri.setDomain(relativeUri.getDomain());\n  } else {\n    overridden \x3d relativeUri.hasPort();\n  }\n  var path \x3d relativeUri.getPath();\n  if (overridden) {\n    absoluteUri.setPort(relativeUri.getPort());\n  } else {\n    overridden \x3d relativeUri.hasPath();\n    if (overridden) {\n      if (path.charAt(0) !\x3d \x22/\x22) {\n        if (this.hasDomain() \x26\x26 !this.hasPath()) {\n          path \x3d \x22/\x22 + path;\n        } else {\n          var lastSlashIndex \x3d absoluteUri.getPath().lastIndexOf(\x22/\x22);\n          if (lastSlashIndex !\x3d -1) {\n            path \x3d absoluteUri.getPath().substr(0, lastSlashIndex + 1) + path;\n          }\n        }\n      }\n      path \x3d goog.Uri.removeDotSegments(path);\n    }\n  }\n  if (overridden) {\n    absoluteUri.setPath(path);\n  } else {\n    overridden \x3d relativeUri.hasQuery();\n  }\n  if (overridden) {\n    absoluteUri.setQueryData(relativeUri.getQueryData().clone());\n  } else {\n    overridden \x3d relativeUri.hasFragment();\n  }\n  if (overridden) {\n    absoluteUri.setFragment(relativeUri.getFragment());\n  }\n  return absoluteUri;\n};\ngoog.Uri.prototype.clone \x3d function() {\n  return new goog.Uri(this);\n};\ngoog.Uri.prototype.getScheme \x3d function() {\n  return this.scheme_;\n};\ngoog.Uri.prototype.setScheme \x3d function(newScheme, opt_decode) {\n  this.enforceReadOnly();\n  this.scheme_ \x3d opt_decode ? goog.Uri.decodeOrEmpty_(newScheme, true) : newScheme;\n  if (this.scheme_) {\n    this.scheme_ \x3d this.scheme_.replace(/:$/, \x22\x22);\n  }\n  return this;\n};\ngoog.Uri.prototype.hasScheme \x3d function() {\n  return !!this.scheme_;\n};\ngoog.Uri.prototype.getUserInfo \x3d function() {\n  return this.userInfo_;\n};\ngoog.Uri.prototype.setUserInfo \x3d function(newUserInfo, opt_decode) {\n  this.enforceReadOnly();\n  this.userInfo_ \x3d opt_decode ? goog.Uri.decodeOrEmpty_(newUserInfo) : newUserInfo;\n  return this;\n};\ngoog.Uri.prototype.hasUserInfo \x3d function() {\n  return !!this.userInfo_;\n};\ngoog.Uri.prototype.getDomain \x3d function() {\n  return this.domain_;\n};\ngoog.Uri.prototype.setDomain \x3d function(newDomain, opt_decode) {\n  this.enforceReadOnly();\n  this.domain_ \x3d opt_decode ? goog.Uri.decodeOrEmpty_(newDomain, true) : newDomain;\n  return this;\n};\ngoog.Uri.prototype.hasDomain \x3d function() {\n  return !!this.domain_;\n};\ngoog.Uri.prototype.getPort \x3d function() {\n  return this.port_;\n};\ngoog.Uri.prototype.setPort \x3d function(newPort) {\n  this.enforceReadOnly();\n  if (newPort) {\n    newPort \x3d Number(newPort);\n    if (isNaN(newPort) || newPort \x3c 0) {\n      throw new Error(\x22Bad port number \x22 + newPort);\n    }\n    this.port_ \x3d newPort;\n  } else {\n    this.port_ \x3d null;\n  }\n  return this;\n};\ngoog.Uri.prototype.hasPort \x3d function() {\n  return this.port_ !\x3d null;\n};\ngoog.Uri.prototype.getPath \x3d function() {\n  return this.path_;\n};\ngoog.Uri.prototype.setPath \x3d function(newPath, opt_decode) {\n  this.enforceReadOnly();\n  this.path_ \x3d opt_decode ? goog.Uri.decodeOrEmpty_(newPath, true) : newPath;\n  return this;\n};\ngoog.Uri.prototype.hasPath \x3d function() {\n  return !!this.path_;\n};\ngoog.Uri.prototype.hasQuery \x3d function() {\n  return this.queryData_.toString() !\x3d\x3d \x22\x22;\n};\ngoog.Uri.prototype.setQueryData \x3d function(queryData, opt_decode) {\n  this.enforceReadOnly();\n  if (queryData instanceof goog.Uri.QueryData) {\n    this.queryData_ \x3d queryData;\n    this.queryData_.setIgnoreCase(this.ignoreCase_);\n  } else {\n    if (!opt_decode) {\n      queryData \x3d goog.Uri.encodeSpecialChars_(queryData, goog.Uri.reDisallowedInQuery_);\n    }\n    this.queryData_ \x3d new goog.Uri.QueryData(queryData, this.ignoreCase_);\n  }\n  return this;\n};\ngoog.Uri.prototype.setQuery \x3d function(newQuery, opt_decode) {\n  return this.setQueryData(newQuery, opt_decode);\n};\ngoog.Uri.prototype.getEncodedQuery \x3d function() {\n  return this.queryData_.toString();\n};\ngoog.Uri.prototype.getDecodedQuery \x3d function() {\n  return this.queryData_.toDecodedString();\n};\ngoog.Uri.prototype.getQueryData \x3d function() {\n  return this.queryData_;\n};\ngoog.Uri.prototype.getQuery \x3d function() {\n  return this.getEncodedQuery();\n};\ngoog.Uri.prototype.setParameterValue \x3d function(key, value) {\n  this.enforceReadOnly();\n  this.queryData_.set(key, value);\n  return this;\n};\ngoog.Uri.prototype.setParameterValues \x3d function(key, values) {\n  this.enforceReadOnly();\n  if (!Array.isArray(values)) {\n    values \x3d [String(values)];\n  }\n  this.queryData_.setValues(key, values);\n  return this;\n};\ngoog.Uri.prototype.getParameterValues \x3d function(name) {\n  return this.queryData_.getValues(name);\n};\ngoog.Uri.prototype.getParameterValue \x3d function(paramName) {\n  return this.queryData_.get(paramName);\n};\ngoog.Uri.prototype.getFragment \x3d function() {\n  return this.fragment_;\n};\ngoog.Uri.prototype.setFragment \x3d function(newFragment, opt_decode) {\n  this.enforceReadOnly();\n  this.fragment_ \x3d opt_decode ? goog.Uri.decodeOrEmpty_(newFragment) : newFragment;\n  return this;\n};\ngoog.Uri.prototype.hasFragment \x3d function() {\n  return !!this.fragment_;\n};\ngoog.Uri.prototype.hasSameDomainAs \x3d function(uri2) {\n  return (!this.hasDomain() \x26\x26 !uri2.hasDomain() || this.getDomain() \x3d\x3d uri2.getDomain()) \x26\x26 (!this.hasPort() \x26\x26 !uri2.hasPort() || this.getPort() \x3d\x3d uri2.getPort());\n};\ngoog.Uri.prototype.makeUnique \x3d function() {\n  this.enforceReadOnly();\n  this.setParameterValue(goog.Uri.RANDOM_PARAM, goog.string.getRandomString());\n  return this;\n};\ngoog.Uri.prototype.removeParameter \x3d function(key) {\n  this.enforceReadOnly();\n  this.queryData_.remove(key);\n  return this;\n};\ngoog.Uri.prototype.setReadOnly \x3d function(isReadOnly) {\n  this.isReadOnly_ \x3d isReadOnly;\n  return this;\n};\ngoog.Uri.prototype.isReadOnly \x3d function() {\n  return this.isReadOnly_;\n};\ngoog.Uri.prototype.enforceReadOnly \x3d function() {\n  if (this.isReadOnly_) {\n    throw new Error(\x22Tried to modify a read-only Uri\x22);\n  }\n};\ngoog.Uri.prototype.setIgnoreCase \x3d function(ignoreCase) {\n  this.ignoreCase_ \x3d ignoreCase;\n  if (this.queryData_) {\n    this.queryData_.setIgnoreCase(ignoreCase);\n  }\n  return this;\n};\ngoog.Uri.prototype.getIgnoreCase \x3d function() {\n  return this.ignoreCase_;\n};\ngoog.Uri.parse \x3d function(uri, opt_ignoreCase) {\n  return uri instanceof goog.Uri ? uri.clone() : new goog.Uri(uri, opt_ignoreCase);\n};\ngoog.Uri.create \x3d function(opt_scheme, opt_userInfo, opt_domain, opt_port, opt_path, opt_query, opt_fragment, opt_ignoreCase) {\n  var uri \x3d new goog.Uri(null, opt_ignoreCase);\n  opt_scheme \x26\x26 uri.setScheme(opt_scheme);\n  opt_userInfo \x26\x26 uri.setUserInfo(opt_userInfo);\n  opt_domain \x26\x26 uri.setDomain(opt_domain);\n  opt_port \x26\x26 uri.setPort(opt_port);\n  opt_path \x26\x26 uri.setPath(opt_path);\n  opt_query \x26\x26 uri.setQueryData(opt_query);\n  opt_fragment \x26\x26 uri.setFragment(opt_fragment);\n  return uri;\n};\ngoog.Uri.resolve \x3d function(base, rel) {\n  if (!(base instanceof goog.Uri)) {\n    base \x3d goog.Uri.parse(base);\n  }\n  if (!(rel instanceof goog.Uri)) {\n    rel \x3d goog.Uri.parse(rel);\n  }\n  return base.resolve(rel);\n};\ngoog.Uri.removeDotSegments \x3d function(path) {\n  if (path \x3d\x3d \x22..\x22 || path \x3d\x3d \x22.\x22) {\n    return \x22\x22;\n  } else {\n    if (!goog.string.contains(path, \x22./\x22) \x26\x26 !goog.string.contains(path, \x22/.\x22)) {\n      return path;\n    } else {\n      var leadingSlash \x3d goog.string.startsWith(path, \x22/\x22);\n      var segments \x3d path.split(\x22/\x22);\n      var out \x3d [];\n      for (var pos \x3d 0; pos \x3c segments.length;) {\n        var segment \x3d segments[pos++];\n        if (segment \x3d\x3d \x22.\x22) {\n          if (leadingSlash \x26\x26 pos \x3d\x3d segments.length) {\n            out.push(\x22\x22);\n          }\n        } else {\n          if (segment \x3d\x3d \x22..\x22) {\n            if (out.length \x3e 1 || out.length \x3d\x3d 1 \x26\x26 out[0] !\x3d \x22\x22) {\n              out.pop();\n            }\n            if (leadingSlash \x26\x26 pos \x3d\x3d segments.length) {\n              out.push(\x22\x22);\n            }\n          } else {\n            out.push(segment);\n            leadingSlash \x3d true;\n          }\n        }\n      }\n      return out.join(\x22/\x22);\n    }\n  }\n};\ngoog.Uri.decodeOrEmpty_ \x3d function(val, opt_preserveReserved) {\n  if (!val) {\n    return \x22\x22;\n  }\n  return opt_preserveReserved ? decodeURI(val.replace(/%25/g, \x22%2525\x22)) : decodeURIComponent(val);\n};\ngoog.Uri.encodeSpecialChars_ \x3d function(unescapedPart, extra, opt_removeDoubleEncoding) {\n  if (typeof unescapedPart \x3d\x3d\x3d \x22string\x22) {\n    var encoded \x3d encodeURI(unescapedPart).replace(extra, goog.Uri.encodeChar_);\n    if (opt_removeDoubleEncoding) {\n      encoded \x3d goog.Uri.removeDoubleEncoding_(encoded);\n    }\n    return encoded;\n  }\n  return null;\n};\ngoog.Uri.encodeChar_ \x3d function(ch) {\n  var n \x3d ch.charCodeAt(0);\n  return \x22%\x22 + (n \x3e\x3e 4 \x26 15).toString(16) + (n \x26 15).toString(16);\n};\ngoog.Uri.removeDoubleEncoding_ \x3d function(doubleEncodedString) {\n  return doubleEncodedString.replace(/%25([0-9a-fA-F]{2})/g, \x22%$1\x22);\n};\ngoog.Uri.reDisallowedInSchemeOrUserInfo_ \x3d /[#\\/\\?@]/g;\ngoog.Uri.reDisallowedInRelativePath_ \x3d /[#\\?:]/g;\ngoog.Uri.reDisallowedInAbsolutePath_ \x3d /[#\\?]/g;\ngoog.Uri.reDisallowedInQuery_ \x3d /[#\\?@]/g;\ngoog.Uri.reDisallowedInFragment_ \x3d /#/g;\ngoog.Uri.haveSameDomain \x3d function(uri1String, uri2String) {\n  var pieces1 \x3d goog.uri.utils.split(uri1String);\n  var pieces2 \x3d goog.uri.utils.split(uri2String);\n  return pieces1[goog.uri.utils.ComponentIndex.DOMAIN] \x3d\x3d pieces2[goog.uri.utils.ComponentIndex.DOMAIN] \x26\x26 pieces1[goog.uri.utils.ComponentIndex.PORT] \x3d\x3d pieces2[goog.uri.utils.ComponentIndex.PORT];\n};\ngoog.Uri.QueryData \x3d function(opt_query, opt_ignoreCase) {\n  this.keyMap_ \x3d null;\n  this.count_ \x3d null;\n  this.encodedQuery_ \x3d opt_query || null;\n  this.ignoreCase_ \x3d !!opt_ignoreCase;\n};\ngoog.Uri.QueryData.prototype.ensureKeyMapInitialized_ \x3d function() {\n  if (!this.keyMap_) {\n    this.keyMap_ \x3d new goog.structs.Map;\n    this.count_ \x3d 0;\n    if (this.encodedQuery_) {\n      var self \x3d this;\n      goog.uri.utils.parseQueryData(this.encodedQuery_, function(name, value) {\n        self.add(goog.string.urlDecode(name), value);\n      });\n    }\n  }\n};\ngoog.Uri.QueryData.createFromMap \x3d function(map, opt_ignoreCase) {\n  var keys \x3d goog.structs.getKeys(map);\n  if (typeof keys \x3d\x3d \x22undefined\x22) {\n    throw new Error(\x22Keys are undefined\x22);\n  }\n  var queryData \x3d new goog.Uri.QueryData(null, opt_ignoreCase);\n  var values \x3d goog.structs.getValues(map);\n  for (var i \x3d 0; i \x3c keys.length; i++) {\n    var key \x3d keys[i];\n    var value \x3d values[i];\n    if (!Array.isArray(value)) {\n      queryData.add(key, value);\n    } else {\n      queryData.setValues(key, value);\n    }\n  }\n  return queryData;\n};\ngoog.Uri.QueryData.createFromKeysValues \x3d function(keys, values, opt_ignoreCase) {\n  if (keys.length !\x3d values.length) {\n    throw new Error(\x22Mismatched lengths for keys/values\x22);\n  }\n  var queryData \x3d new goog.Uri.QueryData(null, opt_ignoreCase);\n  for (var i \x3d 0; i \x3c keys.length; i++) {\n    queryData.add(keys[i], values[i]);\n  }\n  return queryData;\n};\ngoog.Uri.QueryData.prototype.getCount \x3d function() {\n  this.ensureKeyMapInitialized_();\n  return this.count_;\n};\ngoog.Uri.QueryData.prototype.add \x3d function(key, value) {\n  this.ensureKeyMapInitialized_();\n  this.invalidateCache_();\n  key \x3d this.getKeyName_(key);\n  var values \x3d this.keyMap_.get(key);\n  if (!values) {\n    this.keyMap_.set(key, values \x3d []);\n  }\n  values.push(value);\n  this.count_ \x3d goog.asserts.assertNumber(this.count_) + 1;\n  return this;\n};\ngoog.Uri.QueryData.prototype.remove \x3d function(key) {\n  this.ensureKeyMapInitialized_();\n  key \x3d this.getKeyName_(key);\n  if (this.keyMap_.containsKey(key)) {\n    this.invalidateCache_();\n    this.count_ \x3d goog.asserts.assertNumber(this.count_) - this.keyMap_.get(key).length;\n    return this.keyMap_.remove(key);\n  }\n  return false;\n};\ngoog.Uri.QueryData.prototype.clear \x3d function() {\n  this.invalidateCache_();\n  this.keyMap_ \x3d null;\n  this.count_ \x3d 0;\n};\ngoog.Uri.QueryData.prototype.isEmpty \x3d function() {\n  this.ensureKeyMapInitialized_();\n  return this.count_ \x3d\x3d 0;\n};\ngoog.Uri.QueryData.prototype.containsKey \x3d function(key) {\n  this.ensureKeyMapInitialized_();\n  key \x3d this.getKeyName_(key);\n  return this.keyMap_.containsKey(key);\n};\ngoog.Uri.QueryData.prototype.containsValue \x3d function(value) {\n  var vals \x3d this.getValues();\n  return goog.array.contains(vals, value);\n};\ngoog.Uri.QueryData.prototype.forEach \x3d function(f, opt_scope) {\n  this.ensureKeyMapInitialized_();\n  this.keyMap_.forEach(function(values, key) {\n    goog.array.forEach(values, function(value) {\n      f.call(opt_scope, value, key, this);\n    }, this);\n  }, this);\n};\ngoog.Uri.QueryData.prototype.getKeys \x3d function() {\n  this.ensureKeyMapInitialized_();\n  var vals \x3d this.keyMap_.getValues();\n  var keys \x3d this.keyMap_.getKeys();\n  var rv \x3d [];\n  for (var i \x3d 0; i \x3c keys.length; i++) {\n    var val \x3d vals[i];\n    for (var j \x3d 0; j \x3c val.length; j++) {\n      rv.push(keys[i]);\n    }\n  }\n  return rv;\n};\ngoog.Uri.QueryData.prototype.getValues \x3d function(opt_key) {\n  this.ensureKeyMapInitialized_();\n  var rv \x3d [];\n  if (typeof opt_key \x3d\x3d\x3d \x22string\x22) {\n    if (this.containsKey(opt_key)) {\n      rv \x3d goog.array.concat(rv, this.keyMap_.get(this.getKeyName_(opt_key)));\n    }\n  } else {\n    var values \x3d this.keyMap_.getValues();\n    for (var i \x3d 0; i \x3c values.length; i++) {\n      rv \x3d goog.array.concat(rv, values[i]);\n    }\n  }\n  return rv;\n};\ngoog.Uri.QueryData.prototype.set \x3d function(key, value) {\n  this.ensureKeyMapInitialized_();\n  this.invalidateCache_();\n  key \x3d this.getKeyName_(key);\n  if (this.containsKey(key)) {\n    this.count_ \x3d goog.asserts.assertNumber(this.count_) - this.keyMap_.get(key).length;\n  }\n  this.keyMap_.set(key, [value]);\n  this.count_ \x3d goog.asserts.assertNumber(this.count_) + 1;\n  return this;\n};\ngoog.Uri.QueryData.prototype.get \x3d function(key, opt_default) {\n  if (!key) {\n    return opt_default;\n  }\n  var values \x3d this.getValues(key);\n  return values.length \x3e 0 ? String(values[0]) : opt_default;\n};\ngoog.Uri.QueryData.prototype.setValues \x3d function(key, values) {\n  this.remove(key);\n  if (values.length \x3e 0) {\n    this.invalidateCache_();\n    this.keyMap_.set(this.getKeyName_(key), goog.array.clone(values));\n    this.count_ \x3d goog.asserts.assertNumber(this.count_) + values.length;\n  }\n};\ngoog.Uri.QueryData.prototype.toString \x3d function() {\n  if (this.encodedQuery_) {\n    return this.encodedQuery_;\n  }\n  if (!this.keyMap_) {\n    return \x22\x22;\n  }\n  var sb \x3d [];\n  var keys \x3d this.keyMap_.getKeys();\n  for (var i \x3d 0; i \x3c keys.length; i++) {\n    var key \x3d keys[i];\n    var encodedKey \x3d goog.string.urlEncode(key);\n    var val \x3d this.getValues(key);\n    for (var j \x3d 0; j \x3c val.length; j++) {\n      var param \x3d encodedKey;\n      if (val[j] !\x3d\x3d \x22\x22) {\n        param +\x3d \x22\\x3d\x22 + goog.string.urlEncode(val[j]);\n      }\n      sb.push(param);\n    }\n  }\n  return this.encodedQuery_ \x3d sb.join(\x22\\x26\x22);\n};\ngoog.Uri.QueryData.prototype.toDecodedString \x3d function() {\n  return goog.Uri.decodeOrEmpty_(this.toString());\n};\ngoog.Uri.QueryData.prototype.invalidateCache_ \x3d function() {\n  this.encodedQuery_ \x3d null;\n};\ngoog.Uri.QueryData.prototype.filterKeys \x3d function(keys) {\n  this.ensureKeyMapInitialized_();\n  this.keyMap_.forEach(function(value, key) {\n    if (!goog.array.contains(keys, key)) {\n      this.remove(key);\n    }\n  }, this);\n  return this;\n};\ngoog.Uri.QueryData.prototype.clone \x3d function() {\n  var rv \x3d new goog.Uri.QueryData;\n  rv.encodedQuery_ \x3d this.encodedQuery_;\n  if (this.keyMap_) {\n    rv.keyMap_ \x3d this.keyMap_.clone();\n    rv.count_ \x3d this.count_;\n  }\n  return rv;\n};\ngoog.Uri.QueryData.prototype.getKeyName_ \x3d function(arg) {\n  var keyName \x3d String(arg);\n  if (this.ignoreCase_) {\n    keyName \x3d keyName.toLowerCase();\n  }\n  return keyName;\n};\ngoog.Uri.QueryData.prototype.setIgnoreCase \x3d function(ignoreCase) {\n  var resetKeys \x3d ignoreCase \x26\x26 !this.ignoreCase_;\n  if (resetKeys) {\n    this.ensureKeyMapInitialized_();\n    this.invalidateCache_();\n    this.keyMap_.forEach(function(value, key) {\n      var lowerCase \x3d key.toLowerCase();\n      if (key !\x3d lowerCase) {\n        this.remove(key);\n        this.setValues(lowerCase, value);\n      }\n    }, this);\n  }\n  this.ignoreCase_ \x3d ignoreCase;\n};\ngoog.Uri.QueryData.prototype.extend \x3d function(var_args) {\n  for (var i \x3d 0; i \x3c arguments.length; i++) {\n    var data \x3d arguments[i];\n    goog.structs.forEach(data, function(value, key) {\n      this.add(key, value);\n    }, this);\n  }\n};\n");
SHADOW_ENV.evalLoad("goog.string.stringbuffer.js", true , "goog.provide(\x22goog.string.StringBuffer\x22);\ngoog.string.StringBuffer \x3d function(opt_a1, var_args) {\n  if (opt_a1 !\x3d null) {\n    this.append.apply(this, arguments);\n  }\n};\ngoog.string.StringBuffer.prototype.buffer_ \x3d \x22\x22;\ngoog.string.StringBuffer.prototype.set \x3d function(s) {\n  this.buffer_ \x3d \x22\x22 + s;\n};\ngoog.string.StringBuffer.prototype.append \x3d function(a1, opt_a2, var_args) {\n  this.buffer_ +\x3d String(a1);\n  if (opt_a2 !\x3d null) {\n    for (var i \x3d 1; i \x3c arguments.length; i++) {\n      this.buffer_ +\x3d arguments[i];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear \x3d function() {\n  this.buffer_ \x3d \x22\x22;\n};\ngoog.string.StringBuffer.prototype.getLength \x3d function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString \x3d function() {\n  return this.buffer_;\n};\n");
SHADOW_ENV.evalLoad("cljs.core.js", true , "goog.provide(\x27cljs.core\x27);\ncljs.core._STAR_clojurescript_version_STAR_ \x3d \x221.10.844\x22;\ncljs.core._STAR_unchecked_if_STAR_ \x3d false;\ncljs.core._STAR_unchecked_arrays_STAR_ \x3d false;\ncljs.core._STAR_warn_on_infer_STAR_ \x3d false;\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.PROTOCOL_SENTINEL !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.core.PROTOCOL_SENTINEL \x3d ({});\n}\ncljs.core.MODULE_URIS \x3d null;\ncljs.core.MODULE_INFOS \x3d null;\n/**\n * Var bound to the name value of the compiler build :target option.\n *   For example, if the compiler build :target is :nodejs, *target* will be bound\n *   to \x22nodejs\x22. *target* is a Google Closure define and can be set by compiler\n *   :closure-defines option.\n * @define {string}\n */\ncljs.core._STAR_target_STAR_ \x3d goog.define(\x22cljs.core._STAR_target_STAR_\x22,\x22default\x22);\n/**\n * Manually set the JavaScript global context. Only \x22window\x22, \x22self\x22\n *   , and \x22global\x22 supported. \n * @define {string}\n */\ncljs.core._STAR_global_STAR_ \x3d goog.define(\x22cljs.core._STAR_global_STAR_\x22,\x22default\x22);\n/**\n * Var bound to the current namespace. Only used for bootstrapping.\n * @type {*}\n */\ncljs.core._STAR_ns_STAR_ \x3d null;\n/**\n * @type {*}\n */\ncljs.core._STAR_out_STAR_ \x3d null;\ncljs.core._STAR_assert_STAR_ \x3d true;\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core._STAR_print_fn_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * Each runtime environment provides a different way to print output.\n *   Whatever function *print-fn* is bound to will be passed any\n *   Strings which should be printed.\n */\ncljs.core._STAR_print_fn_STAR_ \x3d null;\n}\n/**\n * Arranges to have tap functions executed via the supplied f, a\n *   function of no arguments. Returns true if successful, false otherwise.\n */\ncljs.core._STAR_exec_tap_fn_STAR_ \x3d (function cljs$core$_STAR_exec_tap_fn_STAR_(f){\nif((typeof setTimeout !\x3d\x3d \x27undefined\x27)){\nvar G__38248 \x3d setTimeout(f,(0));\nreturn (cljs.core.boolean$.cljs$core$IFn$_invoke$arity$1 ? cljs.core.boolean$.cljs$core$IFn$_invoke$arity$1(G__38248) : cljs.core.boolean$.call(null,G__38248));\n} else {\nreturn false;\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core._STAR_print_err_fn_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * Each runtime environment provides a different way to print error output.\n *   Whatever function *print-err-fn* is bound to will be passed any\n *   Strings which should be printed.\n */\ncljs.core._STAR_print_err_fn_STAR_ \x3d null;\n}\n/**\n * Set *print-fn* to f.\n */\ncljs.core.set_print_fn_BANG_ \x3d (function cljs$core$set_print_fn_BANG_(f){\nreturn (cljs.core._STAR_print_fn_STAR_ \x3d f);\n});\n/**\n * Set *print-err-fn* to f.\n */\ncljs.core.set_print_err_fn_BANG_ \x3d (function cljs$core$set_print_err_fn_BANG_(f){\nreturn (cljs.core._STAR_print_err_fn_STAR_ \x3d f);\n});\n/**\n * When set to true, output will be flushed whenever a newline is printed.\n * \n *   Defaults to true.\n */\ncljs.core._STAR_flush_on_newline_STAR_ \x3d true;\n/**\n * When set to logical false will drop newlines from printing calls.\n *   This is to work around the implicit newlines emitted by standard JavaScript\n *   console objects.\n */\ncljs.core._STAR_print_newline_STAR_ \x3d true;\n/**\n * When set to logical false, strings and characters will be printed with\n *   non-alphanumeric characters converted to the appropriate escape sequences.\n * \n *   Defaults to true\n */\ncljs.core._STAR_print_readably_STAR_ \x3d true;\n/**\n * If set to logical true, when printing an object, its metadata will also\n *   be printed in a form that can be read back by the reader.\n * \n *   Defaults to false.\n */\ncljs.core._STAR_print_meta_STAR_ \x3d false;\n/**\n * When set to logical true, objects will be printed in a way that preserves\n *   their type when read in later.\n * \n *   Defaults to false.\n */\ncljs.core._STAR_print_dup_STAR_ \x3d false;\n/**\n * *print-namespace-maps* controls whether the printer will print\n *   namespace map literal syntax.\n * \n *   Defaults to false, but the REPL binds it to true.\n */\ncljs.core._STAR_print_namespace_maps_STAR_ \x3d false;\n/**\n * *print-length* controls how many items of each collection the\n *   printer will print. If it is bound to logical false, there is no\n *   limit. Otherwise, it must be bound to an integer indicating the maximum\n *   number of items of each collection to print. If a collection contains\n *   more items, the printer will print items up to the limit followed by\n *   \x27...\x27 to represent the remaining items. The root binding is nil\n *   indicating no limit.\n * @type {null|number}\n */\ncljs.core._STAR_print_length_STAR_ \x3d null;\n/**\n * *print-level* controls how many levels deep the printer will\n *   print nested objects. If it is bound to logical false, there is no\n *   limit. Otherwise, it must be bound to an integer indicating the maximum\n *   level to print. Each argument to print is at level 0; if an argument is a\n *   collection, its items are at level 1; and so on. If an object is a\n *   collection and is at a level greater than or equal to the value bound to\n *   *print-level*, the printer prints \x27#\x27 to represent it. The root binding\n *   is nil indicating no limit.\n * @type {null|number}\n */\ncljs.core._STAR_print_level_STAR_ \x3d null;\n/**\n * *print-fns-bodies* controls whether functions print their source or\n *  only their names.\n */\ncljs.core._STAR_print_fn_bodies_STAR_ \x3d false;\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core._STAR_loaded_libs_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * @type {*}\n */\ncljs.core._STAR_loaded_libs_STAR_ \x3d null;\n}\ncljs.core.pr_opts \x3d (function cljs$core$pr_opts(){\nreturn new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22flush-on-newline\x22,\x22flush-on-newline\x22,-151457939),cljs.core._STAR_flush_on_newline_STAR_,new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760),cljs.core._STAR_print_readably_STAR_,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964),cljs.core._STAR_print_meta_STAR_,new cljs.core.Keyword(null,\x22dup\x22,\x22dup\x22,556298533),cljs.core._STAR_print_dup_STAR_,new cljs.core.Keyword(null,\x22print-length\x22,\x22print-length\x22,1931866356),cljs.core._STAR_print_length_STAR_], null);\n});\n/**\n * Set *print-fn* to console.log\n */\ncljs.core.enable_console_print_BANG_ \x3d (function cljs$core$enable_console_print_BANG_(){\n(cljs.core._STAR_print_newline_STAR_ \x3d false);\n\ncljs.core.set_print_fn_BANG_((function (){\nvar xs \x3d arguments;\nreturn console.log.apply(console,goog.array.clone(xs));\n}));\n\ncljs.core.set_print_err_fn_BANG_((function (){\nvar xs \x3d arguments;\nreturn console.error.apply(console,goog.array.clone(xs));\n}));\n\nreturn null;\n});\n/**\n * Internal - do not use!\n */\ncljs.core.truth_ \x3d (function cljs$core$truth_(x){\nreturn (x !\x3d null \x26\x26 x !\x3d\x3d false);\n});\ncljs.core.not_native \x3d null;\n\n/**\n * Tests if 2 arguments are the same object\n */\ncljs.core.identical_QMARK_ \x3d (function cljs$core$identical_QMARK_(x,y){\nreturn (x \x3d\x3d\x3d y);\n});\n/**\n * Returns true if x is nil, false otherwise.\n */\ncljs.core.nil_QMARK_ \x3d (function cljs$core$nil_QMARK_(x){\nreturn (x \x3d\x3d null);\n});\n/**\n * Returns true if x is a JavaScript array.\n */\ncljs.core.array_QMARK_ \x3d (function cljs$core$array_QMARK_(x){\nif((cljs.core._STAR_target_STAR_ \x3d\x3d\x3d \x22nodejs\x22)){\nreturn Array.isArray(x);\n} else {\nreturn (x instanceof Array);\n}\n});\n/**\n * Returns true if x is a JavaScript number.\n */\ncljs.core.number_QMARK_ \x3d (function cljs$core$number_QMARK_(x){\nreturn typeof x \x3d\x3d\x3d \x27number\x27;\n});\n/**\n * Returns true if x is logical false, false otherwise.\n */\ncljs.core.not \x3d (function cljs$core$not(x){\nif((x \x3d\x3d null)){\nreturn true;\n} else {\nif(x \x3d\x3d\x3d false){\nreturn true;\n} else {\nreturn false;\n\n}\n}\n});\n/**\n * Returns true if x is not nil, false otherwise.\n */\ncljs.core.some_QMARK_ \x3d (function cljs$core$some_QMARK_(x){\nreturn (!((x \x3d\x3d null)));\n});\n/**\n * Returns true if x\x27s constructor is Object\n */\ncljs.core.object_QMARK_ \x3d (function cljs$core$object_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nreturn (x.constructor \x3d\x3d\x3d Object);\n} else {\nreturn false;\n}\n});\n/**\n * Returns true if x is a JavaScript string.\n */\ncljs.core.string_QMARK_ \x3d (function cljs$core$string_QMARK_(x){\nreturn (\x22string\x22 \x3d\x3d\x3d goog.typeOf(x));\n});\n/**\n * Returns true if x is a JavaScript string of length one.\n */\ncljs.core.char_QMARK_ \x3d (function cljs$core$char_QMARK_(x){\nreturn ((typeof x \x3d\x3d\x3d \x27string\x27) \x26\x26 (((1) \x3d\x3d\x3d x.length)));\n});\n/**\n * Returns true if given any argument.\n */\ncljs.core.any_QMARK_ \x3d (function cljs$core$any_QMARK_(x){\nreturn true;\n});\n/**\n * Internal - do not use!\n */\ncljs.core.native_satisfies_QMARK_ \x3d (function cljs$core$native_satisfies_QMARK_(p,x){\nvar x__$1 \x3d (((x \x3d\x3d null))?null:x);\nif((p[goog.typeOf(x__$1)])){\nreturn true;\n} else {\nif((p[\x22_\x22])){\nreturn true;\n} else {\nreturn false;\n\n}\n}\n});\ncljs.core.is_proto_ \x3d (function cljs$core$is_proto_(x){\nreturn (x.constructor.prototype \x3d\x3d\x3d x);\n});\n/**\n * When compiled for a command-line target, whatever function\n *   *main-cli-fn* is set to will be called with the command-line\n *   argv as arguments\n */\ncljs.core._STAR_main_cli_fn_STAR_ \x3d null;\n/**\n * A sequence of the supplied command line arguments, or nil if\n *   none were supplied\n */\ncljs.core._STAR_command_line_args_STAR_ \x3d null;\n/**\n * Return x\x27s constructor.\n */\ncljs.core.type \x3d (function cljs$core$type(x){\nif((x \x3d\x3d null)){\nreturn null;\n} else {\nreturn x.constructor;\n}\n});\ncljs.core.missing_protocol \x3d (function cljs$core$missing_protocol(proto,obj){\nvar ty \x3d cljs.core.type(obj);\nvar ty__$1 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d ty;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ty.cljs$lang$type;\n} else {\nreturn and__4149__auto__;\n}\n})())?ty.cljs$lang$ctorStr:goog.typeOf(obj));\nreturn (new Error([\x22No protocol method \x22,proto,\x22 defined for type \x22,ty__$1,\x22: \x22,obj].join(\x22\x22)));\n});\ncljs.core.type__GT_str \x3d (function cljs$core$type__GT_str(ty){\nvar temp__5751__auto__ \x3d ty.cljs$lang$ctorStr;\nif(cljs.core.truth_(temp__5751__auto__)){\nvar s \x3d temp__5751__auto__;\nreturn s;\n} else {\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(ty);\n}\n});\ncljs.core.load_file \x3d (function cljs$core$load_file(file){\nif(cljs.core.truth_(COMPILED)){\nreturn null;\n} else {\nreturn goog.nodeGlobalRequire(file);\n}\n});\nif((((typeof Symbol !\x3d\x3d \x27undefined\x27)) \x26\x26 ((goog.typeOf(Symbol) \x3d\x3d\x3d \x22function\x22)))){\ncljs.core.ITER_SYMBOL \x3d Symbol.iterator;\n} else {\ncljs.core.ITER_SYMBOL \x3d \x22@@iterator\x22;\n}\n/**\n * @enum {string}\n */\ncljs.core.CHAR_MAP \x3d ({\x22]\x22: \x22_RBRACK_\x22, \x22\x27\x22: \x22_SINGLEQUOTE_\x22, \x22\x3d\x22: \x22_EQ_\x22, \x22\\\x22\x22: \x22_DOUBLEQUOTE_\x22, \x22!\x22: \x22_BANG_\x22, \x22*\x22: \x22_STAR_\x22, \x22%\x22: \x22_PERCENT_\x22, \x22|\x22: \x22_BAR_\x22, \x22~\x22: \x22_TILDE_\x22, \x22/\x22: \x22_SLASH_\x22, \x22\\\\\x22: \x22_BSLASH_\x22, \x22-\x22: \x22_\x22, \x22?\x22: \x22_QMARK_\x22, \x22\x26\x22: \x22_AMPERSAND_\x22, \x22:\x22: \x22_COLON_\x22, \x22\x3c\x22: \x22_LT_\x22, \x22{\x22: \x22_LBRACE_\x22, \x22}\x22: \x22_RBRACE_\x22, \x22[\x22: \x22_LBRACK_\x22, \x22#\x22: \x22_SHARP_\x22, \x22^\x22: \x22_CARET_\x22, \x22+\x22: \x22_PLUS_\x22, \x22@\x22: \x22_CIRCA_\x22, \x22\x3e\x22: \x22_GT_\x22});\n/**\n * @enum {string}\n */\ncljs.core.DEMUNGE_MAP \x3d ({\x22_RBRACE_\x22: \x22}\x22, \x22_COLON_\x22: \x22:\x22, \x22_BANG_\x22: \x22!\x22, \x22_QMARK_\x22: \x22?\x22, \x22_BSLASH_\x22: \x22\\\\\\\\\x22, \x22_SLASH_\x22: \x22/\x22, \x22_PERCENT_\x22: \x22%\x22, \x22_PLUS_\x22: \x22+\x22, \x22_SHARP_\x22: \x22#\x22, \x22_LBRACE_\x22: \x22{\x22, \x22_BAR_\x22: \x22|\x22, \x22_LBRACK_\x22: \x22[\x22, \x22_EQ_\x22: \x22\x3d\x22, \x22_\x22: \x22-\x22, \x22_TILDE_\x22: \x22~\x22, \x22_RBRACK_\x22: \x22]\x22, \x22_GT_\x22: \x22\x3e\x22, \x22_SINGLEQUOTE_\x22: \x22\x27\x22, \x22_CIRCA_\x22: \x22@\x22, \x22_AMPERSAND_\x22: \x22\x26\x22, \x22_DOUBLEQUOTE_\x22: \x22\\\\\\\x22\x22, \x22_CARET_\x22: \x22^\x22, \x22_LT_\x22: \x22\x3c\x22, \x22_STAR_\x22: \x22*\x22});\ncljs.core.DEMUNGE_PATTERN \x3d null;\n/**\n * Returns highest resolution time offered by host in milliseconds.\n */\ncljs.core.system_time \x3d (function cljs$core$system_time(){\nif((((typeof performance !\x3d\x3d \x27undefined\x27)) \x26\x26 ((!((performance.now \x3d\x3d null)))))){\nreturn performance.now();\n} else {\nif((((typeof process !\x3d\x3d \x27undefined\x27)) \x26\x26 ((!((process.hrtime \x3d\x3d null)))))){\nvar t \x3d process.hrtime();\nreturn ((((t[(0)]) * 1.0E9) + (t[(1)])) / 1000000.0);\n} else {\nreturn (new Date()).getTime();\n\n}\n}\n});\n/**\n * Construct a JavaScript array of the specified dimensions. Accepts ignored\n *   type argument for compatibility with Clojure. Note that there is no efficient\n *   way to allocate multi-dimensional arrays in JavaScript; as such, this function\n *   will run in polynomial time when called with 3 or more arguments.\n */\ncljs.core.make_array \x3d (function cljs$core$make_array(var_args){\nvar G__38253 \x3d arguments.length;\nswitch (G__38253) {\ncase 1:\nreturn cljs.core.make_array.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.make_array.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___39892 \x3d arguments.length;\nvar i__4772__auto___39893 \x3d (0);\nwhile(true){\nif((i__4772__auto___39893 \x3c len__4771__auto___39892)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___39893]));\n\nvar G__39895 \x3d (i__4772__auto___39893 + (1));\ni__4772__auto___39893 \x3d G__39895;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.make_array.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.make_array.cljs$core$IFn$_invoke$arity$1 \x3d (function (size){\nreturn (new Array(size));\n}));\n\n(cljs.core.make_array.cljs$core$IFn$_invoke$arity$2 \x3d (function (type,size){\nreturn (new Array(size));\n}));\n\n(cljs.core.make_array.cljs$core$IFn$_invoke$arity$variadic \x3d (function (type,size,more_sizes){\nvar dims \x3d more_sizes;\nvar dimarray \x3d (new Array(size));\nvar n__4648__auto___39910 \x3d dimarray.length;\nvar i_39912 \x3d (0);\nwhile(true){\nif((i_39912 \x3c n__4648__auto___39910)){\n(dimarray[i_39912] \x3d (cljs.core.apply.cljs$core$IFn$_invoke$arity$3 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.make_array,null,dims) : cljs.core.apply.call(null,cljs.core.make_array,null,dims)));\n\nvar G__39913 \x3d (i_39912 + (1));\ni_39912 \x3d G__39913;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn dimarray;\n}));\n\n/** @this {Function} */\n(cljs.core.make_array.cljs$lang$applyTo \x3d (function (seq38250){\nvar G__38251 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38250) : cljs.core.first.call(null,seq38250));\nvar seq38250__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38250) : cljs.core.next.call(null,seq38250));\nvar G__38252 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38250__$1) : cljs.core.first.call(null,seq38250__$1));\nvar seq38250__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38250__$1) : cljs.core.next.call(null,seq38250__$1));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38251,G__38252,seq38250__$2);\n}));\n\n(cljs.core.make_array.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns a javascript array, cloned from the passed in array\n */\ncljs.core.aclone \x3d (function cljs$core$aclone(arr){\nvar len \x3d arr.length;\nvar new_arr \x3d (new Array(len));\nvar n__4648__auto___39923 \x3d len;\nvar i_39924 \x3d (0);\nwhile(true){\nif((i_39924 \x3c n__4648__auto___39923)){\n(new_arr[i_39924] \x3d (arr[i_39924]));\n\nvar G__39927 \x3d (i_39924 + (1));\ni_39924 \x3d G__39927;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn new_arr;\n});\n/**\n * Creates a new javascript array.\n * @param {...*} var_args\n */\ncljs.core.array \x3d (function cljs$core$array(var_args){\nvar a \x3d (new Array(arguments.length));\nvar i \x3d (0);\nwhile(true){\nif((i \x3c a.length)){\n(a[i] \x3d (arguments[i]));\n\nvar G__39931 \x3d (i + (1));\ni \x3d G__39931;\ncontinue;\n} else {\nreturn a;\n}\nbreak;\n}\n});\ncljs.core.maybe_warn \x3d (function cljs$core$maybe_warn(e){\nif(cljs.core.truth_(cljs.core._STAR_print_err_fn_STAR_)){\nreturn cljs.core._STAR_print_err_fn_STAR_.call(null,e);\n} else {\nreturn null;\n}\n});\ncljs.core.checked_aget \x3d (function cljs$core$checked_aget(var_args){\nvar G__38258 \x3d arguments.length;\nswitch (G__38258) {\ncase 2:\nreturn cljs.core.checked_aget.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___39937 \x3d arguments.length;\nvar i__4772__auto___39938 \x3d (0);\nwhile(true){\nif((i__4772__auto___39938 \x3c len__4771__auto___39937)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___39938]));\n\nvar G__39941 \x3d (i__4772__auto___39938 + (1));\ni__4772__auto___39938 \x3d G__39941;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.checked_aget.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.checked_aget.cljs$core$IFn$_invoke$arity$2 \x3d (function (array,idx){\ntry{if(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.core.array_QMARK_(array);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn goog.isArrayLike(array);\n}\n})())){\n} else {\nthrow (new Error(\x22Assert failed: (or (array? array) (goog/isArrayLike array))\x22));\n}\n\nif(typeof idx \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? idx)\x22));\n}\n\nif((!((idx \x3c (0))))){\n} else {\nthrow (new Error(\x22Assert failed: (not (neg? idx))\x22));\n}\n\nif((idx \x3c array.length)){\n} else {\nthrow (new Error(\x22Assert failed: (\x3c idx (alength array))\x22));\n}\n}catch (e38259){var e_39953 \x3d e38259;\ncljs.core.maybe_warn(e_39953);\n}\nreturn (array[idx]);\n}));\n\n(cljs.core.checked_aget.cljs$core$IFn$_invoke$arity$variadic \x3d (function (array,idx,idxs){\nvar G__38260 \x3d cljs.core.checked_aget;\nvar G__38261 \x3d cljs.core.checked_aget.cljs$core$IFn$_invoke$arity$2(array,idx);\nvar G__38262 \x3d idxs;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$3 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$3(G__38260,G__38261,G__38262) : cljs.core.apply.call(null,G__38260,G__38261,G__38262));\n}));\n\n/** @this {Function} */\n(cljs.core.checked_aget.cljs$lang$applyTo \x3d (function (seq38255){\nvar G__38256 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38255) : cljs.core.first.call(null,seq38255));\nvar seq38255__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38255) : cljs.core.next.call(null,seq38255));\nvar G__38257 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38255__$1) : cljs.core.first.call(null,seq38255__$1));\nvar seq38255__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38255__$1) : cljs.core.next.call(null,seq38255__$1));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38256,G__38257,seq38255__$2);\n}));\n\n(cljs.core.checked_aget.cljs$lang$maxFixedArity \x3d (2));\n\ncljs.core.checked_aset \x3d (function cljs$core$checked_aset(var_args){\nvar G__38268 \x3d arguments.length;\nswitch (G__38268) {\ncase 3:\nreturn cljs.core.checked_aset.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___39977 \x3d arguments.length;\nvar i__4772__auto___39978 \x3d (0);\nwhile(true){\nif((i__4772__auto___39978 \x3c len__4771__auto___39977)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___39978]));\n\nvar G__39979 \x3d (i__4772__auto___39978 + (1));\ni__4772__auto___39978 \x3d G__39979;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.checked_aset.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.checked_aset.cljs$core$IFn$_invoke$arity$3 \x3d (function (array,idx,val){\ntry{if(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.core.array_QMARK_(array);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn goog.isArrayLike(array);\n}\n})())){\n} else {\nthrow (new Error(\x22Assert failed: (or (array? array) (goog/isArrayLike array))\x22));\n}\n\nif(typeof idx \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? idx)\x22));\n}\n\nif((!((idx \x3c (0))))){\n} else {\nthrow (new Error(\x22Assert failed: (not (neg? idx))\x22));\n}\n\nif((idx \x3c array.length)){\n} else {\nthrow (new Error(\x22Assert failed: (\x3c idx (alength array))\x22));\n}\n}catch (e38269){var e_39992 \x3d e38269;\ncljs.core.maybe_warn(e_39992);\n}\nreturn (array[idx] \x3d val);\n}));\n\n(cljs.core.checked_aset.cljs$core$IFn$_invoke$arity$variadic \x3d (function (array,idx,idx2,idxv){\nvar G__38270 \x3d cljs.core.checked_aset;\nvar G__38271 \x3d cljs.core.checked_aget.cljs$core$IFn$_invoke$arity$2(array,idx);\nvar G__38272 \x3d idx2;\nvar G__38273 \x3d idxv;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$4 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$4(G__38270,G__38271,G__38272,G__38273) : cljs.core.apply.call(null,G__38270,G__38271,G__38272,G__38273));\n}));\n\n/** @this {Function} */\n(cljs.core.checked_aset.cljs$lang$applyTo \x3d (function (seq38264){\nvar G__38265 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38264) : cljs.core.first.call(null,seq38264));\nvar seq38264__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38264) : cljs.core.next.call(null,seq38264));\nvar G__38266 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38264__$1) : cljs.core.first.call(null,seq38264__$1));\nvar seq38264__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38264__$1) : cljs.core.next.call(null,seq38264__$1));\nvar G__38267 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38264__$2) : cljs.core.first.call(null,seq38264__$2));\nvar seq38264__$3 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38264__$2) : cljs.core.next.call(null,seq38264__$2));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38265,G__38266,G__38267,seq38264__$3);\n}));\n\n(cljs.core.checked_aset.cljs$lang$maxFixedArity \x3d (3));\n\ncljs.core.checked_aget_SINGLEQUOTE_ \x3d (function cljs$core$checked_aget_SINGLEQUOTE_(var_args){\nvar G__38278 \x3d arguments.length;\nswitch (G__38278) {\ncase 2:\nreturn cljs.core.checked_aget_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___40016 \x3d arguments.length;\nvar i__4772__auto___40017 \x3d (0);\nwhile(true){\nif((i__4772__auto___40017 \x3c len__4771__auto___40016)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___40017]));\n\nvar G__40018 \x3d (i__4772__auto___40017 + (1));\ni__4772__auto___40017 \x3d G__40018;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.checked_aget_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.checked_aget_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$2 \x3d (function (array,idx){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.core.array_QMARK_(array);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn goog.isArrayLike(array);\n}\n})())){\n} else {\nthrow (new Error(\x22Assert failed: (or (array? array) (goog/isArrayLike array))\x22));\n}\n\nif(typeof idx \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? idx)\x22));\n}\n\nif((!((idx \x3c (0))))){\n} else {\nthrow (new Error(\x22Assert failed: (not (neg? idx))\x22));\n}\n\nif((idx \x3c array.length)){\n} else {\nthrow (new Error(\x22Assert failed: (\x3c idx (alength array))\x22));\n}\n\nreturn (array[idx]);\n}));\n\n(cljs.core.checked_aget_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (array,idx,idxs){\nvar G__38279 \x3d cljs.core.checked_aget_SINGLEQUOTE_;\nvar G__38280 \x3d cljs.core.checked_aget_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$2(array,idx);\nvar G__38281 \x3d idxs;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$3 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$3(G__38279,G__38280,G__38281) : cljs.core.apply.call(null,G__38279,G__38280,G__38281));\n}));\n\n/** @this {Function} */\n(cljs.core.checked_aget_SINGLEQUOTE_.cljs$lang$applyTo \x3d (function (seq38275){\nvar G__38276 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38275) : cljs.core.first.call(null,seq38275));\nvar seq38275__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38275) : cljs.core.next.call(null,seq38275));\nvar G__38277 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38275__$1) : cljs.core.first.call(null,seq38275__$1));\nvar seq38275__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38275__$1) : cljs.core.next.call(null,seq38275__$1));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38276,G__38277,seq38275__$2);\n}));\n\n(cljs.core.checked_aget_SINGLEQUOTE_.cljs$lang$maxFixedArity \x3d (2));\n\ncljs.core.checked_aset_SINGLEQUOTE_ \x3d (function cljs$core$checked_aset_SINGLEQUOTE_(var_args){\nvar G__38287 \x3d arguments.length;\nswitch (G__38287) {\ncase 3:\nreturn cljs.core.checked_aset_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___40025 \x3d arguments.length;\nvar i__4772__auto___40026 \x3d (0);\nwhile(true){\nif((i__4772__auto___40026 \x3c len__4771__auto___40025)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___40026]));\n\nvar G__40027 \x3d (i__4772__auto___40026 + (1));\ni__4772__auto___40026 \x3d G__40027;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.checked_aset_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.checked_aset_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$3 \x3d (function (array,idx,val){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.core.array_QMARK_(array);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn goog.isArrayLike(array);\n}\n})())){\n} else {\nthrow (new Error(\x22Assert failed: (or (array? array) (goog/isArrayLike array))\x22));\n}\n\nif(typeof idx \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? idx)\x22));\n}\n\nif((!((idx \x3c (0))))){\n} else {\nthrow (new Error(\x22Assert failed: (not (neg? idx))\x22));\n}\n\nif((idx \x3c array.length)){\n} else {\nthrow (new Error(\x22Assert failed: (\x3c idx (alength array))\x22));\n}\n\nreturn (array[idx] \x3d val);\n}));\n\n(cljs.core.checked_aset_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (array,idx,idx2,idxv){\nvar G__38288 \x3d cljs.core.checked_aset_SINGLEQUOTE_;\nvar G__38289 \x3d cljs.core.checked_aget_SINGLEQUOTE_.cljs$core$IFn$_invoke$arity$2(array,idx);\nvar G__38290 \x3d idx2;\nvar G__38291 \x3d idxv;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$4 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$4(G__38288,G__38289,G__38290,G__38291) : cljs.core.apply.call(null,G__38288,G__38289,G__38290,G__38291));\n}));\n\n/** @this {Function} */\n(cljs.core.checked_aset_SINGLEQUOTE_.cljs$lang$applyTo \x3d (function (seq38283){\nvar G__38284 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38283) : cljs.core.first.call(null,seq38283));\nvar seq38283__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38283) : cljs.core.next.call(null,seq38283));\nvar G__38285 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38283__$1) : cljs.core.first.call(null,seq38283__$1));\nvar seq38283__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38283__$1) : cljs.core.next.call(null,seq38283__$1));\nvar G__38286 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38283__$2) : cljs.core.first.call(null,seq38283__$2));\nvar seq38283__$3 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38283__$2) : cljs.core.next.call(null,seq38283__$2));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38284,G__38285,G__38286,seq38283__$3);\n}));\n\n(cljs.core.checked_aset_SINGLEQUOTE_.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Returns the value at the index/indices. Works on JavaScript arrays.\n */\ncljs.core.aget \x3d (function cljs$core$aget(var_args){\nvar G__38296 \x3d arguments.length;\nswitch (G__38296) {\ncase 2:\nreturn cljs.core.aget.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___40064 \x3d arguments.length;\nvar i__4772__auto___40065 \x3d (0);\nwhile(true){\nif((i__4772__auto___40065 \x3c len__4771__auto___40064)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___40065]));\n\nvar G__40066 \x3d (i__4772__auto___40065 + (1));\ni__4772__auto___40065 \x3d G__40066;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.aget.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.aget.cljs$core$IFn$_invoke$arity$2 \x3d (function (array,idx){\nreturn (array[idx]);\n}));\n\n(cljs.core.aget.cljs$core$IFn$_invoke$arity$variadic \x3d (function (array,idx,idxs){\nvar G__38297 \x3d cljs.core.aget;\nvar G__38298 \x3d (array[idx]);\nvar G__38299 \x3d idxs;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$3 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$3(G__38297,G__38298,G__38299) : cljs.core.apply.call(null,G__38297,G__38298,G__38299));\n}));\n\n/** @this {Function} */\n(cljs.core.aget.cljs$lang$applyTo \x3d (function (seq38293){\nvar G__38294 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38293) : cljs.core.first.call(null,seq38293));\nvar seq38293__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38293) : cljs.core.next.call(null,seq38293));\nvar G__38295 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38293__$1) : cljs.core.first.call(null,seq38293__$1));\nvar seq38293__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38293__$1) : cljs.core.next.call(null,seq38293__$1));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38294,G__38295,seq38293__$2);\n}));\n\n(cljs.core.aget.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Sets the value at the index/indices. Works on JavaScript arrays.\n *   Returns val.\n */\ncljs.core.aset \x3d (function cljs$core$aset(var_args){\nvar G__38305 \x3d arguments.length;\nswitch (G__38305) {\ncase 3:\nreturn cljs.core.aset.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___40090 \x3d arguments.length;\nvar i__4772__auto___40091 \x3d (0);\nwhile(true){\nif((i__4772__auto___40091 \x3c len__4771__auto___40090)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___40091]));\n\nvar G__40092 \x3d (i__4772__auto___40091 + (1));\ni__4772__auto___40091 \x3d G__40092;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.aset.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.aset.cljs$core$IFn$_invoke$arity$3 \x3d (function (array,idx,val){\nreturn (array[idx] \x3d val);\n}));\n\n(cljs.core.aset.cljs$core$IFn$_invoke$arity$variadic \x3d (function (array,idx,idx2,idxv){\nvar G__38306 \x3d cljs.core.aset;\nvar G__38307 \x3d (array[idx]);\nvar G__38308 \x3d idx2;\nvar G__38309 \x3d idxv;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$4 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$4(G__38306,G__38307,G__38308,G__38309) : cljs.core.apply.call(null,G__38306,G__38307,G__38308,G__38309));\n}));\n\n/** @this {Function} */\n(cljs.core.aset.cljs$lang$applyTo \x3d (function (seq38301){\nvar G__38302 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38301) : cljs.core.first.call(null,seq38301));\nvar seq38301__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38301) : cljs.core.next.call(null,seq38301));\nvar G__38303 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38301__$1) : cljs.core.first.call(null,seq38301__$1));\nvar seq38301__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38301__$1) : cljs.core.next.call(null,seq38301__$1));\nvar G__38304 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38301__$2) : cljs.core.first.call(null,seq38301__$2));\nvar seq38301__$3 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38301__$2) : cljs.core.next.call(null,seq38301__$2));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38302,G__38303,G__38304,seq38301__$3);\n}));\n\n(cljs.core.aset.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Returns the length of the array. Works on arrays of all types.\n */\ncljs.core.alength \x3d (function cljs$core$alength(array){\nreturn array.length;\n});\n/**\n * Returns an array with components set to the values in aseq. Optional type\n *   argument accepted for compatibility with Clojure.\n */\ncljs.core.into_array \x3d (function cljs$core$into_array(var_args){\nvar G__38311 \x3d arguments.length;\nswitch (G__38311) {\ncase 1:\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.into_array.cljs$core$IFn$_invoke$arity$1 \x3d (function (aseq){\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$2(null,aseq);\n}));\n\n(cljs.core.into_array.cljs$core$IFn$_invoke$arity$2 \x3d (function (type,aseq){\nvar G__38312 \x3d (function (a,x){\na.push(x);\n\nreturn a;\n});\nvar G__38313 \x3d [];\nvar G__38314 \x3d aseq;\nreturn (cljs.core.reduce.cljs$core$IFn$_invoke$arity$3 ? cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(G__38312,G__38313,G__38314) : cljs.core.reduce.call(null,G__38312,G__38313,G__38314));\n}));\n\n(cljs.core.into_array.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Invoke JavaScript object method via string. Needed when the\n *   string is not a valid unquoted property name.\n */\ncljs.core.js_invoke \x3d (function cljs$core$js_invoke(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40110 \x3d arguments.length;\nvar i__4772__auto___40111 \x3d (0);\nwhile(true){\nif((i__4772__auto___40111 \x3c len__4771__auto___40110)){\nargs__4777__auto__.push((arguments[i__4772__auto___40111]));\n\nvar G__40115 \x3d (i__4772__auto___40111 + (1));\ni__4772__auto___40111 \x3d G__40115;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn cljs.core.js_invoke.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(cljs.core.js_invoke.cljs$core$IFn$_invoke$arity$variadic \x3d (function (obj,s,args){\nreturn (obj[s]).apply(obj,cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(args));\n}));\n\n(cljs.core.js_invoke.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(cljs.core.js_invoke.cljs$lang$applyTo \x3d (function (seq38315){\nvar G__38316 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38315) : cljs.core.first.call(null,seq38315));\nvar seq38315__$1 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38315) : cljs.core.next.call(null,seq38315));\nvar G__38317 \x3d (cljs.core.first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.first.cljs$core$IFn$_invoke$arity$1(seq38315__$1) : cljs.core.first.call(null,seq38315__$1));\nvar seq38315__$2 \x3d (cljs.core.next.cljs$core$IFn$_invoke$arity$1 ? cljs.core.next.cljs$core$IFn$_invoke$arity$1(seq38315__$1) : cljs.core.next.call(null,seq38315__$1));\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38316,G__38317,seq38315__$2);\n}));\n\n/**\n * Returns true if x is an instance of Symbol\n */\ncljs.core.js_symbol_QMARK_ \x3d (function cljs$core$js_symbol_QMARK_(x){\nreturn (((goog.typeOf(x) \x3d\x3d\x3d \x22symbol\x22)) || ((((typeof Symbol !\x3d\x3d \x27undefined\x27)) \x26\x26 ((x instanceof Symbol)))));\n});\n\n/**\n * Marker protocol\n * @interface\n */\ncljs.core.Fn \x3d function(){};\n\n\n/**\n * Protocol for adding the ability to invoke an object as a function.\n *   For example, a vector can also be used to look up a value:\n *   ([1 2 3 4] 1) \x3d\x3e 2\n * @interface\n */\ncljs.core.IFn \x3d function(){};\n\nvar cljs$core$IFn$_invoke$dyn_40122 \x3d (function() {\nvar G__40129 \x3d null;\nvar G__40129__1 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__2 \x3d (function (this$,a){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,a) : m__4464__auto__.call(null,this$,a));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,a) : m__4461__auto__.call(null,this$,a));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__3 \x3d (function (this$,a,b){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(this$,a,b) : m__4464__auto__.call(null,this$,a,b));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(this$,a,b) : m__4461__auto__.call(null,this$,a,b));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__4 \x3d (function (this$,a,b,c){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$4(this$,a,b,c) : m__4464__auto__.call(null,this$,a,b,c));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$4(this$,a,b,c) : m__4461__auto__.call(null,this$,a,b,c));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__5 \x3d (function (this$,a,b,c,d){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$5(this$,a,b,c,d) : m__4464__auto__.call(null,this$,a,b,c,d));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$5(this$,a,b,c,d) : m__4461__auto__.call(null,this$,a,b,c,d));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__6 \x3d (function (this$,a,b,c,d,e){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$6 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$6(this$,a,b,c,d,e) : m__4464__auto__.call(null,this$,a,b,c,d,e));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$6 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$6(this$,a,b,c,d,e) : m__4461__auto__.call(null,this$,a,b,c,d,e));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__7 \x3d (function (this$,a,b,c,d,e,f){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$7 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$7(this$,a,b,c,d,e,f) : m__4464__auto__.call(null,this$,a,b,c,d,e,f));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$7 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$7(this$,a,b,c,d,e,f) : m__4461__auto__.call(null,this$,a,b,c,d,e,f));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__8 \x3d (function (this$,a,b,c,d,e,f,g){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$8 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$8(this$,a,b,c,d,e,f,g) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$8 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$8(this$,a,b,c,d,e,f,g) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__9 \x3d (function (this$,a,b,c,d,e,f,g,h){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$9 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$9(this$,a,b,c,d,e,f,g,h) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$9 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$9(this$,a,b,c,d,e,f,g,h) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__10 \x3d (function (this$,a,b,c,d,e,f,g,h,i){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$10 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$10(this$,a,b,c,d,e,f,g,h,i) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$10 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$10(this$,a,b,c,d,e,f,g,h,i) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__11 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$11 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$11(this$,a,b,c,d,e,f,g,h,i,j) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$11 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$11(this$,a,b,c,d,e,f,g,h,i,j) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__12 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$12 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$12(this$,a,b,c,d,e,f,g,h,i,j,k) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$12 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$12(this$,a,b,c,d,e,f,g,h,i,j,k) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__13 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$13 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$13(this$,a,b,c,d,e,f,g,h,i,j,k,l) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$13 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$13(this$,a,b,c,d,e,f,g,h,i,j,k,l) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__14 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$14 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$14(this$,a,b,c,d,e,f,g,h,i,j,k,l,m) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$14 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$14(this$,a,b,c,d,e,f,g,h,i,j,k,l,m) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__15 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$15 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$15(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$15 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$15(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__16 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$16 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$16(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$16 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$16(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__17 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$17 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$17(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$17 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$17(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__18 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$18 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$18(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$18 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$18(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__19 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$19 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$19(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$19 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$19(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__20 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$20 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$20(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$20 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$20(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__21 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$21 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$21(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$21 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$21(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nvar G__40129__22 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$22 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$22(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest) : m__4464__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$22 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$22(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest) : m__4461__auto__.call(null,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest));\n} else {\nthrow cljs.core.missing_protocol(\x22IFn.-invoke\x22,this$);\n}\n}\n});\nG__40129 \x3d function(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nswitch(arguments.length){\ncase 1:\nreturn G__40129__1.call(this,this$);\ncase 2:\nreturn G__40129__2.call(this,this$,a);\ncase 3:\nreturn G__40129__3.call(this,this$,a,b);\ncase 4:\nreturn G__40129__4.call(this,this$,a,b,c);\ncase 5:\nreturn G__40129__5.call(this,this$,a,b,c,d);\ncase 6:\nreturn G__40129__6.call(this,this$,a,b,c,d,e);\ncase 7:\nreturn G__40129__7.call(this,this$,a,b,c,d,e,f);\ncase 8:\nreturn G__40129__8.call(this,this$,a,b,c,d,e,f,g);\ncase 9:\nreturn G__40129__9.call(this,this$,a,b,c,d,e,f,g,h);\ncase 10:\nreturn G__40129__10.call(this,this$,a,b,c,d,e,f,g,h,i);\ncase 11:\nreturn G__40129__11.call(this,this$,a,b,c,d,e,f,g,h,i,j);\ncase 12:\nreturn G__40129__12.call(this,this$,a,b,c,d,e,f,g,h,i,j,k);\ncase 13:\nreturn G__40129__13.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l);\ncase 14:\nreturn G__40129__14.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m);\ncase 15:\nreturn G__40129__15.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n);\ncase 16:\nreturn G__40129__16.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o);\ncase 17:\nreturn G__40129__17.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p);\ncase 18:\nreturn G__40129__18.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q);\ncase 19:\nreturn G__40129__19.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r);\ncase 20:\nreturn G__40129__20.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s);\ncase 21:\nreturn G__40129__21.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t);\ncase 22:\nreturn G__40129__22.call(this,this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__40129.cljs$core$IFn$_invoke$arity$1 \x3d G__40129__1;\nG__40129.cljs$core$IFn$_invoke$arity$2 \x3d G__40129__2;\nG__40129.cljs$core$IFn$_invoke$arity$3 \x3d G__40129__3;\nG__40129.cljs$core$IFn$_invoke$arity$4 \x3d G__40129__4;\nG__40129.cljs$core$IFn$_invoke$arity$5 \x3d G__40129__5;\nG__40129.cljs$core$IFn$_invoke$arity$6 \x3d G__40129__6;\nG__40129.cljs$core$IFn$_invoke$arity$7 \x3d G__40129__7;\nG__40129.cljs$core$IFn$_invoke$arity$8 \x3d G__40129__8;\nG__40129.cljs$core$IFn$_invoke$arity$9 \x3d G__40129__9;\nG__40129.cljs$core$IFn$_invoke$arity$10 \x3d G__40129__10;\nG__40129.cljs$core$IFn$_invoke$arity$11 \x3d G__40129__11;\nG__40129.cljs$core$IFn$_invoke$arity$12 \x3d G__40129__12;\nG__40129.cljs$core$IFn$_invoke$arity$13 \x3d G__40129__13;\nG__40129.cljs$core$IFn$_invoke$arity$14 \x3d G__40129__14;\nG__40129.cljs$core$IFn$_invoke$arity$15 \x3d G__40129__15;\nG__40129.cljs$core$IFn$_invoke$arity$16 \x3d G__40129__16;\nG__40129.cljs$core$IFn$_invoke$arity$17 \x3d G__40129__17;\nG__40129.cljs$core$IFn$_invoke$arity$18 \x3d G__40129__18;\nG__40129.cljs$core$IFn$_invoke$arity$19 \x3d G__40129__19;\nG__40129.cljs$core$IFn$_invoke$arity$20 \x3d G__40129__20;\nG__40129.cljs$core$IFn$_invoke$arity$21 \x3d G__40129__21;\nG__40129.cljs$core$IFn$_invoke$arity$22 \x3d G__40129__22;\nreturn G__40129;\n})()\n;\ncljs.core._invoke \x3d (function cljs$core$_invoke(var_args){\nvar G__38319 \x3d arguments.length;\nswitch (G__38319) {\ncase 1:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase 7:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$7((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ncase 8:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$8((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]));\n\nbreak;\ncase 9:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$9((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]));\n\nbreak;\ncase 10:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$10((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]));\n\nbreak;\ncase 11:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$11((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]));\n\nbreak;\ncase 12:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$12((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]));\n\nbreak;\ncase 13:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$13((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]));\n\nbreak;\ncase 14:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$14((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]));\n\nbreak;\ncase 15:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$15((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]));\n\nbreak;\ncase 16:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$16((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]));\n\nbreak;\ncase 17:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$17((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]));\n\nbreak;\ncase 18:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$18((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]));\n\nbreak;\ncase 19:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$19((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]));\n\nbreak;\ncase 20:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$20((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]));\n\nbreak;\ncase 21:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$21((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]));\n\nbreak;\ncase 22:\nreturn cljs.core._invoke.cljs$core$IFn$_invoke$arity$22((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]),(arguments[(21)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$1 \x3d (function (this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$1 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$1(this$);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$2 \x3d (function (this$,a){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$2 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$2(this$,a);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$3 \x3d (function (this$,a,b){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$3 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$3(this$,a,b);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$4 \x3d (function (this$,a,b,c){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$4 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$4(this$,a,b,c);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$5 \x3d (function (this$,a,b,c,d){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$5 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$5(this$,a,b,c,d);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$6 \x3d (function (this$,a,b,c,d,e){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$6 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$6(this$,a,b,c,d,e);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$7 \x3d (function (this$,a,b,c,d,e,f){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$7 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$7(this$,a,b,c,d,e,f);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$8 \x3d (function (this$,a,b,c,d,e,f,g){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$8 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$8(this$,a,b,c,d,e,f,g);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$9 \x3d (function (this$,a,b,c,d,e,f,g,h){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$9 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$9(this$,a,b,c,d,e,f,g,h);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$10 \x3d (function (this$,a,b,c,d,e,f,g,h,i){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$10 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$10(this$,a,b,c,d,e,f,g,h,i);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$11 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$11 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$11(this$,a,b,c,d,e,f,g,h,i,j);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$12 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$12 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$12(this$,a,b,c,d,e,f,g,h,i,j,k);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$13 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$13 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$13(this$,a,b,c,d,e,f,g,h,i,j,k,l);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$14 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$14 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$14(this$,a,b,c,d,e,f,g,h,i,j,k,l,m);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$15 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$15 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$15(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$16 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$16 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$16(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$17 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$17 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$17(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$18 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$18 \x3d\x3d null)))))){\nreturn 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);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$19 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$19 \x3d\x3d null)))))){\nreturn 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,r);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$20 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$20 \x3d\x3d null)))))){\nreturn 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,r,s);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$21 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$21 \x3d\x3d null)))))){\nreturn 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,r,s,t);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t);\n}\n}));\n\n(cljs.core._invoke.cljs$core$IFn$_invoke$arity$22 \x3d (function (this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IFn$_invoke$arity$22 \x3d\x3d null)))))){\nreturn this$.cljs$core$IFn$_invoke$arity$22(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest);\n} else {\nreturn cljs$core$IFn$_invoke$dyn_40122(this$,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest);\n}\n}));\n\n(cljs.core._invoke.cljs$lang$maxFixedArity \x3d 22);\n\n\n\n/**\n * Protocol for cloning a value.\n * @interface\n */\ncljs.core.ICloneable \x3d function(){};\n\nvar cljs$core$ICloneable$_clone$dyn_40298 \x3d (function (value){\nvar x__4463__auto__ \x3d (((value \x3d\x3d null))?null:value);\nvar m__4464__auto__ \x3d (cljs.core._clone[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(value) : m__4464__auto__.call(null,value));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._clone[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(value) : m__4461__auto__.call(null,value));\n} else {\nthrow cljs.core.missing_protocol(\x22ICloneable.-clone\x22,value);\n}\n}\n});\n/**\n * Creates a clone of value.\n */\ncljs.core._clone \x3d (function cljs$core$_clone(value){\nif((((!((value \x3d\x3d null)))) \x26\x26 ((!((value.cljs$core$ICloneable$_clone$arity$1 \x3d\x3d null)))))){\nreturn value.cljs$core$ICloneable$_clone$arity$1(value);\n} else {\nreturn cljs$core$ICloneable$_clone$dyn_40298(value);\n}\n});\n\n\n/**\n * Protocol for adding the ability to count a collection in constant time.\n * @interface\n */\ncljs.core.ICounted \x3d function(){};\n\nvar cljs$core$ICounted$_count$dyn_40301 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._count[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._count[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22ICounted.-count\x22,coll);\n}\n}\n});\n/**\n * Calculates the count of coll in constant time. Used by cljs.core/count.\n */\ncljs.core._count \x3d (function cljs$core$_count(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ICounted$_count$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$ICounted$_count$arity$1(coll);\n} else {\nreturn cljs$core$ICounted$_count$dyn_40301(coll);\n}\n});\n\n\n/**\n * Protocol for creating an empty collection.\n * @interface\n */\ncljs.core.IEmptyableCollection \x3d function(){};\n\nvar cljs$core$IEmptyableCollection$_empty$dyn_40308 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._empty[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._empty[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IEmptyableCollection.-empty\x22,coll);\n}\n}\n});\n/**\n * Returns an empty collection of the same category as coll. Used\n *   by cljs.core/empty.\n */\ncljs.core._empty \x3d (function cljs$core$_empty(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IEmptyableCollection$_empty$arity$1(coll);\n} else {\nreturn cljs$core$IEmptyableCollection$_empty$dyn_40308(coll);\n}\n});\n\n\n/**\n * Protocol for adding to a collection.\n * @interface\n */\ncljs.core.ICollection \x3d function(){};\n\nvar cljs$core$ICollection$_conj$dyn_40313 \x3d (function (coll,o){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._conj[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,o) : m__4464__auto__.call(null,coll,o));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._conj[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,o) : m__4461__auto__.call(null,coll,o));\n} else {\nthrow cljs.core.missing_protocol(\x22ICollection.-conj\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll with o added to it. The new item\n *   should be added to the most efficient place, e.g.\n *   (conj [1 2 3 4] 5) \x3d\x3e [1 2 3 4 5]\n *   (conj \x27(2 3 4 5) 1) \x3d\x3e \x27(1 2 3 4 5)\n */\ncljs.core._conj \x3d (function cljs$core$_conj(coll,o){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ICollection$_conj$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$ICollection$_conj$arity$2(coll,o);\n} else {\nreturn cljs$core$ICollection$_conj$dyn_40313(coll,o);\n}\n});\n\n\n/**\n * Protocol for collections to provide indexed-based access to their items.\n * @interface\n */\ncljs.core.IIndexed \x3d function(){};\n\nvar cljs$core$IIndexed$_nth$dyn_40318 \x3d (function() {\nvar G__40319 \x3d null;\nvar G__40319__2 \x3d (function (coll,n){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._nth[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,n) : m__4464__auto__.call(null,coll,n));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._nth[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,n) : m__4461__auto__.call(null,coll,n));\n} else {\nthrow cljs.core.missing_protocol(\x22IIndexed.-nth\x22,coll);\n}\n}\n});\nvar G__40319__3 \x3d (function (coll,n,not_found){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._nth[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,n,not_found) : m__4464__auto__.call(null,coll,n,not_found));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._nth[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,n,not_found) : m__4461__auto__.call(null,coll,n,not_found));\n} else {\nthrow cljs.core.missing_protocol(\x22IIndexed.-nth\x22,coll);\n}\n}\n});\nG__40319 \x3d function(coll,n,not_found){\nswitch(arguments.length){\ncase 2:\nreturn G__40319__2.call(this,coll,n);\ncase 3:\nreturn G__40319__3.call(this,coll,n,not_found);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__40319.cljs$core$IFn$_invoke$arity$2 \x3d G__40319__2;\nG__40319.cljs$core$IFn$_invoke$arity$3 \x3d G__40319__3;\nreturn G__40319;\n})()\n;\n/**\n * Returns the value at the index n in the collection coll.\n *   Returns not-found if index n is out of bounds and not-found is supplied.\n */\ncljs.core._nth \x3d (function cljs$core$_nth(var_args){\nvar G__38321 \x3d arguments.length;\nswitch (G__38321) {\ncase 2:\nreturn cljs.core._nth.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._nth.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._nth.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,n){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IIndexed$_nth$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$IIndexed$_nth$arity$2(coll,n);\n} else {\nreturn cljs$core$IIndexed$_nth$dyn_40318(coll,n);\n}\n}));\n\n(cljs.core._nth.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,n,not_found){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IIndexed$_nth$arity$3 \x3d\x3d null)))))){\nreturn coll.cljs$core$IIndexed$_nth$arity$3(coll,n,not_found);\n} else {\nreturn cljs$core$IIndexed$_nth$dyn_40318(coll,n,not_found);\n}\n}));\n\n(cljs.core._nth.cljs$lang$maxFixedArity \x3d 3);\n\n\n\n/**\n * Marker protocol indicating an array sequence.\n * @interface\n */\ncljs.core.ASeq \x3d function(){};\n\n\n/**\n * Protocol for collections to provide access to their items as sequences.\n * @interface\n */\ncljs.core.ISeq \x3d function(){};\n\nvar cljs$core$ISeq$_first$dyn_40338 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._first[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._first[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22ISeq.-first\x22,coll);\n}\n}\n});\n/**\n * Returns the first item in the collection coll. Used by cljs.core/first.\n */\ncljs.core._first \x3d (function cljs$core$_first(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISeq$_first$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISeq$_first$arity$1(coll);\n} else {\nreturn cljs$core$ISeq$_first$dyn_40338(coll);\n}\n});\n\nvar cljs$core$ISeq$_rest$dyn_40339 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._rest[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._rest[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22ISeq.-rest\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll without the first item. It should\n *   always return a seq, e.g.\n *   (rest []) \x3d\x3e ()\n *   (rest nil) \x3d\x3e ()\n */\ncljs.core._rest \x3d (function cljs$core$_rest(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISeq$_rest$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISeq$_rest$arity$1(coll);\n} else {\nreturn cljs$core$ISeq$_rest$dyn_40339(coll);\n}\n});\n\n\n/**\n * Protocol for accessing the next items of a collection.\n * @interface\n */\ncljs.core.INext \x3d function(){};\n\nvar cljs$core$INext$_next$dyn_40341 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._next[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._next[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22INext.-next\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll without the first item. In contrast to\n *   rest, it should return nil if there are no more items, e.g.\n *   (next []) \x3d\x3e nil\n *   (next nil) \x3d\x3e nil\n */\ncljs.core._next \x3d (function cljs$core$_next(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$INext$_next$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$INext$_next$arity$1(coll);\n} else {\nreturn cljs$core$INext$_next$dyn_40341(coll);\n}\n});\n\n\n/**\n * Protocol for looking up a value in a data structure.\n * @interface\n */\ncljs.core.ILookup \x3d function(){};\n\nvar cljs$core$ILookup$_lookup$dyn_40343 \x3d (function() {\nvar G__40344 \x3d null;\nvar G__40344__2 \x3d (function (o,k){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._lookup[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(o,k) : m__4464__auto__.call(null,o,k));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._lookup[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(o,k) : m__4461__auto__.call(null,o,k));\n} else {\nthrow cljs.core.missing_protocol(\x22ILookup.-lookup\x22,o);\n}\n}\n});\nvar G__40344__3 \x3d (function (o,k,not_found){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._lookup[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(o,k,not_found) : m__4464__auto__.call(null,o,k,not_found));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._lookup[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(o,k,not_found) : m__4461__auto__.call(null,o,k,not_found));\n} else {\nthrow cljs.core.missing_protocol(\x22ILookup.-lookup\x22,o);\n}\n}\n});\nG__40344 \x3d function(o,k,not_found){\nswitch(arguments.length){\ncase 2:\nreturn G__40344__2.call(this,o,k);\ncase 3:\nreturn G__40344__3.call(this,o,k,not_found);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__40344.cljs$core$IFn$_invoke$arity$2 \x3d G__40344__2;\nG__40344.cljs$core$IFn$_invoke$arity$3 \x3d G__40344__3;\nreturn G__40344;\n})()\n;\n/**\n * Use k to look up a value in o. If not-found is supplied and k is not\n *   a valid value that can be used for look up, not-found is returned.\n */\ncljs.core._lookup \x3d (function cljs$core$_lookup(var_args){\nvar G__38323 \x3d arguments.length;\nswitch (G__38323) {\ncase 2:\nreturn cljs.core._lookup.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._lookup.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._lookup.cljs$core$IFn$_invoke$arity$2 \x3d (function (o,k){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ILookup$_lookup$arity$2 \x3d\x3d null)))))){\nreturn o.cljs$core$ILookup$_lookup$arity$2(o,k);\n} else {\nreturn cljs$core$ILookup$_lookup$dyn_40343(o,k);\n}\n}));\n\n(cljs.core._lookup.cljs$core$IFn$_invoke$arity$3 \x3d (function (o,k,not_found){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ILookup$_lookup$arity$3 \x3d\x3d null)))))){\nreturn o.cljs$core$ILookup$_lookup$arity$3(o,k,not_found);\n} else {\nreturn cljs$core$ILookup$_lookup$dyn_40343(o,k,not_found);\n}\n}));\n\n(cljs.core._lookup.cljs$lang$maxFixedArity \x3d 3);\n\n\n\n/**\n * Protocol for adding associativity to collections.\n * @interface\n */\ncljs.core.IAssociative \x3d function(){};\n\nvar cljs$core$IAssociative$_contains_key_QMARK_$dyn_40356 \x3d (function (coll,k){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._contains_key_QMARK_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,k) : m__4464__auto__.call(null,coll,k));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._contains_key_QMARK_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,k) : m__4461__auto__.call(null,coll,k));\n} else {\nthrow cljs.core.missing_protocol(\x22IAssociative.-contains-key?\x22,coll);\n}\n}\n});\n/**\n * Returns true if k is a key in coll.\n */\ncljs.core._contains_key_QMARK_ \x3d (function cljs$core$_contains_key_QMARK_(coll,k){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$IAssociative$_contains_key_QMARK_$arity$2(coll,k);\n} else {\nreturn cljs$core$IAssociative$_contains_key_QMARK_$dyn_40356(coll,k);\n}\n});\n\nvar cljs$core$IAssociative$_assoc$dyn_40360 \x3d (function (coll,k,v){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._assoc[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,v) : m__4464__auto__.call(null,coll,k,v));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._assoc[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,v) : m__4461__auto__.call(null,coll,k,v));\n} else {\nthrow cljs.core.missing_protocol(\x22IAssociative.-assoc\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll with a mapping from key k to\n *   value v added to it.\n */\ncljs.core._assoc \x3d (function cljs$core$_assoc(coll,k,v){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IAssociative$_assoc$arity$3 \x3d\x3d null)))))){\nreturn coll.cljs$core$IAssociative$_assoc$arity$3(coll,k,v);\n} else {\nreturn cljs$core$IAssociative$_assoc$dyn_40360(coll,k,v);\n}\n});\n\n\n/**\n * Protocol for implementing entry finding in collections.\n * @interface\n */\ncljs.core.IFind \x3d function(){};\n\nvar cljs$core$IFind$_find$dyn_40365 \x3d (function (coll,k){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._find[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,k) : m__4464__auto__.call(null,coll,k));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._find[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,k) : m__4461__auto__.call(null,coll,k));\n} else {\nthrow cljs.core.missing_protocol(\x22IFind.-find\x22,coll);\n}\n}\n});\n/**\n * Returns the map entry for key, or nil if key not present.\n */\ncljs.core._find \x3d (function cljs$core$_find(coll,k){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IFind$_find$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$IFind$_find$arity$2(coll,k);\n} else {\nreturn cljs$core$IFind$_find$dyn_40365(coll,k);\n}\n});\n\n\n/**\n * Protocol for adding mapping functionality to collections.\n * @interface\n */\ncljs.core.IMap \x3d function(){};\n\nvar cljs$core$IMap$_dissoc$dyn_40366 \x3d (function (coll,k){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._dissoc[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,k) : m__4464__auto__.call(null,coll,k));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._dissoc[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,k) : m__4461__auto__.call(null,coll,k));\n} else {\nthrow cljs.core.missing_protocol(\x22IMap.-dissoc\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll without the mapping for key k.\n */\ncljs.core._dissoc \x3d (function cljs$core$_dissoc(coll,k){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IMap$_dissoc$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$IMap$_dissoc$arity$2(coll,k);\n} else {\nreturn cljs$core$IMap$_dissoc$dyn_40366(coll,k);\n}\n});\n\n\n/**\n * Protocol for examining a map entry.\n * @interface\n */\ncljs.core.IMapEntry \x3d function(){};\n\nvar cljs$core$IMapEntry$_key$dyn_40367 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._key[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._key[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IMapEntry.-key\x22,coll);\n}\n}\n});\n/**\n * Returns the key of the map entry.\n */\ncljs.core._key \x3d (function cljs$core$_key(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IMapEntry$_key$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IMapEntry$_key$arity$1(coll);\n} else {\nreturn cljs$core$IMapEntry$_key$dyn_40367(coll);\n}\n});\n\nvar cljs$core$IMapEntry$_val$dyn_40368 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._val[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._val[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IMapEntry.-val\x22,coll);\n}\n}\n});\n/**\n * Returns the value of the map entry.\n */\ncljs.core._val \x3d (function cljs$core$_val(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IMapEntry$_val$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IMapEntry$_val$arity$1(coll);\n} else {\nreturn cljs$core$IMapEntry$_val$dyn_40368(coll);\n}\n});\n\n\n/**\n * Protocol for adding set functionality to a collection.\n * @interface\n */\ncljs.core.ISet \x3d function(){};\n\nvar cljs$core$ISet$_disjoin$dyn_40369 \x3d (function (coll,v){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._disjoin[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,v) : m__4464__auto__.call(null,coll,v));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._disjoin[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,v) : m__4461__auto__.call(null,coll,v));\n} else {\nthrow cljs.core.missing_protocol(\x22ISet.-disjoin\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll that does not contain v.\n */\ncljs.core._disjoin \x3d (function cljs$core$_disjoin(coll,v){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISet$_disjoin$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISet$_disjoin$arity$2(coll,v);\n} else {\nreturn cljs$core$ISet$_disjoin$dyn_40369(coll,v);\n}\n});\n\n\n/**\n * Protocol for collections to provide access to their items as stacks. The top\n *   of the stack should be accessed in the most efficient way for the different\n *   data structures.\n * @interface\n */\ncljs.core.IStack \x3d function(){};\n\nvar cljs$core$IStack$_peek$dyn_40373 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._peek[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._peek[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IStack.-peek\x22,coll);\n}\n}\n});\n/**\n * Returns the item from the top of the stack. Is used by cljs.core/peek.\n */\ncljs.core._peek \x3d (function cljs$core$_peek(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IStack$_peek$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IStack$_peek$arity$1(coll);\n} else {\nreturn cljs$core$IStack$_peek$dyn_40373(coll);\n}\n});\n\nvar cljs$core$IStack$_pop$dyn_40374 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._pop[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._pop[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IStack.-pop\x22,coll);\n}\n}\n});\n/**\n * Returns a new stack without the item on top of the stack. Is used\n *   by cljs.core/pop.\n */\ncljs.core._pop \x3d (function cljs$core$_pop(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IStack$_pop$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IStack$_pop$arity$1(coll);\n} else {\nreturn cljs$core$IStack$_pop$dyn_40374(coll);\n}\n});\n\n\n/**\n * Protocol for adding vector functionality to collections.\n * @interface\n */\ncljs.core.IVector \x3d function(){};\n\nvar cljs$core$IVector$_assoc_n$dyn_40378 \x3d (function (coll,n,val){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._assoc_n[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,n,val) : m__4464__auto__.call(null,coll,n,val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._assoc_n[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,n,val) : m__4461__auto__.call(null,coll,n,val));\n} else {\nthrow cljs.core.missing_protocol(\x22IVector.-assoc-n\x22,coll);\n}\n}\n});\n/**\n * Returns a new vector with value val added at position n.\n */\ncljs.core._assoc_n \x3d (function cljs$core$_assoc_n(coll,n,val){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IVector$_assoc_n$arity$3 \x3d\x3d null)))))){\nreturn coll.cljs$core$IVector$_assoc_n$arity$3(coll,n,val);\n} else {\nreturn cljs$core$IVector$_assoc_n$dyn_40378(coll,n,val);\n}\n});\n\n\n/**\n * Protocol for adding dereference functionality to a reference.\n * @interface\n */\ncljs.core.IDeref \x3d function(){};\n\nvar cljs$core$IDeref$_deref$dyn_40382 \x3d (function (o){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._deref[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4464__auto__.call(null,o));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._deref[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4461__auto__.call(null,o));\n} else {\nthrow cljs.core.missing_protocol(\x22IDeref.-deref\x22,o);\n}\n}\n});\n/**\n * Returns the value of the reference o.\n */\ncljs.core._deref \x3d (function cljs$core$_deref(o){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IDeref$_deref$arity$1 \x3d\x3d null)))))){\nreturn o.cljs$core$IDeref$_deref$arity$1(o);\n} else {\nreturn cljs$core$IDeref$_deref$dyn_40382(o);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.core.IDerefWithTimeout \x3d function(){};\n\nvar cljs$core$IDerefWithTimeout$_deref_with_timeout$dyn_40393 \x3d (function (o,msec,timeout_val){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._deref_with_timeout[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(o,msec,timeout_val) : m__4464__auto__.call(null,o,msec,timeout_val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._deref_with_timeout[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(o,msec,timeout_val) : m__4461__auto__.call(null,o,msec,timeout_val));\n} else {\nthrow cljs.core.missing_protocol(\x22IDerefWithTimeout.-deref-with-timeout\x22,o);\n}\n}\n});\ncljs.core._deref_with_timeout \x3d (function cljs$core$_deref_with_timeout(o,msec,timeout_val){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IDerefWithTimeout$_deref_with_timeout$arity$3 \x3d\x3d null)))))){\nreturn o.cljs$core$IDerefWithTimeout$_deref_with_timeout$arity$3(o,msec,timeout_val);\n} else {\nreturn cljs$core$IDerefWithTimeout$_deref_with_timeout$dyn_40393(o,msec,timeout_val);\n}\n});\n\n\n/**\n * Protocol for accessing the metadata of an object.\n * @interface\n */\ncljs.core.IMeta \x3d function(){};\n\nvar cljs$core$IMeta$_meta$dyn_40401 \x3d (function (o){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._meta[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4464__auto__.call(null,o));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._meta[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4461__auto__.call(null,o));\n} else {\nthrow cljs.core.missing_protocol(\x22IMeta.-meta\x22,o);\n}\n}\n});\n/**\n * Returns the metadata of object o.\n */\ncljs.core._meta \x3d (function cljs$core$_meta(o){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IMeta$_meta$arity$1 \x3d\x3d null)))))){\nreturn o.cljs$core$IMeta$_meta$arity$1(o);\n} else {\nreturn cljs$core$IMeta$_meta$dyn_40401(o);\n}\n});\n\n\n/**\n * Protocol for adding metadata to an object.\n * @interface\n */\ncljs.core.IWithMeta \x3d function(){};\n\nvar cljs$core$IWithMeta$_with_meta$dyn_40413 \x3d (function (o,meta){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._with_meta[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(o,meta) : m__4464__auto__.call(null,o,meta));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._with_meta[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(o,meta) : m__4461__auto__.call(null,o,meta));\n} else {\nthrow cljs.core.missing_protocol(\x22IWithMeta.-with-meta\x22,o);\n}\n}\n});\n/**\n * Returns a new object with value of o and metadata meta added to it.\n */\ncljs.core._with_meta \x3d (function cljs$core$_with_meta(o,meta){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IWithMeta$_with_meta$arity$2 \x3d\x3d null)))))){\nreturn o.cljs$core$IWithMeta$_with_meta$arity$2(o,meta);\n} else {\nreturn cljs$core$IWithMeta$_with_meta$dyn_40413(o,meta);\n}\n});\n\n\n/**\n * Protocol for seq types that can reduce themselves.\n *   Called by cljs.core/reduce.\n * @interface\n */\ncljs.core.IReduce \x3d function(){};\n\nvar cljs$core$IReduce$_reduce$dyn_40415 \x3d (function() {\nvar G__40416 \x3d null;\nvar G__40416__2 \x3d (function (coll,f){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._reduce[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,f) : m__4464__auto__.call(null,coll,f));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._reduce[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,f) : m__4461__auto__.call(null,coll,f));\n} else {\nthrow cljs.core.missing_protocol(\x22IReduce.-reduce\x22,coll);\n}\n}\n});\nvar G__40416__3 \x3d (function (coll,f,start){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._reduce[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,f,start) : m__4464__auto__.call(null,coll,f,start));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._reduce[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,f,start) : m__4461__auto__.call(null,coll,f,start));\n} else {\nthrow cljs.core.missing_protocol(\x22IReduce.-reduce\x22,coll);\n}\n}\n});\nG__40416 \x3d function(coll,f,start){\nswitch(arguments.length){\ncase 2:\nreturn G__40416__2.call(this,coll,f);\ncase 3:\nreturn G__40416__3.call(this,coll,f,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__40416.cljs$core$IFn$_invoke$arity$2 \x3d G__40416__2;\nG__40416.cljs$core$IFn$_invoke$arity$3 \x3d G__40416__3;\nreturn G__40416;\n})()\n;\n/**\n * f should be a function of 2 arguments. If start is not supplied,\n *   returns the result of applying f to the first 2 items in coll, then\n *   applying f to that result and the 3rd item, etc.\n */\ncljs.core._reduce \x3d (function cljs$core$_reduce(var_args){\nvar G__38325 \x3d arguments.length;\nswitch (G__38325) {\ncase 2:\nreturn cljs.core._reduce.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._reduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._reduce.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,f){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IReduce$_reduce$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$IReduce$_reduce$arity$2(coll,f);\n} else {\nreturn cljs$core$IReduce$_reduce$dyn_40415(coll,f);\n}\n}));\n\n(cljs.core._reduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,f,start){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IReduce$_reduce$arity$3 \x3d\x3d null)))))){\nreturn coll.cljs$core$IReduce$_reduce$arity$3(coll,f,start);\n} else {\nreturn cljs$core$IReduce$_reduce$dyn_40415(coll,f,start);\n}\n}));\n\n(cljs.core._reduce.cljs$lang$maxFixedArity \x3d 3);\n\n\n\n/**\n * Protocol for associative types that can reduce themselves\n *   via a function of key and val. Called by cljs.core/reduce-kv.\n * @interface\n */\ncljs.core.IKVReduce \x3d function(){};\n\nvar cljs$core$IKVReduce$_kv_reduce$dyn_40426 \x3d (function (coll,f,init){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._kv_reduce[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,f,init) : m__4464__auto__.call(null,coll,f,init));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._kv_reduce[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,f,init) : m__4461__auto__.call(null,coll,f,init));\n} else {\nthrow cljs.core.missing_protocol(\x22IKVReduce.-kv-reduce\x22,coll);\n}\n}\n});\n/**\n * Reduces an associative collection and returns the result. f should be\n *   a function that takes three arguments.\n */\ncljs.core._kv_reduce \x3d (function cljs$core$_kv_reduce(coll,f,init){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d\x3d null)))))){\nreturn coll.cljs$core$IKVReduce$_kv_reduce$arity$3(coll,f,init);\n} else {\nreturn cljs$core$IKVReduce$_kv_reduce$dyn_40426(coll,f,init);\n}\n});\n\n\n/**\n * Protocol for adding value comparison functionality to a type.\n * @interface\n */\ncljs.core.IEquiv \x3d function(){};\n\nvar cljs$core$IEquiv$_equiv$dyn_40434 \x3d (function (o,other){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._equiv[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(o,other) : m__4464__auto__.call(null,o,other));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._equiv[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(o,other) : m__4461__auto__.call(null,o,other));\n} else {\nthrow cljs.core.missing_protocol(\x22IEquiv.-equiv\x22,o);\n}\n}\n});\n/**\n * Returns true if o and other are equal, false otherwise.\n */\ncljs.core._equiv \x3d (function cljs$core$_equiv(o,other){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IEquiv$_equiv$arity$2 \x3d\x3d null)))))){\nreturn o.cljs$core$IEquiv$_equiv$arity$2(o,other);\n} else {\nreturn cljs$core$IEquiv$_equiv$dyn_40434(o,other);\n}\n});\n\n\n/**\n * Protocol for adding hashing functionality to a type.\n * @interface\n */\ncljs.core.IHash \x3d function(){};\n\nvar cljs$core$IHash$_hash$dyn_40435 \x3d (function (o){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._hash[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4464__auto__.call(null,o));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._hash[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4461__auto__.call(null,o));\n} else {\nthrow cljs.core.missing_protocol(\x22IHash.-hash\x22,o);\n}\n}\n});\n/**\n * Returns the hash code of o.\n */\ncljs.core._hash \x3d (function cljs$core$_hash(o){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IHash$_hash$arity$1 \x3d\x3d null)))))){\nreturn o.cljs$core$IHash$_hash$arity$1(o);\n} else {\nreturn cljs$core$IHash$_hash$dyn_40435(o);\n}\n});\n\n\n/**\n * Protocol for adding the ability to a type to be transformed into a sequence.\n * @interface\n */\ncljs.core.ISeqable \x3d function(){};\n\nvar cljs$core$ISeqable$_seq$dyn_40436 \x3d (function (o){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._seq[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4464__auto__.call(null,o));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._seq[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4461__auto__.call(null,o));\n} else {\nthrow cljs.core.missing_protocol(\x22ISeqable.-seq\x22,o);\n}\n}\n});\n/**\n * Returns a seq of o, or nil if o is empty.\n */\ncljs.core._seq \x3d (function cljs$core$_seq(o){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ISeqable$_seq$arity$1 \x3d\x3d null)))))){\nreturn o.cljs$core$ISeqable$_seq$arity$1(o);\n} else {\nreturn cljs$core$ISeqable$_seq$dyn_40436(o);\n}\n});\n\n\n/**\n * Marker interface indicating a persistent collection of sequential items\n * @interface\n */\ncljs.core.ISequential \x3d function(){};\n\n\n/**\n * Marker interface indicating a persistent list\n * @interface\n */\ncljs.core.IList \x3d function(){};\n\n\n/**\n * Marker interface indicating a record object\n * @interface\n */\ncljs.core.IRecord \x3d function(){};\n\n\n/**\n * Protocol for reversing a seq.\n * @interface\n */\ncljs.core.IReversible \x3d function(){};\n\nvar cljs$core$IReversible$_rseq$dyn_40438 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._rseq[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._rseq[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IReversible.-rseq\x22,coll);\n}\n}\n});\n/**\n * Returns a seq of the items in coll in reversed order.\n */\ncljs.core._rseq \x3d (function cljs$core$_rseq(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IReversible$_rseq$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IReversible$_rseq$arity$1(coll);\n} else {\nreturn cljs$core$IReversible$_rseq$dyn_40438(coll);\n}\n});\n\n\n/**\n * Protocol for a collection which can represent their items\n *   in a sorted manner. \n * @interface\n */\ncljs.core.ISorted \x3d function(){};\n\nvar cljs$core$ISorted$_sorted_seq$dyn_40441 \x3d (function (coll,ascending_QMARK_){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._sorted_seq[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,ascending_QMARK_) : m__4464__auto__.call(null,coll,ascending_QMARK_));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._sorted_seq[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,ascending_QMARK_) : m__4461__auto__.call(null,coll,ascending_QMARK_));\n} else {\nthrow cljs.core.missing_protocol(\x22ISorted.-sorted-seq\x22,coll);\n}\n}\n});\n/**\n * Returns a sorted seq from coll in either ascending or descending order.\n */\ncljs.core._sorted_seq \x3d (function cljs$core$_sorted_seq(coll,ascending_QMARK_){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISorted$_sorted_seq$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISorted$_sorted_seq$arity$2(coll,ascending_QMARK_);\n} else {\nreturn cljs$core$ISorted$_sorted_seq$dyn_40441(coll,ascending_QMARK_);\n}\n});\n\nvar cljs$core$ISorted$_sorted_seq_from$dyn_40446 \x3d (function (coll,k,ascending_QMARK_){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._sorted_seq_from[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,ascending_QMARK_) : m__4464__auto__.call(null,coll,k,ascending_QMARK_));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._sorted_seq_from[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,ascending_QMARK_) : m__4461__auto__.call(null,coll,k,ascending_QMARK_));\n} else {\nthrow cljs.core.missing_protocol(\x22ISorted.-sorted-seq-from\x22,coll);\n}\n}\n});\n/**\n * Returns a sorted seq from coll in either ascending or descending order.\n *   If ascending is true, the result should contain all items which are \x3e or \x3e\x3d\n *   than k. If ascending is false, the result should contain all items which\n *   are \x3c or \x3c\x3d than k, e.g.\n *   (-sorted-seq-from (sorted-set 1 2 3 4 5) 3 true) \x3d\x3e (3 4 5)\n *   (-sorted-seq-from (sorted-set 1 2 3 4 5) 3 false) \x3d\x3e (3 2 1)\n */\ncljs.core._sorted_seq_from \x3d (function cljs$core$_sorted_seq_from(coll,k,ascending_QMARK_){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISorted$_sorted_seq_from$arity$3 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISorted$_sorted_seq_from$arity$3(coll,k,ascending_QMARK_);\n} else {\nreturn cljs$core$ISorted$_sorted_seq_from$dyn_40446(coll,k,ascending_QMARK_);\n}\n});\n\nvar cljs$core$ISorted$_entry_key$dyn_40449 \x3d (function (coll,entry){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._entry_key[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(coll,entry) : m__4464__auto__.call(null,coll,entry));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._entry_key[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(coll,entry) : m__4461__auto__.call(null,coll,entry));\n} else {\nthrow cljs.core.missing_protocol(\x22ISorted.-entry-key\x22,coll);\n}\n}\n});\n/**\n * Returns the key for entry.\n */\ncljs.core._entry_key \x3d (function cljs$core$_entry_key(coll,entry){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISorted$_entry_key$arity$2 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISorted$_entry_key$arity$2(coll,entry);\n} else {\nreturn cljs$core$ISorted$_entry_key$dyn_40449(coll,entry);\n}\n});\n\nvar cljs$core$ISorted$_comparator$dyn_40454 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._comparator[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._comparator[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22ISorted.-comparator\x22,coll);\n}\n}\n});\n/**\n * Returns the comparator for coll.\n */\ncljs.core._comparator \x3d (function cljs$core$_comparator(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$ISorted$_comparator$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$ISorted$_comparator$arity$1(coll);\n} else {\nreturn cljs$core$ISorted$_comparator$dyn_40454(coll);\n}\n});\n\n\n/**\n * Protocol for writing. Currently only implemented by StringBufferWriter.\n * @interface\n */\ncljs.core.IWriter \x3d function(){};\n\nvar cljs$core$IWriter$_write$dyn_40459 \x3d (function (writer,s){\nvar x__4463__auto__ \x3d (((writer \x3d\x3d null))?null:writer);\nvar m__4464__auto__ \x3d (cljs.core._write[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(writer,s) : m__4464__auto__.call(null,writer,s));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._write[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(writer,s) : m__4461__auto__.call(null,writer,s));\n} else {\nthrow cljs.core.missing_protocol(\x22IWriter.-write\x22,writer);\n}\n}\n});\n/**\n * Writes s with writer and returns the result.\n */\ncljs.core._write \x3d (function cljs$core$_write(writer,s){\nif((((!((writer \x3d\x3d null)))) \x26\x26 ((!((writer.cljs$core$IWriter$_write$arity$2 \x3d\x3d null)))))){\nreturn writer.cljs$core$IWriter$_write$arity$2(writer,s);\n} else {\nreturn cljs$core$IWriter$_write$dyn_40459(writer,s);\n}\n});\n\nvar cljs$core$IWriter$_flush$dyn_40466 \x3d (function (writer){\nvar x__4463__auto__ \x3d (((writer \x3d\x3d null))?null:writer);\nvar m__4464__auto__ \x3d (cljs.core._flush[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(writer) : m__4464__auto__.call(null,writer));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._flush[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(writer) : m__4461__auto__.call(null,writer));\n} else {\nthrow cljs.core.missing_protocol(\x22IWriter.-flush\x22,writer);\n}\n}\n});\n/**\n * Flush writer.\n */\ncljs.core._flush \x3d (function cljs$core$_flush(writer){\nif((((!((writer \x3d\x3d null)))) \x26\x26 ((!((writer.cljs$core$IWriter$_flush$arity$1 \x3d\x3d null)))))){\nreturn writer.cljs$core$IWriter$_flush$arity$1(writer);\n} else {\nreturn cljs$core$IWriter$_flush$dyn_40466(writer);\n}\n});\n\n\n/**\n * The old IPrintable protocol\x27s implementation consisted of building a giant\n * list of strings to concatenate.  This involved lots of concat calls,\n * intermediate vectors, and lazy-seqs, and was very slow in some older JS\n * engines.  IPrintWithWriter implements printing via the IWriter protocol, so it\n * be implemented efficiently in terms of e.g. a StringBuffer append.\n * @interface\n */\ncljs.core.IPrintWithWriter \x3d function(){};\n\nvar cljs$core$IPrintWithWriter$_pr_writer$dyn_40468 \x3d (function (o,writer,opts){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._pr_writer[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(o,writer,opts) : m__4464__auto__.call(null,o,writer,opts));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._pr_writer[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(o,writer,opts) : m__4461__auto__.call(null,o,writer,opts));\n} else {\nthrow cljs.core.missing_protocol(\x22IPrintWithWriter.-pr-writer\x22,o);\n}\n}\n});\ncljs.core._pr_writer \x3d (function cljs$core$_pr_writer(o,writer,opts){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d\x3d null)))))){\nreturn o.cljs$core$IPrintWithWriter$_pr_writer$arity$3(o,writer,opts);\n} else {\nreturn cljs$core$IPrintWithWriter$_pr_writer$dyn_40468(o,writer,opts);\n}\n});\n\n\n/**\n * Protocol for types which can have a deferred realization. Currently only\n *   implemented by Delay and LazySeq.\n * @interface\n */\ncljs.core.IPending \x3d function(){};\n\nvar cljs$core$IPending$_realized_QMARK_$dyn_40474 \x3d (function (x){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._realized_QMARK_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4464__auto__.call(null,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._realized_QMARK_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4461__auto__.call(null,x));\n} else {\nthrow cljs.core.missing_protocol(\x22IPending.-realized?\x22,x);\n}\n}\n});\n/**\n * Returns true if a value for x has been produced, false otherwise.\n */\ncljs.core._realized_QMARK_ \x3d (function cljs$core$_realized_QMARK_(x){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$IPending$_realized_QMARK_$arity$1 \x3d\x3d null)))))){\nreturn x.cljs$core$IPending$_realized_QMARK_$arity$1(x);\n} else {\nreturn cljs$core$IPending$_realized_QMARK_$dyn_40474(x);\n}\n});\n\n\n/**\n * Protocol for types that can be watched. Currently only implemented by Atom.\n * @interface\n */\ncljs.core.IWatchable \x3d function(){};\n\nvar cljs$core$IWatchable$_notify_watches$dyn_40475 \x3d (function (this$,oldval,newval){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._notify_watches[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(this$,oldval,newval) : m__4464__auto__.call(null,this$,oldval,newval));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._notify_watches[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(this$,oldval,newval) : m__4461__auto__.call(null,this$,oldval,newval));\n} else {\nthrow cljs.core.missing_protocol(\x22IWatchable.-notify-watches\x22,this$);\n}\n}\n});\n/**\n * Calls all watchers with this, oldval and newval.\n */\ncljs.core._notify_watches \x3d (function cljs$core$_notify_watches(this$,oldval,newval){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IWatchable$_notify_watches$arity$3 \x3d\x3d null)))))){\nreturn this$.cljs$core$IWatchable$_notify_watches$arity$3(this$,oldval,newval);\n} else {\nreturn cljs$core$IWatchable$_notify_watches$dyn_40475(this$,oldval,newval);\n}\n});\n\nvar cljs$core$IWatchable$_add_watch$dyn_40476 \x3d (function (this$,key,f){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._add_watch[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(this$,key,f) : m__4464__auto__.call(null,this$,key,f));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._add_watch[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(this$,key,f) : m__4461__auto__.call(null,this$,key,f));\n} else {\nthrow cljs.core.missing_protocol(\x22IWatchable.-add-watch\x22,this$);\n}\n}\n});\n/**\n * Adds a watcher function f to this. Keys must be unique per reference,\n *   and can be used to remove the watch with -remove-watch.\n */\ncljs.core._add_watch \x3d (function cljs$core$_add_watch(this$,key,f){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IWatchable$_add_watch$arity$3 \x3d\x3d null)))))){\nreturn this$.cljs$core$IWatchable$_add_watch$arity$3(this$,key,f);\n} else {\nreturn cljs$core$IWatchable$_add_watch$dyn_40476(this$,key,f);\n}\n});\n\nvar cljs$core$IWatchable$_remove_watch$dyn_40485 \x3d (function (this$,key){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core._remove_watch[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,key) : m__4464__auto__.call(null,this$,key));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._remove_watch[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,key) : m__4461__auto__.call(null,this$,key));\n} else {\nthrow cljs.core.missing_protocol(\x22IWatchable.-remove-watch\x22,this$);\n}\n}\n});\n/**\n * Removes watcher that corresponds to key from this.\n */\ncljs.core._remove_watch \x3d (function cljs$core$_remove_watch(this$,key){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$IWatchable$_remove_watch$arity$2 \x3d\x3d null)))))){\nreturn this$.cljs$core$IWatchable$_remove_watch$arity$2(this$,key);\n} else {\nreturn cljs$core$IWatchable$_remove_watch$dyn_40485(this$,key);\n}\n});\n\n\n/**\n * Protocol for collections which can transformed to transients.\n * @interface\n */\ncljs.core.IEditableCollection \x3d function(){};\n\nvar cljs$core$IEditableCollection$_as_transient$dyn_40492 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._as_transient[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._as_transient[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IEditableCollection.-as-transient\x22,coll);\n}\n}\n});\n/**\n * Returns a new, transient version of the collection, in constant time.\n */\ncljs.core._as_transient \x3d (function cljs$core$_as_transient(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IEditableCollection$_as_transient$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IEditableCollection$_as_transient$arity$1(coll);\n} else {\nreturn cljs$core$IEditableCollection$_as_transient$dyn_40492(coll);\n}\n});\n\n\n/**\n * Protocol for adding basic functionality to transient collections.\n * @interface\n */\ncljs.core.ITransientCollection \x3d function(){};\n\nvar cljs$core$ITransientCollection$_conj_BANG_$dyn_40500 \x3d (function (tcoll,val){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._conj_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(tcoll,val) : m__4464__auto__.call(null,tcoll,val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._conj_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(tcoll,val) : m__4461__auto__.call(null,tcoll,val));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientCollection.-conj!\x22,tcoll);\n}\n}\n});\n/**\n * Adds value val to tcoll and returns tcoll.\n */\ncljs.core._conj_BANG_ \x3d (function cljs$core$_conj_BANG_(tcoll,val){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientCollection$_conj_BANG_$arity$2 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientCollection$_conj_BANG_$arity$2(tcoll,val);\n} else {\nreturn cljs$core$ITransientCollection$_conj_BANG_$dyn_40500(tcoll,val);\n}\n});\n\nvar cljs$core$ITransientCollection$_persistent_BANG_$dyn_40501 \x3d (function (tcoll){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._persistent_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(tcoll) : m__4464__auto__.call(null,tcoll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._persistent_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(tcoll) : m__4461__auto__.call(null,tcoll));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientCollection.-persistent!\x22,tcoll);\n}\n}\n});\n/**\n * Creates a persistent data structure from tcoll and returns it.\n */\ncljs.core._persistent_BANG_ \x3d (function cljs$core$_persistent_BANG_(tcoll){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientCollection$_persistent_BANG_$arity$1(tcoll);\n} else {\nreturn cljs$core$ITransientCollection$_persistent_BANG_$dyn_40501(tcoll);\n}\n});\n\n\n/**\n * Protocol for adding associativity to transient collections.\n * @interface\n */\ncljs.core.ITransientAssociative \x3d function(){};\n\nvar cljs$core$ITransientAssociative$_assoc_BANG_$dyn_40503 \x3d (function (tcoll,key,val){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._assoc_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(tcoll,key,val) : m__4464__auto__.call(null,tcoll,key,val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._assoc_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(tcoll,key,val) : m__4461__auto__.call(null,tcoll,key,val));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientAssociative.-assoc!\x22,tcoll);\n}\n}\n});\n/**\n * Returns a new transient collection of tcoll with a mapping from key to\n *   val added to it.\n */\ncljs.core._assoc_BANG_ \x3d (function cljs$core$_assoc_BANG_(tcoll,key,val){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3(tcoll,key,val);\n} else {\nreturn cljs$core$ITransientAssociative$_assoc_BANG_$dyn_40503(tcoll,key,val);\n}\n});\n\n\n/**\n * Protocol for adding mapping functionality to transient collections.\n * @interface\n */\ncljs.core.ITransientMap \x3d function(){};\n\nvar cljs$core$ITransientMap$_dissoc_BANG_$dyn_40508 \x3d (function (tcoll,key){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._dissoc_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(tcoll,key) : m__4464__auto__.call(null,tcoll,key));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._dissoc_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(tcoll,key) : m__4461__auto__.call(null,tcoll,key));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientMap.-dissoc!\x22,tcoll);\n}\n}\n});\n/**\n * Returns a new transient collection of tcoll without the mapping for key.\n */\ncljs.core._dissoc_BANG_ \x3d (function cljs$core$_dissoc_BANG_(tcoll,key){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientMap$_dissoc_BANG_$arity$2 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientMap$_dissoc_BANG_$arity$2(tcoll,key);\n} else {\nreturn cljs$core$ITransientMap$_dissoc_BANG_$dyn_40508(tcoll,key);\n}\n});\n\n\n/**\n * Protocol for adding vector functionality to transient collections.\n * @interface\n */\ncljs.core.ITransientVector \x3d function(){};\n\nvar cljs$core$ITransientVector$_assoc_n_BANG_$dyn_40510 \x3d (function (tcoll,n,val){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._assoc_n_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(tcoll,n,val) : m__4464__auto__.call(null,tcoll,n,val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._assoc_n_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(tcoll,n,val) : m__4461__auto__.call(null,tcoll,n,val));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientVector.-assoc-n!\x22,tcoll);\n}\n}\n});\n/**\n * Returns tcoll with value val added at position n.\n */\ncljs.core._assoc_n_BANG_ \x3d (function cljs$core$_assoc_n_BANG_(tcoll,n,val){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3(tcoll,n,val);\n} else {\nreturn cljs$core$ITransientVector$_assoc_n_BANG_$dyn_40510(tcoll,n,val);\n}\n});\n\nvar cljs$core$ITransientVector$_pop_BANG_$dyn_40519 \x3d (function (tcoll){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._pop_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(tcoll) : m__4464__auto__.call(null,tcoll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._pop_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(tcoll) : m__4461__auto__.call(null,tcoll));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientVector.-pop!\x22,tcoll);\n}\n}\n});\n/**\n * Returns tcoll with the last item removed from it.\n */\ncljs.core._pop_BANG_ \x3d (function cljs$core$_pop_BANG_(tcoll){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientVector$_pop_BANG_$arity$1 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientVector$_pop_BANG_$arity$1(tcoll);\n} else {\nreturn cljs$core$ITransientVector$_pop_BANG_$dyn_40519(tcoll);\n}\n});\n\n\n/**\n * Protocol for adding set functionality to a transient collection.\n * @interface\n */\ncljs.core.ITransientSet \x3d function(){};\n\nvar cljs$core$ITransientSet$_disjoin_BANG_$dyn_40521 \x3d (function (tcoll,v){\nvar x__4463__auto__ \x3d (((tcoll \x3d\x3d null))?null:tcoll);\nvar m__4464__auto__ \x3d (cljs.core._disjoin_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(tcoll,v) : m__4464__auto__.call(null,tcoll,v));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._disjoin_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(tcoll,v) : m__4461__auto__.call(null,tcoll,v));\n} else {\nthrow cljs.core.missing_protocol(\x22ITransientSet.-disjoin!\x22,tcoll);\n}\n}\n});\n/**\n * Returns tcoll without v.\n */\ncljs.core._disjoin_BANG_ \x3d (function cljs$core$_disjoin_BANG_(tcoll,v){\nif((((!((tcoll \x3d\x3d null)))) \x26\x26 ((!((tcoll.cljs$core$ITransientSet$_disjoin_BANG_$arity$2 \x3d\x3d null)))))){\nreturn tcoll.cljs$core$ITransientSet$_disjoin_BANG_$arity$2(tcoll,v);\n} else {\nreturn cljs$core$ITransientSet$_disjoin_BANG_$dyn_40521(tcoll,v);\n}\n});\n\n\n/**\n * Protocol for values that can be compared.\n * @interface\n */\ncljs.core.IComparable \x3d function(){};\n\nvar cljs$core$IComparable$_compare$dyn_40523 \x3d (function (x,y){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._compare[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(x,y) : m__4464__auto__.call(null,x,y));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._compare[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(x,y) : m__4461__auto__.call(null,x,y));\n} else {\nthrow cljs.core.missing_protocol(\x22IComparable.-compare\x22,x);\n}\n}\n});\n/**\n * Returns a negative number, zero, or a positive number when x is logically\n *   \x27less than\x27, \x27equal to\x27, or \x27greater than\x27 y.\n */\ncljs.core._compare \x3d (function cljs$core$_compare(x,y){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$IComparable$_compare$arity$2 \x3d\x3d null)))))){\nreturn x.cljs$core$IComparable$_compare$arity$2(x,y);\n} else {\nreturn cljs$core$IComparable$_compare$dyn_40523(x,y);\n}\n});\n\n\n/**\n * Protocol for accessing the items of a chunk.\n * @interface\n */\ncljs.core.IChunk \x3d function(){};\n\nvar cljs$core$IChunk$_drop_first$dyn_40525 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._drop_first[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._drop_first[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IChunk.-drop-first\x22,coll);\n}\n}\n});\n/**\n * Return a new chunk of coll with the first item removed.\n */\ncljs.core._drop_first \x3d (function cljs$core$_drop_first(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IChunk$_drop_first$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IChunk$_drop_first$arity$1(coll);\n} else {\nreturn cljs$core$IChunk$_drop_first$dyn_40525(coll);\n}\n});\n\n\n/**\n * Protocol for accessing a collection as sequential chunks.\n * @interface\n */\ncljs.core.IChunkedSeq \x3d function(){};\n\nvar cljs$core$IChunkedSeq$_chunked_first$dyn_40526 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._chunked_first[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._chunked_first[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IChunkedSeq.-chunked-first\x22,coll);\n}\n}\n});\n/**\n * Returns the first chunk in coll.\n */\ncljs.core._chunked_first \x3d (function cljs$core$_chunked_first(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IChunkedSeq$_chunked_first$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IChunkedSeq$_chunked_first$arity$1(coll);\n} else {\nreturn cljs$core$IChunkedSeq$_chunked_first$dyn_40526(coll);\n}\n});\n\nvar cljs$core$IChunkedSeq$_chunked_rest$dyn_40528 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._chunked_rest[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._chunked_rest[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IChunkedSeq.-chunked-rest\x22,coll);\n}\n}\n});\n/**\n * Return a new collection of coll with the first chunk removed.\n */\ncljs.core._chunked_rest \x3d (function cljs$core$_chunked_rest(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IChunkedSeq$_chunked_rest$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IChunkedSeq$_chunked_rest$arity$1(coll);\n} else {\nreturn cljs$core$IChunkedSeq$_chunked_rest$dyn_40528(coll);\n}\n});\n\n\n/**\n * Protocol for accessing the chunks of a collection.\n * @interface\n */\ncljs.core.IChunkedNext \x3d function(){};\n\nvar cljs$core$IChunkedNext$_chunked_next$dyn_40529 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._chunked_next[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._chunked_next[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IChunkedNext.-chunked-next\x22,coll);\n}\n}\n});\n/**\n * Returns a new collection of coll without the first chunk.\n */\ncljs.core._chunked_next \x3d (function cljs$core$_chunked_next(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IChunkedNext$_chunked_next$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IChunkedNext$_chunked_next$arity$1(coll);\n} else {\nreturn cljs$core$IChunkedNext$_chunked_next$dyn_40529(coll);\n}\n});\n\n\n/**\n * Protocol for adding a name.\n * @interface\n */\ncljs.core.INamed \x3d function(){};\n\nvar cljs$core$INamed$_name$dyn_40536 \x3d (function (x){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._name[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4464__auto__.call(null,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._name[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4461__auto__.call(null,x));\n} else {\nthrow cljs.core.missing_protocol(\x22INamed.-name\x22,x);\n}\n}\n});\n/**\n * Returns the name String of x.\n */\ncljs.core._name \x3d (function cljs$core$_name(x){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$INamed$_name$arity$1 \x3d\x3d null)))))){\nreturn x.cljs$core$INamed$_name$arity$1(x);\n} else {\nreturn cljs$core$INamed$_name$dyn_40536(x);\n}\n});\n\nvar cljs$core$INamed$_namespace$dyn_40537 \x3d (function (x){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._namespace[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4464__auto__.call(null,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._namespace[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4461__auto__.call(null,x));\n} else {\nthrow cljs.core.missing_protocol(\x22INamed.-namespace\x22,x);\n}\n}\n});\n/**\n * Returns the namespace String of x.\n */\ncljs.core._namespace \x3d (function cljs$core$_namespace(x){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$INamed$_namespace$arity$1 \x3d\x3d null)))))){\nreturn x.cljs$core$INamed$_namespace$arity$1(x);\n} else {\nreturn cljs$core$INamed$_namespace$dyn_40537(x);\n}\n});\n\n\n/**\n * Marker protocol indicating an atom.\n * @interface\n */\ncljs.core.IAtom \x3d function(){};\n\n\n/**\n * Protocol for adding resetting functionality.\n * @interface\n */\ncljs.core.IReset \x3d function(){};\n\nvar cljs$core$IReset$_reset_BANG_$dyn_40540 \x3d (function (o,new_value){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._reset_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(o,new_value) : m__4464__auto__.call(null,o,new_value));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._reset_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(o,new_value) : m__4461__auto__.call(null,o,new_value));\n} else {\nthrow cljs.core.missing_protocol(\x22IReset.-reset!\x22,o);\n}\n}\n});\n/**\n * Sets the value of o to new-value.\n */\ncljs.core._reset_BANG_ \x3d (function cljs$core$_reset_BANG_(o,new_value){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IReset$_reset_BANG_$arity$2 \x3d\x3d null)))))){\nreturn o.cljs$core$IReset$_reset_BANG_$arity$2(o,new_value);\n} else {\nreturn cljs$core$IReset$_reset_BANG_$dyn_40540(o,new_value);\n}\n});\n\n\n/**\n * Protocol for adding swapping functionality.\n * @interface\n */\ncljs.core.ISwap \x3d function(){};\n\nvar cljs$core$ISwap$_swap_BANG_$dyn_40543 \x3d (function() {\nvar G__40544 \x3d null;\nvar G__40544__2 \x3d (function (o,f){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._swap_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(o,f) : m__4464__auto__.call(null,o,f));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._swap_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(o,f) : m__4461__auto__.call(null,o,f));\n} else {\nthrow cljs.core.missing_protocol(\x22ISwap.-swap!\x22,o);\n}\n}\n});\nvar G__40544__3 \x3d (function (o,f,a){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._swap_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(o,f,a) : m__4464__auto__.call(null,o,f,a));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._swap_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(o,f,a) : m__4461__auto__.call(null,o,f,a));\n} else {\nthrow cljs.core.missing_protocol(\x22ISwap.-swap!\x22,o);\n}\n}\n});\nvar G__40544__4 \x3d (function (o,f,a,b){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._swap_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$4(o,f,a,b) : m__4464__auto__.call(null,o,f,a,b));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._swap_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$4(o,f,a,b) : m__4461__auto__.call(null,o,f,a,b));\n} else {\nthrow cljs.core.missing_protocol(\x22ISwap.-swap!\x22,o);\n}\n}\n});\nvar G__40544__5 \x3d (function (o,f,a,b,xs){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._swap_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$5(o,f,a,b,xs) : m__4464__auto__.call(null,o,f,a,b,xs));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._swap_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$5(o,f,a,b,xs) : m__4461__auto__.call(null,o,f,a,b,xs));\n} else {\nthrow cljs.core.missing_protocol(\x22ISwap.-swap!\x22,o);\n}\n}\n});\nG__40544 \x3d function(o,f,a,b,xs){\nswitch(arguments.length){\ncase 2:\nreturn G__40544__2.call(this,o,f);\ncase 3:\nreturn G__40544__3.call(this,o,f,a);\ncase 4:\nreturn G__40544__4.call(this,o,f,a,b);\ncase 5:\nreturn G__40544__5.call(this,o,f,a,b,xs);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__40544.cljs$core$IFn$_invoke$arity$2 \x3d G__40544__2;\nG__40544.cljs$core$IFn$_invoke$arity$3 \x3d G__40544__3;\nG__40544.cljs$core$IFn$_invoke$arity$4 \x3d G__40544__4;\nG__40544.cljs$core$IFn$_invoke$arity$5 \x3d G__40544__5;\nreturn G__40544;\n})()\n;\n/**\n * Swaps the value of o to be (apply f current-value-of-atom args).\n */\ncljs.core._swap_BANG_ \x3d (function cljs$core$_swap_BANG_(var_args){\nvar G__38327 \x3d arguments.length;\nswitch (G__38327) {\ncase 2:\nreturn cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (o,f){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ISwap$_swap_BANG_$arity$2 \x3d\x3d null)))))){\nreturn o.cljs$core$ISwap$_swap_BANG_$arity$2(o,f);\n} else {\nreturn cljs$core$ISwap$_swap_BANG_$dyn_40543(o,f);\n}\n}));\n\n(cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (o,f,a){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ISwap$_swap_BANG_$arity$3 \x3d\x3d null)))))){\nreturn o.cljs$core$ISwap$_swap_BANG_$arity$3(o,f,a);\n} else {\nreturn cljs$core$ISwap$_swap_BANG_$dyn_40543(o,f,a);\n}\n}));\n\n(cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$4 \x3d (function (o,f,a,b){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ISwap$_swap_BANG_$arity$4 \x3d\x3d null)))))){\nreturn o.cljs$core$ISwap$_swap_BANG_$arity$4(o,f,a,b);\n} else {\nreturn cljs$core$ISwap$_swap_BANG_$dyn_40543(o,f,a,b);\n}\n}));\n\n(cljs.core._swap_BANG_.cljs$core$IFn$_invoke$arity$5 \x3d (function (o,f,a,b,xs){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$ISwap$_swap_BANG_$arity$5 \x3d\x3d null)))))){\nreturn o.cljs$core$ISwap$_swap_BANG_$arity$5(o,f,a,b,xs);\n} else {\nreturn cljs$core$ISwap$_swap_BANG_$dyn_40543(o,f,a,b,xs);\n}\n}));\n\n(cljs.core._swap_BANG_.cljs$lang$maxFixedArity \x3d 5);\n\n\n\n/**\n * Protocol for adding volatile functionality.\n * @interface\n */\ncljs.core.IVolatile \x3d function(){};\n\nvar cljs$core$IVolatile$_vreset_BANG_$dyn_40553 \x3d (function (o,new_value){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (cljs.core._vreset_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(o,new_value) : m__4464__auto__.call(null,o,new_value));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._vreset_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(o,new_value) : m__4461__auto__.call(null,o,new_value));\n} else {\nthrow cljs.core.missing_protocol(\x22IVolatile.-vreset!\x22,o);\n}\n}\n});\n/**\n * Sets the value of volatile o to new-value without regard for the\n *   current value. Returns new-value.\n */\ncljs.core._vreset_BANG_ \x3d (function cljs$core$_vreset_BANG_(o,new_value){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.cljs$core$IVolatile$_vreset_BANG_$arity$2 \x3d\x3d null)))))){\nreturn o.cljs$core$IVolatile$_vreset_BANG_$arity$2(o,new_value);\n} else {\nreturn cljs$core$IVolatile$_vreset_BANG_$dyn_40553(o,new_value);\n}\n});\n\n\n/**\n * Protocol for iterating over a collection.\n * @interface\n */\ncljs.core.IIterable \x3d function(){};\n\nvar cljs$core$IIterable$_iterator$dyn_40555 \x3d (function (coll){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (cljs.core._iterator[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4464__auto__.call(null,coll));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._iterator[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(coll) : m__4461__auto__.call(null,coll));\n} else {\nthrow cljs.core.missing_protocol(\x22IIterable.-iterator\x22,coll);\n}\n}\n});\n/**\n * Returns an iterator for coll.\n */\ncljs.core._iterator \x3d (function cljs$core$_iterator(coll){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.cljs$core$IIterable$_iterator$arity$1 \x3d\x3d null)))))){\nreturn coll.cljs$core$IIterable$_iterator$arity$1(coll);\n} else {\nreturn cljs$core$IIterable$_iterator$dyn_40555(coll);\n}\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n*/\ncljs.core.StringBufferWriter \x3d (function (sb){\nthis.sb \x3d sb;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1073741824;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.StringBufferWriter.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (_,s){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.sb.append(s);\n}));\n\n(cljs.core.StringBufferWriter.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.StringBufferWriter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sb\x22,\x22sb\x22,-1249746442,null)], null);\n}));\n\n(cljs.core.StringBufferWriter.cljs$lang$type \x3d true);\n\n(cljs.core.StringBufferWriter.cljs$lang$ctorStr \x3d \x22cljs.core/StringBufferWriter\x22);\n\n(cljs.core.StringBufferWriter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/StringBufferWriter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/StringBufferWriter.\n */\ncljs.core.__GT_StringBufferWriter \x3d (function cljs$core$__GT_StringBufferWriter(sb){\nreturn (new cljs.core.StringBufferWriter(sb));\n});\n\n/**\n * Support so that collections can implement toString without\n * loading all the printing machinery.\n */\ncljs.core.pr_str_STAR_ \x3d (function cljs$core$pr_str_STAR_(obj){\nvar sb \x3d (new goog.string.StringBuffer());\nvar writer \x3d (new cljs.core.StringBufferWriter(sb));\nobj.cljs$core$IPrintWithWriter$_pr_writer$arity$3(null,writer,cljs.core.pr_opts());\n\nwriter.cljs$core$IWriter$_flush$arity$1(null);\n\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n});\ncljs.core.int_rotate_left \x3d (function cljs$core$int_rotate_left(x,n){\nreturn ((x \x3c\x3c n) | (x \x3e\x3e\x3e (- n)));\n});\nif((((typeof Math !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof Math.imul !\x3d\x3d \x27undefined\x27)) \x26\x26 ((!((Math.imul((4294967295),(5)) \x3d\x3d\x3d (0))))))){\ncljs.core.imul \x3d (function cljs$core$imul(a,b){\nreturn Math.imul(a,b);\n});\n} else {\ncljs.core.imul \x3d (function cljs$core$imul(a,b){\nvar ah \x3d ((a \x3e\x3e\x3e (16)) \x26 (65535));\nvar al \x3d (a \x26 (65535));\nvar bh \x3d ((b \x3e\x3e\x3e (16)) \x26 (65535));\nvar bl \x3d (b \x26 (65535));\nreturn (((al * bl) + ((((ah * bl) + (al * bh)) \x3c\x3c (16)) \x3e\x3e\x3e (0))) | (0));\n});\n}\ncljs.core.m3_seed \x3d (0);\ncljs.core.m3_C1 \x3d ((3432918353) | (0));\ncljs.core.m3_C2 \x3d ((461845907) | (0));\ncljs.core.m3_mix_K1 \x3d (function cljs$core$m3_mix_K1(k1){\nreturn cljs.core.imul(cljs.core.int_rotate_left(cljs.core.imul((k1 | (0)),cljs.core.m3_C1),(15)),cljs.core.m3_C2);\n});\ncljs.core.m3_mix_H1 \x3d (function cljs$core$m3_mix_H1(h1,k1){\nreturn ((cljs.core.imul(cljs.core.int_rotate_left(((h1 | (0)) ^ (k1 | (0))),(13)),(5)) + ((3864292196) | (0))) | (0));\n});\ncljs.core.m3_fmix \x3d (function cljs$core$m3_fmix(h1,len){\nvar h1__$1 \x3d (h1 | (0));\nvar h1__$2 \x3d (h1__$1 ^ len);\nvar h1__$3 \x3d (h1__$2 ^ (h1__$2 \x3e\x3e\x3e (16)));\nvar h1__$4 \x3d cljs.core.imul(h1__$3,((2246822507) | (0)));\nvar h1__$5 \x3d (h1__$4 ^ (h1__$4 \x3e\x3e\x3e (13)));\nvar h1__$6 \x3d cljs.core.imul(h1__$5,((3266489909) | (0)));\nreturn (h1__$6 ^ (h1__$6 \x3e\x3e\x3e (16)));\n});\ncljs.core.m3_hash_int \x3d (function cljs$core$m3_hash_int(in$){\nif((in$ \x3d\x3d\x3d (0))){\nreturn in$;\n} else {\nvar k1 \x3d cljs.core.m3_mix_K1(in$);\nvar h1 \x3d cljs.core.m3_mix_H1(cljs.core.m3_seed,k1);\nreturn cljs.core.m3_fmix(h1,(4));\n}\n});\ncljs.core.m3_hash_unencoded_chars \x3d (function cljs$core$m3_hash_unencoded_chars(in$){\nvar h1 \x3d (function (){var i \x3d (1);\nvar h1 \x3d cljs.core.m3_seed;\nwhile(true){\nif((i \x3c in$.length)){\nvar G__40566 \x3d (i + (2));\nvar G__40567 \x3d cljs.core.m3_mix_H1(h1,cljs.core.m3_mix_K1((in$.charCodeAt((i - (1))) | (in$.charCodeAt(i) \x3c\x3c (16)))));\ni \x3d G__40566;\nh1 \x3d G__40567;\ncontinue;\n} else {\nreturn h1;\n}\nbreak;\n}\n})();\nvar h1__$1 \x3d ((((in$.length \x26 (1)) \x3d\x3d\x3d (1)))?(h1 ^ cljs.core.m3_mix_K1(in$.charCodeAt((in$.length - (1))))):h1);\nreturn cljs.core.m3_fmix(h1__$1,cljs.core.imul((2),in$.length));\n});\n\n\n\ncljs.core.string_hash_cache \x3d ({});\ncljs.core.string_hash_cache_count \x3d (0);\ncljs.core.hash_string_STAR_ \x3d (function cljs$core$hash_string_STAR_(s){\nif((!((s \x3d\x3d null)))){\nvar len \x3d s.length;\nif((len \x3e (0))){\nvar i \x3d (0);\nvar hash \x3d (0);\nwhile(true){\nif((i \x3c len)){\nvar G__40570 \x3d (i + (1));\nvar G__40571 \x3d (cljs.core.imul((31),hash) + s.charCodeAt(i));\ni \x3d G__40570;\nhash \x3d G__40571;\ncontinue;\n} else {\nreturn hash;\n}\nbreak;\n}\n} else {\nreturn (0);\n}\n} else {\nreturn (0);\n}\n});\ncljs.core.add_to_string_hash_cache \x3d (function cljs$core$add_to_string_hash_cache(k){\nvar h \x3d cljs.core.hash_string_STAR_(k);\ngoog.object.set(cljs.core.string_hash_cache,k,h);\n\n(cljs.core.string_hash_cache_count \x3d (cljs.core.string_hash_cache_count + (1)));\n\nreturn h;\n});\ncljs.core.hash_string \x3d (function cljs$core$hash_string(k){\nif((cljs.core.string_hash_cache_count \x3e (255))){\n(cljs.core.string_hash_cache \x3d ({}));\n\n(cljs.core.string_hash_cache_count \x3d (0));\n} else {\n}\n\nif((k \x3d\x3d null)){\nreturn (0);\n} else {\nvar h \x3d (cljs.core.string_hash_cache[k]);\nif(typeof h \x3d\x3d\x3d \x27number\x27){\nreturn h;\n} else {\nreturn cljs.core.add_to_string_hash_cache(k);\n}\n}\n});\n/**\n * Returns the hash code of its argument. Note this is the hash code\n * consistent with \x3d.\n */\ncljs.core.hash \x3d (function cljs$core$hash(o){\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (4194304))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IHash$))))?true:false):false)){\nreturn (o.cljs$core$IHash$_hash$arity$1(null) ^ (0));\n} else {\nif(typeof o \x3d\x3d\x3d \x27number\x27){\nif(cljs.core.truth_(isFinite(o))){\nreturn (Math.floor(o) % (2147483647));\n} else {\nvar G__38333 \x3d o;\nswitch (G__38333) {\ncase Infinity:\nreturn (2146435072);\n\nbreak;\ncase -Infinity:\nreturn (-1048576);\n\nbreak;\ndefault:\nreturn (2146959360);\n\n}\n}\n} else {\nif(o \x3d\x3d\x3d true){\nreturn (1231);\n} else {\nif(o \x3d\x3d\x3d false){\nreturn (1237);\n} else {\nif(typeof o \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.m3_hash_int(cljs.core.hash_string(o));\n} else {\nif((o instanceof Date)){\nreturn (o.valueOf() ^ (0));\n} else {\nif((o \x3d\x3d null)){\nreturn (0);\n} else {\nreturn (cljs.core._hash(o) ^ (0));\n\n}\n}\n}\n}\n}\n}\n}\n});\ncljs.core.hash_combine \x3d (function cljs$core$hash_combine(seed,hash){\nreturn (seed ^ (((hash + (2654435769)) + (seed \x3c\x3c (6))) + (seed \x3e\x3e (2))));\n});\n/**\n * Evaluates x and tests if it is an instance of the type\n *   c. Returns true or false\n */\ncljs.core.instance_QMARK_ \x3d (function cljs$core$instance_QMARK_(c,x){\nreturn (x instanceof c);\n});\n/**\n * Return true if x is a Symbol\n */\ncljs.core.symbol_QMARK_ \x3d (function cljs$core$symbol_QMARK_(x){\nreturn (x instanceof cljs.core.Symbol);\n});\ncljs.core.hash_symbol \x3d (function cljs$core$hash_symbol(sym){\nreturn cljs.core.hash_combine(cljs.core.m3_hash_unencoded_chars(sym.name),cljs.core.hash_string(sym.ns));\n});\ncljs.core.compare_symbols \x3d (function cljs$core$compare_symbols(a,b){\nif((a.str \x3d\x3d\x3d b.str)){\nreturn (0);\n} else {\nif(cljs.core.truth_(((cljs.core.not(a.ns))?b.ns:false))){\nreturn (-1);\n} else {\nif(cljs.core.truth_(a.ns)){\nif(cljs.core.not(b.ns)){\nreturn (1);\n} else {\nvar nsc \x3d goog.array.defaultCompare(a.ns,b.ns);\nif(((0) \x3d\x3d\x3d nsc)){\nreturn goog.array.defaultCompare(a.name,b.name);\n} else {\nreturn nsc;\n}\n}\n} else {\nreturn goog.array.defaultCompare(a.name,b.name);\n\n}\n}\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.INamed}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.Symbol \x3d (function (ns,name,str,_hash,_meta){\nthis.ns \x3d ns;\nthis.name \x3d name;\nthis.str \x3d str;\nthis._hash \x3d _hash;\nthis._meta \x3d _meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2154168321;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 4096;\n});\n(cljs.core.Symbol.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.str;\n}));\n\n(cljs.core.Symbol.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (_,other){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((other instanceof cljs.core.Symbol)){\nreturn (self__.str \x3d\x3d\x3d other.str);\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.Symbol.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__38335 \x3d (arguments.length - (1));\nswitch (G__38335) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.Symbol.prototype.apply \x3d (function (self__,args38334){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args38334)));\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar sym \x3d this;\nreturn (cljs.core.get.cljs$core$IFn$_invoke$arity$2 ? cljs.core.get.cljs$core$IFn$_invoke$arity$2(coll,sym) : cljs.core.get.call(null,coll,sym));\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,not_found){\nvar self__ \x3d this;\nvar sym \x3d this;\nreturn (cljs.core.get.cljs$core$IFn$_invoke$arity$3 ? cljs.core.get.cljs$core$IFn$_invoke$arity$3(coll,sym,not_found) : cljs.core.get.call(null,coll,sym,not_found));\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__._meta;\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_,new_meta){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.Symbol(self__.ns,self__.name,self__.str,self__._hash,new_meta));\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (sym){\nvar self__ \x3d this;\nvar sym__$1 \x3d this;\nvar h__4273__auto__ \x3d self__._hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_symbol(sym__$1);\n(self__._hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$INamed$_name$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.name;\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$INamed$_namespace$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.ns;\n}));\n\n(cljs.core.Symbol.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (o,writer,_){\nvar self__ \x3d this;\nvar o__$1 \x3d this;\nreturn cljs.core._write(writer,self__.str);\n}));\n\n(cljs.core.Symbol.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null),new cljs.core.Symbol(null,\x22str\x22,\x22str\x22,-1564826950,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_hash\x22,\x22_hash\x22,-2130838312,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22_meta\x22,\x22_meta\x22,-1716892533,null)], null);\n}));\n\n(cljs.core.Symbol.cljs$lang$type \x3d true);\n\n(cljs.core.Symbol.cljs$lang$ctorStr \x3d \x22cljs.core/Symbol\x22);\n\n(cljs.core.Symbol.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Symbol\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Symbol.\n */\ncljs.core.__GT_Symbol \x3d (function cljs$core$__GT_Symbol(ns,name,str,_hash,_meta){\nreturn (new cljs.core.Symbol(ns,name,str,_hash,_meta));\n});\n\n/**\n * Returns true if v is of type cljs.core.Var\n */\ncljs.core.var_QMARK_ \x3d (function cljs$core$var_QMARK_(v){\nreturn (v instanceof cljs.core.Var);\n});\n/**\n * Returns a Symbol with the given namespace and name. Arity-1 works\n *   on strings, keywords, and vars.\n */\ncljs.core.symbol \x3d (function cljs$core$symbol(var_args){\nvar G__38337 \x3d arguments.length;\nswitch (G__38337) {\ncase 1:\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.symbol.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nwhile(true){\nif((name instanceof cljs.core.Symbol)){\nreturn name;\n} else {\nif(typeof name \x3d\x3d\x3d \x27string\x27){\nvar idx \x3d name.indexOf(\x22/\x22);\nif((idx \x3c (1))){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(null,name);\n} else {\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(name.substring((0),idx),name.substring((idx + (1)),name.length));\n}\n} else {\nif(cljs.core.var_QMARK_(name)){\nreturn name.sym;\n} else {\nif((name instanceof cljs.core.Keyword)){\nvar G__40587 \x3d name.fqn;\nname \x3d G__40587;\ncontinue;\n} else {\nthrow (new Error(\x22no conversion to symbol\x22));\n\n}\n}\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2 \x3d (function (ns,name){\nvar sym_str \x3d (((!((ns \x3d\x3d null))))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),\x22/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(name)].join(\x27\x27):name);\nreturn (new cljs.core.Symbol(ns,name,sym_str,null,null));\n}));\n\n(cljs.core.symbol.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.Fn}\n * @implements {cljs.core.IDeref}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.Var \x3d (function (val,sym,_meta){\nthis.val \x3d val;\nthis.sym \x3d sym;\nthis._meta \x3d _meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 6717441;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.Var.prototype.isMacro \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null)).cljs$lang$macro;\n}));\n\n(cljs.core.Var.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn [\x22#\x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.sym)].join(\x27\x27);\n}));\n\n(cljs.core.Var.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__._meta;\n}));\n\n(cljs.core.Var.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_,new_meta){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.Var(self__.val,self__.sym,new_meta));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((other instanceof cljs.core.Var)){\nvar G__38339 \x3d this$__$1.sym;\nvar G__38340 \x3d other.sym;\nreturn (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2 ? cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(G__38339,G__38340) : cljs.core._EQ_.call(null,G__38339,G__38340));\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.Var.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.hash_symbol(self__.sym);\n}));\n\n(cljs.core.Var.prototype.cljs$core$Fn$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Var.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__38341 \x3d (arguments.length - (1));\nswitch (G__38341) {\ncase (0):\nreturn self__.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase (3):\nreturn self__.cljs$core$IFn$_invoke$arity$3((arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase (4):\nreturn self__.cljs$core$IFn$_invoke$arity$4((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase (5):\nreturn self__.cljs$core$IFn$_invoke$arity$5((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase (6):\nreturn self__.cljs$core$IFn$_invoke$arity$6((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ncase (7):\nreturn self__.cljs$core$IFn$_invoke$arity$7((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]));\n\nbreak;\ncase (8):\nreturn self__.cljs$core$IFn$_invoke$arity$8((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]));\n\nbreak;\ncase (9):\nreturn self__.cljs$core$IFn$_invoke$arity$9((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]));\n\nbreak;\ncase (10):\nreturn self__.cljs$core$IFn$_invoke$arity$10((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]));\n\nbreak;\ncase (11):\nreturn self__.cljs$core$IFn$_invoke$arity$11((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]));\n\nbreak;\ncase (12):\nreturn self__.cljs$core$IFn$_invoke$arity$12((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]));\n\nbreak;\ncase (13):\nreturn self__.cljs$core$IFn$_invoke$arity$13((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]));\n\nbreak;\ncase (14):\nreturn self__.cljs$core$IFn$_invoke$arity$14((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]));\n\nbreak;\ncase (15):\nreturn self__.cljs$core$IFn$_invoke$arity$15((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]));\n\nbreak;\ncase (16):\nreturn self__.cljs$core$IFn$_invoke$arity$16((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]));\n\nbreak;\ncase (17):\nreturn self__.cljs$core$IFn$_invoke$arity$17((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]));\n\nbreak;\ncase (18):\nreturn self__.cljs$core$IFn$_invoke$arity$18((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]));\n\nbreak;\ncase (19):\nreturn self__.cljs$core$IFn$_invoke$arity$19((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]));\n\nbreak;\ncase (20):\nreturn self__.cljs$core$IFn$_invoke$arity$20((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]));\n\nbreak;\ncase (21):\nreturn self__.cljs$core$IFn$_invoke$arity$21((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]),(arguments[(21)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.Var.prototype.apply \x3d (function (self__,args38338){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args38338)));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38342 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38342.cljs$core$IFn$_invoke$arity$0 ? fexpr__38342.cljs$core$IFn$_invoke$arity$0() : fexpr__38342.call(null));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (a){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38343 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38343.cljs$core$IFn$_invoke$arity$1 ? fexpr__38343.cljs$core$IFn$_invoke$arity$1(a) : fexpr__38343.call(null,a));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,b){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38344 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38344.cljs$core$IFn$_invoke$arity$2 ? fexpr__38344.cljs$core$IFn$_invoke$arity$2(a,b) : fexpr__38344.call(null,a,b));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,c){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38345 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38345.cljs$core$IFn$_invoke$arity$3 ? fexpr__38345.cljs$core$IFn$_invoke$arity$3(a,b,c) : fexpr__38345.call(null,a,b,c));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,b,c,d){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38346 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38346.cljs$core$IFn$_invoke$arity$4 ? fexpr__38346.cljs$core$IFn$_invoke$arity$4(a,b,c,d) : fexpr__38346.call(null,a,b,c,d));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$5 \x3d (function (a,b,c,d,e){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38347 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38347.cljs$core$IFn$_invoke$arity$5 ? fexpr__38347.cljs$core$IFn$_invoke$arity$5(a,b,c,d,e) : fexpr__38347.call(null,a,b,c,d,e));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$6 \x3d (function (a,b,c,d,e,f){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38348 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38348.cljs$core$IFn$_invoke$arity$6 ? fexpr__38348.cljs$core$IFn$_invoke$arity$6(a,b,c,d,e,f) : fexpr__38348.call(null,a,b,c,d,e,f));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$7 \x3d (function (a,b,c,d,e,f,g){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38349 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38349.cljs$core$IFn$_invoke$arity$7 ? fexpr__38349.cljs$core$IFn$_invoke$arity$7(a,b,c,d,e,f,g) : fexpr__38349.call(null,a,b,c,d,e,f,g));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$8 \x3d (function (a,b,c,d,e,f,g,h){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38350 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38350.cljs$core$IFn$_invoke$arity$8 ? fexpr__38350.cljs$core$IFn$_invoke$arity$8(a,b,c,d,e,f,g,h) : fexpr__38350.call(null,a,b,c,d,e,f,g,h));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$9 \x3d (function (a,b,c,d,e,f,g,h,i){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38351 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38351.cljs$core$IFn$_invoke$arity$9 ? fexpr__38351.cljs$core$IFn$_invoke$arity$9(a,b,c,d,e,f,g,h,i) : fexpr__38351.call(null,a,b,c,d,e,f,g,h,i));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$10 \x3d (function (a,b,c,d,e,f,g,h,i,j){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38352 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38352.cljs$core$IFn$_invoke$arity$10 ? fexpr__38352.cljs$core$IFn$_invoke$arity$10(a,b,c,d,e,f,g,h,i,j) : fexpr__38352.call(null,a,b,c,d,e,f,g,h,i,j));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$11 \x3d (function (a,b,c,d,e,f,g,h,i,j,k){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38353 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38353.cljs$core$IFn$_invoke$arity$11 ? fexpr__38353.cljs$core$IFn$_invoke$arity$11(a,b,c,d,e,f,g,h,i,j,k) : fexpr__38353.call(null,a,b,c,d,e,f,g,h,i,j,k));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$12 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38354 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38354.cljs$core$IFn$_invoke$arity$12 ? fexpr__38354.cljs$core$IFn$_invoke$arity$12(a,b,c,d,e,f,g,h,i,j,k,l) : fexpr__38354.call(null,a,b,c,d,e,f,g,h,i,j,k,l));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$13 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38355 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38355.cljs$core$IFn$_invoke$arity$13 ? fexpr__38355.cljs$core$IFn$_invoke$arity$13(a,b,c,d,e,f,g,h,i,j,k,l,m) : fexpr__38355.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$14 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38356 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38356.cljs$core$IFn$_invoke$arity$14 ? fexpr__38356.cljs$core$IFn$_invoke$arity$14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) : fexpr__38356.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$15 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38357 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38357.cljs$core$IFn$_invoke$arity$15 ? fexpr__38357.cljs$core$IFn$_invoke$arity$15(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : fexpr__38357.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$16 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38358 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38358.cljs$core$IFn$_invoke$arity$16 ? fexpr__38358.cljs$core$IFn$_invoke$arity$16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : fexpr__38358.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$17 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38359 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38359.cljs$core$IFn$_invoke$arity$17 ? fexpr__38359.cljs$core$IFn$_invoke$arity$17(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : fexpr__38359.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$18 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38360 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38360.cljs$core$IFn$_invoke$arity$18 ? fexpr__38360.cljs$core$IFn$_invoke$arity$18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : fexpr__38360.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$19 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38361 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38361.cljs$core$IFn$_invoke$arity$19 ? fexpr__38361.cljs$core$IFn$_invoke$arity$19(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : fexpr__38361.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$20 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar fexpr__38362 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nreturn (fexpr__38362.cljs$core$IFn$_invoke$arity$20 ? fexpr__38362.cljs$core$IFn$_invoke$arity$20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : fexpr__38362.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t));\n}));\n\n(cljs.core.Var.prototype.cljs$core$IFn$_invoke$arity$21 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar G__38363 \x3d (self__.val.cljs$core$IFn$_invoke$arity$0 ? self__.val.cljs$core$IFn$_invoke$arity$0() : self__.val.call(null));\nvar G__38364 \x3d a;\nvar G__38365 \x3d b;\nvar G__38366 \x3d c;\nvar G__38367 \x3d d;\nvar G__38368 \x3d e;\nvar G__38369 \x3d f;\nvar G__38370 \x3d g;\nvar G__38371 \x3d h;\nvar G__38372 \x3d i;\nvar G__38373 \x3d j;\nvar G__38374 \x3d k;\nvar G__38375 \x3d l;\nvar G__38376 \x3d m;\nvar G__38377 \x3d n;\nvar G__38378 \x3d o;\nvar G__38379 \x3d p;\nvar G__38380 \x3d q;\nvar G__38381 \x3d r;\nvar G__38382 \x3d s;\nvar G__38383 \x3d t;\nvar G__38384 \x3d rest;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$22 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$22(G__38363,G__38364,G__38365,G__38366,G__38367,G__38368,G__38369,G__38370,G__38371,G__38372,G__38373,G__38374,G__38375,G__38376,G__38377,G__38378,G__38379,G__38380,G__38381,G__38382,G__38383,G__38384) : cljs.core.apply.call(null,G__38363,G__38364,G__38365,G__38366,G__38367,G__38368,G__38369,G__38370,G__38371,G__38372,G__38373,G__38374,G__38375,G__38376,G__38377,G__38378,G__38379,G__38380,G__38381,G__38382,G__38383,G__38384));\n}));\n\n(cljs.core.Var.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22sym\x22,\x22sym\x22,195671222,null),new cljs.core.Symbol(null,\x22_meta\x22,\x22_meta\x22,-1716892533,null)], null);\n}));\n\n(cljs.core.Var.cljs$lang$type \x3d true);\n\n(cljs.core.Var.cljs$lang$ctorStr \x3d \x22cljs.core/Var\x22);\n\n(cljs.core.Var.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Var\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Var.\n */\ncljs.core.__GT_Var \x3d (function cljs$core$__GT_Var(val,sym,_meta){\nreturn (new cljs.core.Var(val,sym,_meta));\n});\n\n\n\n/**\n * Return true if x implements IIterable protocol.\n */\ncljs.core.iterable_QMARK_ \x3d (function cljs$core$iterable_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition1$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IIterable$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition1$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IIterable,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IIterable,x);\n}\n});\n/**\n * Return true if x has a JavaScript iterator property\n */\ncljs.core.js_iterable_QMARK_ \x3d (function cljs$core$js_iterable_QMARK_(x){\nreturn (((!((x \x3d\x3d null)))) \x26\x26 ((!((x[cljs.core.ITER_SYMBOL] \x3d\x3d null)))));\n});\n/**\n * Clone the supplied value which must implement ICloneable.\n */\ncljs.core.clone \x3d (function cljs$core$clone(value){\nreturn cljs.core._clone(value);\n});\n/**\n * Return true if x implements ICloneable protocol.\n */\ncljs.core.cloneable_QMARK_ \x3d (function cljs$core$cloneable_QMARK_(value){\nif((!((value \x3d\x3d null)))){\nif((((value.cljs$lang$protocol_mask$partition1$ \x26 (8192))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d value.cljs$core$ICloneable$)))){\nreturn true;\n} else {\nif((!value.cljs$lang$protocol_mask$partition1$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ICloneable,value);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ICloneable,value);\n}\n});\n/**\n * Returns a seq on the collection. If the collection is\n *   empty, returns nil.  (seq nil) returns nil. seq also works on\n *   Strings.\n */\ncljs.core.seq \x3d (function cljs$core$seq(coll){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (8388608))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeqable$))))?true:false):false)){\nreturn coll.cljs$core$ISeqable$_seq$arity$1(null);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nif((coll.length \x3d\x3d\x3d (0))){\nreturn null;\n} else {\nreturn (new cljs.core.IndexedSeq(coll,(0),null));\n}\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nif((coll.length \x3d\x3d\x3d (0))){\nreturn null;\n} else {\nreturn (new cljs.core.IndexedSeq(coll,(0),null));\n}\n} else {\nif(cljs.core.js_iterable_QMARK_(coll)){\nvar G__38388 \x3d goog.object.get(coll,cljs.core.ITER_SYMBOL).call(coll);\nreturn (cljs.core.es6_iterator_seq.cljs$core$IFn$_invoke$arity$1 ? cljs.core.es6_iterator_seq.cljs$core$IFn$_invoke$arity$1(G__38388) : cljs.core.es6_iterator_seq.call(null,G__38388));\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.ISeqable,coll)){\nreturn cljs.core._seq(coll);\n} else {\nthrow (new Error([cljs.core.str.cljs$core$IFn$_invoke$arity$1(coll),\x22 is not ISeqable\x22].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n});\n/**\n * Returns the first item in the collection. Calls seq on its\n *   argument. If coll is nil, returns nil.\n */\ncljs.core.first \x3d (function cljs$core$first(coll){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeq$))))?true:false):false)){\nreturn coll.cljs$core$ISeq$_first$arity$1(null);\n} else {\nvar s \x3d cljs.core.seq(coll);\nif((s \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._first(s);\n}\n}\n}\n});\n/**\n * Returns a possibly empty seq of the items after the first. Calls seq on its\n *   argument.\n */\ncljs.core.rest \x3d (function cljs$core$rest(coll){\nif((!((coll \x3d\x3d null)))){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeq$))))?true:false):false)){\nreturn coll.cljs$core$ISeq$_rest$arity$1(null);\n} else {\nvar s \x3d cljs.core.seq(coll);\nif(s){\nreturn s.cljs$core$ISeq$_rest$arity$1(null);\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}\n} else {\nreturn cljs.core.List.EMPTY;\n}\n});\n/**\n * Returns a seq of the items after the first. Calls seq on its\n *   argument.  If there are no more items, returns nil\n */\ncljs.core.next \x3d (function cljs$core$next(coll){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (128))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$INext$))))?true:false):false)){\nreturn coll.cljs$core$INext$_next$arity$1(null);\n} else {\nreturn cljs.core.seq(cljs.core.rest(coll));\n}\n}\n});\n/**\n * Equality. Returns true if x equals y, false if not. Compares\n *   numbers and collections in a type-independent manner.  Clojure\x27s immutable data\n *   structures define -equiv (and thus \x3d) as a value, not an identity,\n *   comparison.\n */\ncljs.core._EQ_ \x3d (function cljs$core$_EQ_(var_args){\nvar G__38396 \x3d arguments.length;\nswitch (G__38396) {\ncase 1:\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___40795 \x3d arguments.length;\nvar i__4772__auto___40796 \x3d (0);\nwhile(true){\nif((i__4772__auto___40796 \x3c len__4771__auto___40795)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___40796]));\n\nvar G__40798 \x3d (i__4772__auto___40796 + (1));\ni__4772__auto___40796 \x3d G__40798;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nif((x \x3d\x3d null)){\nreturn (y \x3d\x3d null);\n} else {\nreturn (((x \x3d\x3d\x3d y)) || (cljs.core._equiv(x,y)));\n}\n}));\n\n(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,y)){\nif(cljs.core.next(more)){\nvar G__40809 \x3d y;\nvar G__40810 \x3d cljs.core.first(more);\nvar G__40811 \x3d cljs.core.next(more);\nx \x3d G__40809;\ny \x3d G__40810;\nmore \x3d G__40811;\ncontinue;\n} else {\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(y,cljs.core.first(more));\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core._EQ_.cljs$lang$applyTo \x3d (function (seq38393){\nvar G__38394 \x3d cljs.core.first(seq38393);\nvar seq38393__$1 \x3d cljs.core.next(seq38393);\nvar G__38395 \x3d cljs.core.first(seq38393__$1);\nvar seq38393__$2 \x3d cljs.core.next(seq38393__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38394,G__38395,seq38393__$2);\n}));\n\n(cljs.core._EQ_.cljs$lang$maxFixedArity \x3d (2));\n\n\n/**\n* @constructor\n*/\ncljs.core.ES6Iterator \x3d (function (s){\nthis.s \x3d s;\n});\n(cljs.core.ES6Iterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((!((self__.s \x3d\x3d null)))){\nvar x \x3d cljs.core.first(self__.s);\n(self__.s \x3d cljs.core.next(self__.s));\n\nreturn ({\x22value\x22: x, \x22done\x22: false});\n} else {\nreturn ({\x22value\x22: null, \x22done\x22: true});\n}\n}));\n\n(cljs.core.ES6Iterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ES6Iterator.cljs$lang$type \x3d true);\n\n(cljs.core.ES6Iterator.cljs$lang$ctorStr \x3d \x22cljs.core/ES6Iterator\x22);\n\n(cljs.core.ES6Iterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ES6Iterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ES6Iterator.\n */\ncljs.core.__GT_ES6Iterator \x3d (function cljs$core$__GT_ES6Iterator(s){\nreturn (new cljs.core.ES6Iterator(s));\n});\n\n/**\n * EXPERIMENTAL: Return a ES2015 compatible iterator for coll.\n */\ncljs.core.es6_iterator \x3d (function cljs$core$es6_iterator(coll){\nreturn (new cljs.core.ES6Iterator(cljs.core.seq(coll)));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.ISeqable}\n*/\ncljs.core.ES6IteratorSeq \x3d (function (value,iter,_rest){\nthis.value \x3d value;\nthis.iter \x3d iter;\nthis._rest \x3d _rest;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 8388672;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.ES6IteratorSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn this$__$1;\n}));\n\n(cljs.core.ES6IteratorSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.value;\n}));\n\n(cljs.core.ES6IteratorSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((self__._rest \x3d\x3d null)){\n(self__._rest \x3d (cljs.core.es6_iterator_seq.cljs$core$IFn$_invoke$arity$1 ? cljs.core.es6_iterator_seq.cljs$core$IFn$_invoke$arity$1(self__.iter) : cljs.core.es6_iterator_seq.call(null,self__.iter)));\n} else {\n}\n\nreturn self__._rest;\n}));\n\n(cljs.core.ES6IteratorSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22iter\x22,\x22iter\x22,-1346195486,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_rest\x22,\x22_rest\x22,-2100466189,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ES6IteratorSeq.cljs$lang$type \x3d true);\n\n(cljs.core.ES6IteratorSeq.cljs$lang$ctorStr \x3d \x22cljs.core/ES6IteratorSeq\x22);\n\n(cljs.core.ES6IteratorSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ES6IteratorSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ES6IteratorSeq.\n */\ncljs.core.__GT_ES6IteratorSeq \x3d (function cljs$core$__GT_ES6IteratorSeq(value,iter,_rest){\nreturn (new cljs.core.ES6IteratorSeq(value,iter,_rest));\n});\n\n/**\n * EXPERIMENTAL: Given an ES2015 compatible iterator return a seq.\n */\ncljs.core.es6_iterator_seq \x3d (function cljs$core$es6_iterator_seq(iter){\nvar v \x3d iter.next();\nif(cljs.core.truth_(v.done)){\nreturn null;\n} else {\nreturn (new cljs.core.ES6IteratorSeq(v.value,iter,null));\n}\n});\n/**\n * Mix final collection hash for ordered or unordered collections.\n * hash-basis is the combined collection hash, count is the number\n * of elements included in the basis. Note this is the hash code\n * consistent with \x3d, different from .hashCode.\n * See http://clojure.org/data_structures#hash for full algorithms.\n */\ncljs.core.mix_collection_hash \x3d (function cljs$core$mix_collection_hash(hash_basis,count){\nvar h1 \x3d cljs.core.m3_seed;\nvar k1 \x3d cljs.core.m3_mix_K1(hash_basis);\nvar h1__$1 \x3d cljs.core.m3_mix_H1(h1,k1);\nreturn cljs.core.m3_fmix(h1__$1,count);\n});\n/**\n * Returns the hash code, consistent with \x3d, for an external ordered\n * collection implementing Iterable.\n * See http://clojure.org/data_structures#hash for full algorithms.\n */\ncljs.core.hash_ordered_coll \x3d (function cljs$core$hash_ordered_coll(coll){\nvar n \x3d (0);\nvar hash_code \x3d (1);\nvar coll__$1 \x3d cljs.core.seq(coll);\nwhile(true){\nif((!((coll__$1 \x3d\x3d null)))){\nvar G__40853 \x3d (n + (1));\nvar G__40854 \x3d ((cljs.core.imul((31),hash_code) + cljs.core.hash(cljs.core.first(coll__$1))) | (0));\nvar G__40855 \x3d cljs.core.next(coll__$1);\nn \x3d G__40853;\nhash_code \x3d G__40854;\ncoll__$1 \x3d G__40855;\ncontinue;\n} else {\nreturn cljs.core.mix_collection_hash(hash_code,n);\n}\nbreak;\n}\n});\ncljs.core.empty_ordered_hash \x3d cljs.core.mix_collection_hash((1),(0));\n/**\n * Returns the hash code, consistent with \x3d, for an external unordered\n * collection implementing Iterable. For maps, the iterator should\n * return map entries whose hash is computed as\n *   (hash-ordered-coll [k v]).\n * See http://clojure.org/data_structures#hash for full algorithms.\n */\ncljs.core.hash_unordered_coll \x3d (function cljs$core$hash_unordered_coll(coll){\nvar n \x3d (0);\nvar hash_code \x3d (0);\nvar coll__$1 \x3d cljs.core.seq(coll);\nwhile(true){\nif((!((coll__$1 \x3d\x3d null)))){\nvar G__40866 \x3d (n + (1));\nvar G__40867 \x3d ((hash_code + cljs.core.hash(cljs.core.first(coll__$1))) | (0));\nvar G__40868 \x3d cljs.core.next(coll__$1);\nn \x3d G__40866;\nhash_code \x3d G__40867;\ncoll__$1 \x3d G__40868;\ncontinue;\n} else {\nreturn cljs.core.mix_collection_hash(hash_code,n);\n}\nbreak;\n}\n});\ncljs.core.empty_unordered_hash \x3d cljs.core.mix_collection_hash((0),(0));\n\n\ngoog.object.set(cljs.core.ICounted,\x22null\x22,true);\n\ngoog.object.set(cljs.core._count,\x22null\x22,(function (_){\nreturn (0);\n}));\n(Date.prototype.cljs$core$IEquiv$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(Date.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (o,other){\nvar o__$1 \x3d this;\nreturn (((other instanceof Date)) \x26\x26 ((o__$1.valueOf() \x3d\x3d\x3d other.valueOf())));\n}));\n\n(Date.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(Date.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nif((other instanceof Date)){\nreturn goog.array.defaultCompare(this$__$1.valueOf(),other.valueOf());\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(other)].join(\x27\x27)));\n}\n}));\n\n/**\n * @interface\n */\ncljs.core.Inst \x3d function(){};\n\nvar cljs$core$Inst$inst_ms_STAR_$dyn_40877 \x3d (function (inst){\nvar x__4463__auto__ \x3d (((inst \x3d\x3d null))?null:inst);\nvar m__4464__auto__ \x3d (cljs.core.inst_ms_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(inst) : m__4464__auto__.call(null,inst));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.inst_ms_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(inst) : m__4461__auto__.call(null,inst));\n} else {\nthrow cljs.core.missing_protocol(\x22Inst.inst-ms*\x22,inst);\n}\n}\n});\ncljs.core.inst_ms_STAR_ \x3d (function cljs$core$inst_ms_STAR_(inst){\nif((((!((inst \x3d\x3d null)))) \x26\x26 ((!((inst.cljs$core$Inst$inst_ms_STAR_$arity$1 \x3d\x3d null)))))){\nreturn inst.cljs$core$Inst$inst_ms_STAR_$arity$1(inst);\n} else {\nreturn cljs$core$Inst$inst_ms_STAR_$dyn_40877(inst);\n}\n});\n\n(Date.prototype.cljs$core$Inst$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(Date.prototype.cljs$core$Inst$inst_ms_STAR_$arity$1 \x3d (function (inst){\nvar inst__$1 \x3d this;\nreturn inst__$1.getTime();\n}));\n/**\n * Return the number of milliseconds since January 1, 1970, 00:00:00 GMT\n */\ncljs.core.inst_ms \x3d (function cljs$core$inst_ms(inst){\nreturn cljs.core.inst_ms_STAR_(inst);\n});\n/**\n * Return true if x satisfies Inst\n */\ncljs.core.inst_QMARK_ \x3d (function cljs$core$inst_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif(((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$Inst$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.Inst,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.Inst,x);\n}\n});\ngoog.object.set(cljs.core.IEquiv,\x22number\x22,true);\n\ngoog.object.set(cljs.core._equiv,\x22number\x22,(function (x,o){\nreturn (x \x3d\x3d\x3d o);\n}));\ngoog.object.set(cljs.core.Fn,\x22function\x22,true);\n\ngoog.object.set(cljs.core.IMeta,\x22function\x22,true);\n\ngoog.object.set(cljs.core._meta,\x22function\x22,(function (_){\nreturn null;\n}));\ngoog.object.set(cljs.core.IHash,\x22_\x22,true);\n\ngoog.object.set(cljs.core._hash,\x22_\x22,(function (o){\nreturn goog.getUid(o);\n}));\n/**\n * Returns a number one greater than num.\n */\ncljs.core.inc \x3d (function cljs$core$inc(x){\nreturn (x + (1));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IDeref}\n*/\ncljs.core.Reduced \x3d (function (val){\nthis.val \x3d val;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32768;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.Reduced.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (o){\nvar self__ \x3d this;\nvar o__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.Reduced.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null);\n}));\n\n(cljs.core.Reduced.cljs$lang$type \x3d true);\n\n(cljs.core.Reduced.cljs$lang$ctorStr \x3d \x22cljs.core/Reduced\x22);\n\n(cljs.core.Reduced.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Reduced\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Reduced.\n */\ncljs.core.__GT_Reduced \x3d (function cljs$core$__GT_Reduced(val){\nreturn (new cljs.core.Reduced(val));\n});\n\n/**\n * Wraps x in a way such that a reduce will terminate with the value x\n */\ncljs.core.reduced \x3d (function cljs$core$reduced(x){\nreturn (new cljs.core.Reduced(x));\n});\n/**\n * Returns true if x is the result of a call to reduced\n */\ncljs.core.reduced_QMARK_ \x3d (function cljs$core$reduced_QMARK_(r){\nreturn (r instanceof cljs.core.Reduced);\n});\n/**\n * If x is already reduced?, returns it, else returns (reduced x)\n */\ncljs.core.ensure_reduced \x3d (function cljs$core$ensure_reduced(x){\nif(cljs.core.reduced_QMARK_(x)){\nreturn x;\n} else {\nreturn cljs.core.reduced(x);\n}\n});\n/**\n * If x is reduced?, returns (deref x), else returns x\n */\ncljs.core.unreduced \x3d (function cljs$core$unreduced(x){\nif(cljs.core.reduced_QMARK_(x)){\nreturn (cljs.core.deref.cljs$core$IFn$_invoke$arity$1 ? cljs.core.deref.cljs$core$IFn$_invoke$arity$1(x) : cljs.core.deref.call(null,x));\n} else {\nreturn x;\n}\n});\n/**\n * Also reader macro: @var/@atom/@delay. Returns the\n * most-recently-committed value of ref. When applied to a var\n * or atom, returns its current state. When applied to a delay, forces\n * it if not already forced. See also - realized?.\n */\ncljs.core.deref \x3d (function cljs$core$deref(o){\nreturn cljs.core._deref(o);\n});\n/**\n * Accepts any collection which satisfies the ICount and IIndexed protocols and\n * reduces them without incurring seq initialization\n */\ncljs.core.ci_reduce \x3d (function cljs$core$ci_reduce(var_args){\nvar G__38399 \x3d arguments.length;\nswitch (G__38399) {\ncase 2:\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2 \x3d (function (cicoll,f){\nvar cnt \x3d cicoll.cljs$core$ICounted$_count$arity$1(null);\nif((cnt \x3d\x3d\x3d (0))){\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n} else {\nvar val \x3d cicoll.cljs$core$IIndexed$_nth$arity$2(null,(0));\nvar n \x3d (1);\nwhile(true){\nif((n \x3c cnt)){\nvar nval \x3d (function (){var G__38400 \x3d val;\nvar G__38401 \x3d cicoll.cljs$core$IIndexed$_nth$arity$2(null,n);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38400,G__38401) : f.call(null,G__38400,G__38401));\n})();\nif(cljs.core.reduced_QMARK_(nval)){\nreturn cljs.core.deref(nval);\n} else {\nvar G__40932 \x3d nval;\nvar G__40933 \x3d (n + (1));\nval \x3d G__40932;\nn \x3d G__40933;\ncontinue;\n}\n} else {\nreturn val;\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (cicoll,f,val){\nvar cnt \x3d cicoll.cljs$core$ICounted$_count$arity$1(null);\nvar val__$1 \x3d val;\nvar n \x3d (0);\nwhile(true){\nif((n \x3c cnt)){\nvar nval \x3d (function (){var G__38402 \x3d val__$1;\nvar G__38403 \x3d cicoll.cljs$core$IIndexed$_nth$arity$2(null,n);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38402,G__38403) : f.call(null,G__38402,G__38403));\n})();\nif(cljs.core.reduced_QMARK_(nval)){\nreturn cljs.core.deref(nval);\n} else {\nvar G__40944 \x3d nval;\nvar G__40945 \x3d (n + (1));\nval__$1 \x3d G__40944;\nn \x3d G__40945;\ncontinue;\n}\n} else {\nreturn val__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.ci_reduce.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.array_reduce \x3d (function cljs$core$array_reduce(var_args){\nvar G__38405 \x3d arguments.length;\nswitch (G__38405) {\ncase 2:\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$2 \x3d (function (arr,f){\nvar cnt \x3d arr.length;\nif((arr.length \x3d\x3d\x3d (0))){\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n} else {\nvar val \x3d (arr[(0)]);\nvar n \x3d (1);\nwhile(true){\nif((n \x3c cnt)){\nvar nval \x3d (function (){var G__38406 \x3d val;\nvar G__38407 \x3d (arr[n]);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38406,G__38407) : f.call(null,G__38406,G__38407));\n})();\nif(cljs.core.reduced_QMARK_(nval)){\nreturn cljs.core.deref(nval);\n} else {\nvar G__40965 \x3d nval;\nvar G__40966 \x3d (n + (1));\nval \x3d G__40965;\nn \x3d G__40966;\ncontinue;\n}\n} else {\nreturn val;\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (arr,f,val){\nvar cnt \x3d arr.length;\nvar val__$1 \x3d val;\nvar n \x3d (0);\nwhile(true){\nif((n \x3c cnt)){\nvar nval \x3d (function (){var G__38408 \x3d val__$1;\nvar G__38409 \x3d (arr[n]);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38408,G__38409) : f.call(null,G__38408,G__38409));\n})();\nif(cljs.core.reduced_QMARK_(nval)){\nreturn cljs.core.deref(nval);\n} else {\nvar G__40979 \x3d nval;\nvar G__40980 \x3d (n + (1));\nval__$1 \x3d G__40979;\nn \x3d G__40980;\ncontinue;\n}\n} else {\nreturn val__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$4 \x3d (function (arr,f,val,idx){\nvar cnt \x3d arr.length;\nvar val__$1 \x3d val;\nvar n \x3d idx;\nwhile(true){\nif((n \x3c cnt)){\nvar nval \x3d (function (){var G__38410 \x3d val__$1;\nvar G__38411 \x3d (arr[n]);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38410,G__38411) : f.call(null,G__38410,G__38411));\n})();\nif(cljs.core.reduced_QMARK_(nval)){\nreturn cljs.core.deref(nval);\n} else {\nvar G__40995 \x3d nval;\nvar G__40996 \x3d (n + (1));\nval__$1 \x3d G__40995;\nn \x3d G__40996;\ncontinue;\n}\n} else {\nreturn val__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.array_reduce.cljs$lang$maxFixedArity \x3d 4);\n\n\n\n\n\n\n\n/**\n * Returns true if coll implements count in constant time\n */\ncljs.core.counted_QMARK_ \x3d (function cljs$core$counted_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (2))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ICounted$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ICounted,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ICounted,x);\n}\n});\n/**\n * Returns true if coll implements nth in constant time\n */\ncljs.core.indexed_QMARK_ \x3d (function cljs$core$indexed_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (16))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IIndexed$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IIndexed,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IIndexed,x);\n}\n});\ncljs.core._indexOf \x3d (function cljs$core$_indexOf(var_args){\nvar G__38415 \x3d arguments.length;\nswitch (G__38415) {\ncase 2:\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._indexOf.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,x){\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n}));\n\n(cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,x,start){\nvar len \x3d (cljs.core.count.cljs$core$IFn$_invoke$arity$1 ? cljs.core.count.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.count.call(null,coll));\nif((start \x3e\x3d len)){\nreturn (-1);\n} else {\nvar idx \x3d (((start \x3e (0)))?start:(((start \x3c (0)))?(function (){var x__4249__auto__ \x3d (0);\nvar y__4250__auto__ \x3d (start + len);\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})():start\n));\nwhile(true){\nif((idx \x3c len)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((cljs.core.nth.cljs$core$IFn$_invoke$arity$2 ? cljs.core.nth.cljs$core$IFn$_invoke$arity$2(coll,idx) : cljs.core.nth.call(null,coll,idx)),x)){\nreturn idx;\n} else {\nvar G__41013 \x3d (idx + (1));\nidx \x3d G__41013;\ncontinue;\n}\n} else {\nreturn (-1);\n}\nbreak;\n}\n}\n}));\n\n(cljs.core._indexOf.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core._lastIndexOf \x3d (function cljs$core$_lastIndexOf(var_args){\nvar G__38417 \x3d arguments.length;\nswitch (G__38417) {\ncase 2:\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,x){\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(cljs.core.count.cljs$core$IFn$_invoke$arity$1 ? cljs.core.count.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.count.call(null,coll)));\n}));\n\n(cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,x,start){\nvar len \x3d (cljs.core.count.cljs$core$IFn$_invoke$arity$1 ? cljs.core.count.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.count.call(null,coll));\nif((len \x3d\x3d\x3d (0))){\nreturn (-1);\n} else {\nvar idx \x3d (((start \x3e (0)))?(function (){var x__4252__auto__ \x3d (len - (1));\nvar y__4253__auto__ \x3d start;\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})():(((start \x3c (0)))?(len + start):start\n));\nwhile(true){\nif((idx \x3e\x3d (0))){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((cljs.core.nth.cljs$core$IFn$_invoke$arity$2 ? cljs.core.nth.cljs$core$IFn$_invoke$arity$2(coll,idx) : cljs.core.nth.call(null,coll,idx)),x)){\nreturn idx;\n} else {\nvar G__41032 \x3d (idx - (1));\nidx \x3d G__41032;\ncontinue;\n}\n} else {\nreturn (-1);\n}\nbreak;\n}\n}\n}));\n\n(cljs.core._lastIndexOf.cljs$lang$maxFixedArity \x3d 3);\n\n\n/**\n* @constructor\n*/\ncljs.core.IndexedSeqIterator \x3d (function (arr,i){\nthis.arr \x3d arr;\nthis.i \x3d i;\n});\n(cljs.core.IndexedSeqIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.i \x3c self__.arr.length);\n}));\n\n(cljs.core.IndexedSeqIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d (self__.arr[self__.i]);\n(self__.i \x3d (self__.i + (1)));\n\nreturn ret;\n}));\n\n(cljs.core.IndexedSeqIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.IndexedSeqIterator.cljs$lang$type \x3d true);\n\n(cljs.core.IndexedSeqIterator.cljs$lang$ctorStr \x3d \x22cljs.core/IndexedSeqIterator\x22);\n\n(cljs.core.IndexedSeqIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/IndexedSeqIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/IndexedSeqIterator.\n */\ncljs.core.__GT_IndexedSeqIterator \x3d (function cljs$core$__GT_IndexedSeqIterator(arr,i){\nreturn (new cljs.core.IndexedSeqIterator(arr,i));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ASeq}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.IndexedSeq \x3d (function (arr,i,meta){\nthis.arr \x3d arr;\nthis.i \x3d i;\nthis.meta \x3d meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 166592766;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.core.IndexedSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.IndexedSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.IndexedSeq.prototype.indexOf \x3d (function() {\nvar G__41055 \x3d null;\nvar G__41055__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__41055__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__41055 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__41055__1.call(this,x);\ncase 2:\nreturn G__41055__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__41055.cljs$core$IFn$_invoke$arity$1 \x3d G__41055__1;\nG__41055.cljs$core$IFn$_invoke$arity$2 \x3d G__41055__2;\nreturn G__41055;\n})()\n);\n\n(cljs.core.IndexedSeq.prototype.lastIndexOf \x3d (function() {\nvar G__41059 \x3d null;\nvar G__41059__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(cljs.core.count.cljs$core$IFn$_invoke$arity$1 ? cljs.core.count.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.count.call(null,coll)));\n});\nvar G__41059__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__41059 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__41059__1.call(this,x);\ncase 2:\nreturn G__41059__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__41059.cljs$core$IFn$_invoke$arity$1 \x3d G__41059__1;\nG__41059.cljs$core$IFn$_invoke$arity$2 \x3d G__41059__2;\nreturn G__41059;\n})()\n);\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (coll,n){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar i__$1 \x3d (n + self__.i);\nif(((((0) \x3c\x3d i__$1)) \x26\x26 ((i__$1 \x3c self__.arr.length)))){\nreturn (self__.arr[i__$1]);\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (coll,n,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar i__$1 \x3d (n + self__.i);\nif(((((0) \x3c\x3d i__$1)) \x26\x26 ((i__$1 \x3c self__.arr.length)))){\nreturn (self__.arr[i__$1]);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.IndexedSeqIterator(self__.arr,self__.i));\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.IndexedSeq(self__.arr,self__.i,self__.meta));\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(((self__.i + (1)) \x3c self__.arr.length)){\nreturn (new cljs.core.IndexedSeq(self__.arr,(self__.i + (1)),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar x__4249__auto__ \x3d (0);\nvar y__4250__auto__ \x3d (self__.arr.length - self__.i);\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar c \x3d coll__$1.cljs$core$ICounted$_count$arity$1(null);\nif((c \x3e (0))){\nreturn (new cljs.core.RSeq(coll__$1,(c - (1)),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.hash_ordered_coll(coll__$1);\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (cljs.core.equiv_sequential.cljs$core$IFn$_invoke$arity$2 ? cljs.core.equiv_sequential.cljs$core$IFn$_invoke$arity$2(coll__$1,other) : cljs.core.equiv_sequential.call(null,coll__$1,other));\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$4(self__.arr,f,(self__.arr[self__.i]),(self__.i + (1)));\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$4(self__.arr,f,start,self__.i);\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (self__.arr[self__.i]);\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(((self__.i + (1)) \x3c self__.arr.length)){\nreturn (new cljs.core.IndexedSeq(self__.arr,(self__.i + (1)),null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((self__.i \x3c self__.arr.length)){\nreturn this$__$1;\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.IndexedSeq(self__.arr,self__.i,new_meta));\n}\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (cljs.core.cons.cljs$core$IFn$_invoke$arity$2 ? cljs.core.cons.cljs$core$IFn$_invoke$arity$2(o,coll__$1) : cljs.core.cons.call(null,o,coll__$1));\n}));\n\n(cljs.core.IndexedSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null)], null);\n}));\n\n(cljs.core.IndexedSeq.cljs$lang$type \x3d true);\n\n(cljs.core.IndexedSeq.cljs$lang$ctorStr \x3d \x22cljs.core/IndexedSeq\x22);\n\n(cljs.core.IndexedSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/IndexedSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/IndexedSeq.\n */\ncljs.core.__GT_IndexedSeq \x3d (function cljs$core$__GT_IndexedSeq(arr,i,meta){\nreturn (new cljs.core.IndexedSeq(arr,i,meta));\n});\n\ngoog.object.set(cljs.core.IndexedSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Create seq from a primitive JavaScript Array-like.\n */\ncljs.core.prim_seq \x3d (function cljs$core$prim_seq(var_args){\nvar G__38419 \x3d arguments.length;\nswitch (G__38419) {\ncase 1:\nreturn cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$1 \x3d (function (prim){\nreturn cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(prim,(0));\n}));\n\n(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2 \x3d (function (prim,i){\nif((i \x3c prim.length)){\nreturn (new cljs.core.IndexedSeq(prim,i,null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.prim_seq.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Create a seq from a JavaScript array.\n */\ncljs.core.array_seq \x3d (function cljs$core$array_seq(var_args){\nvar G__38421 \x3d arguments.length;\nswitch (G__38421) {\ncase 1:\nreturn cljs.core.array_seq.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.array_seq.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.array_seq.cljs$core$IFn$_invoke$arity$1 \x3d (function (array){\nreturn cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(array,(0));\n}));\n\n(cljs.core.array_seq.cljs$core$IFn$_invoke$arity$2 \x3d (function (array,i){\nreturn cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(array,i);\n}));\n\n(cljs.core.array_seq.cljs$lang$maxFixedArity \x3d 2);\n\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.RSeq \x3d (function (ci,i,meta){\nthis.ci \x3d ci;\nthis.i \x3d i;\nthis.meta \x3d meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374990;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 8192;\n});\n(cljs.core.RSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.RSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.RSeq.prototype.indexOf \x3d (function() {\nvar G__41097 \x3d null;\nvar G__41097__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__41097__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__41097 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__41097__1.call(this,x);\ncase 2:\nreturn G__41097__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__41097.cljs$core$IFn$_invoke$arity$1 \x3d G__41097__1;\nG__41097.cljs$core$IFn$_invoke$arity$2 \x3d G__41097__2;\nreturn G__41097;\n})()\n);\n\n(cljs.core.RSeq.prototype.lastIndexOf \x3d (function() {\nvar G__41098 \x3d null;\nvar G__41098__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(cljs.core.count.cljs$core$IFn$_invoke$arity$1 ? cljs.core.count.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.count.call(null,coll)));\n});\nvar G__41098__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__41098 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__41098__1.call(this,x);\ncase 2:\nreturn G__41098__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__41098.cljs$core$IFn$_invoke$arity$1 \x3d G__41098__1;\nG__41098.cljs$core$IFn$_invoke$arity$2 \x3d G__41098__2;\nreturn G__41098;\n})()\n);\n\n(cljs.core.RSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.RSeq(self__.ci,self__.i,self__.meta));\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.i \x3e (0))){\nreturn (new cljs.core.RSeq(self__.ci,(self__.i - (1)),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (self__.i + (1));\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.hash_ordered_coll(coll__$1);\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (cljs.core.equiv_sequential.cljs$core$IFn$_invoke$arity$2 ? cljs.core.equiv_sequential.cljs$core$IFn$_invoke$arity$2(coll__$1,other) : cljs.core.equiv_sequential.call(null,coll__$1,other));\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (col,f){\nvar self__ \x3d this;\nvar col__$1 \x3d this;\nreturn (cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2 ? cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,col__$1) : cljs.core.seq_reduce.call(null,f,col__$1));\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (col,f,start){\nvar self__ \x3d this;\nvar col__$1 \x3d this;\nreturn (cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3 ? cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,col__$1) : cljs.core.seq_reduce.call(null,f,start,col__$1));\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._nth(self__.ci,self__.i);\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.i \x3e (0))){\nreturn (new cljs.core.RSeq(self__.ci,(self__.i - (1)),null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.RSeq(self__.ci,self__.i,new_meta));\n}\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (cljs.core.cons.cljs$core$IFn$_invoke$arity$2 ? cljs.core.cons.cljs$core$IFn$_invoke$arity$2(o,coll__$1) : cljs.core.cons.call(null,o,coll__$1));\n}));\n\n(cljs.core.RSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ci\x22,\x22ci\x22,2049808339,null),new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null)], null);\n}));\n\n(cljs.core.RSeq.cljs$lang$type \x3d true);\n\n(cljs.core.RSeq.cljs$lang$ctorStr \x3d \x22cljs.core/RSeq\x22);\n\n(cljs.core.RSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/RSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/RSeq.\n */\ncljs.core.__GT_RSeq \x3d (function cljs$core$__GT_RSeq(ci,i,meta){\nreturn (new cljs.core.RSeq(ci,i,meta));\n});\n\ngoog.object.set(cljs.core.RSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Same as (first (next x))\n */\ncljs.core.second \x3d (function cljs$core$second(coll){\nreturn cljs.core.first(cljs.core.next(coll));\n});\n/**\n * Same as (first (first x))\n */\ncljs.core.ffirst \x3d (function cljs$core$ffirst(coll){\nreturn cljs.core.first(cljs.core.first(coll));\n});\n/**\n * Same as (next (first x))\n */\ncljs.core.nfirst \x3d (function cljs$core$nfirst(coll){\nreturn cljs.core.next(cljs.core.first(coll));\n});\n/**\n * Same as (first (next x))\n */\ncljs.core.fnext \x3d (function cljs$core$fnext(coll){\nreturn cljs.core.first(cljs.core.next(coll));\n});\n/**\n * Same as (next (next x))\n */\ncljs.core.nnext \x3d (function cljs$core$nnext(coll){\nreturn cljs.core.next(cljs.core.next(coll));\n});\n/**\n * Return the last item in coll, in linear time\n */\ncljs.core.last \x3d (function cljs$core$last(s){\nwhile(true){\nvar sn \x3d cljs.core.next(s);\nif((!((sn \x3d\x3d null)))){\nvar G__41127 \x3d sn;\ns \x3d G__41127;\ncontinue;\n} else {\nreturn cljs.core.first(s);\n}\nbreak;\n}\n});\ngoog.object.set(cljs.core.IEquiv,\x22_\x22,true);\n\ngoog.object.set(cljs.core._equiv,\x22_\x22,(function (x,o){\nreturn (x \x3d\x3d\x3d o);\n}));\n/**\n * conj[oin]. Returns a new collection with the xs\n *   \x27added\x27. (conj nil item) returns (item).  The \x27addition\x27 may\n *   happen at different \x27places\x27 depending on the concrete type.\n */\ncljs.core.conj \x3d (function cljs$core$conj(var_args){\nvar G__38426 \x3d arguments.length;\nswitch (G__38426) {\ncase 0:\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41131 \x3d arguments.length;\nvar i__4772__auto___41132 \x3d (0);\nwhile(true){\nif((i__4772__auto___41132 \x3c len__4771__auto___41131)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41132]));\n\nvar G__41133 \x3d (i__4772__auto___41132 + (1));\ni__4772__auto___41132 \x3d G__41133;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.conj.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cljs.core.conj.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nreturn coll;\n}));\n\n(cljs.core.conj.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,x){\nif((!((coll \x3d\x3d null)))){\nreturn cljs.core._conj(coll,x);\n} else {\nreturn (new cljs.core.List(null,x,null,(1),null));\n}\n}));\n\n(cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic \x3d (function (coll,x,xs){\nwhile(true){\nif(cljs.core.truth_(xs)){\nvar G__41137 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(coll,x);\nvar G__41138 \x3d cljs.core.first(xs);\nvar G__41139 \x3d cljs.core.next(xs);\ncoll \x3d G__41137;\nx \x3d G__41138;\nxs \x3d G__41139;\ncontinue;\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(coll,x);\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.conj.cljs$lang$applyTo \x3d (function (seq38423){\nvar G__38424 \x3d cljs.core.first(seq38423);\nvar seq38423__$1 \x3d cljs.core.next(seq38423);\nvar G__38425 \x3d cljs.core.first(seq38423__$1);\nvar seq38423__$2 \x3d cljs.core.next(seq38423__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38424,G__38425,seq38423__$2);\n}));\n\n(cljs.core.conj.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns an empty collection of the same category as coll, or nil\n */\ncljs.core.empty \x3d (function cljs$core$empty(coll){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (4))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IEmptyableCollection$))))?true:false):false)){\nreturn coll.cljs$core$IEmptyableCollection$_empty$arity$1(null);\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (4))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IEmptyableCollection$))))?true:(((!coll.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IEmptyableCollection,coll):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IEmptyableCollection,coll))){\nreturn cljs.core._empty(coll);\n} else {\nreturn null;\n\n}\n}\n}\n});\ncljs.core.accumulating_seq_count \x3d (function cljs$core$accumulating_seq_count(coll){\nvar s \x3d cljs.core.seq(coll);\nvar acc \x3d (0);\nwhile(true){\nif(cljs.core.counted_QMARK_(s)){\nreturn (acc + cljs.core._count(s));\n} else {\nvar G__41158 \x3d cljs.core.next(s);\nvar G__41159 \x3d (acc + (1));\ns \x3d G__41158;\nacc \x3d G__41159;\ncontinue;\n}\nbreak;\n}\n});\n/**\n * Returns the number of items in the collection. (count nil) returns\n *   0.  Also works on strings, arrays, and Maps\n */\ncljs.core.count \x3d (function cljs$core$count(coll){\nif((!((coll \x3d\x3d null)))){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (2))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ICounted$))))?true:false):false)){\nreturn coll.cljs$core$ICounted$_count$arity$1(null);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nreturn coll.length;\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nreturn coll.length;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (8388608))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeqable$))))?true:false):false)){\nreturn cljs.core.accumulating_seq_count(coll);\n} else {\nreturn cljs.core._count(coll);\n\n}\n}\n}\n}\n} else {\nreturn (0);\n}\n});\ncljs.core.linear_traversal_nth \x3d (function cljs$core$linear_traversal_nth(var_args){\nvar G__38432 \x3d arguments.length;\nswitch (G__38432) {\ncase 2:\nreturn cljs.core.linear_traversal_nth.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.linear_traversal_nth.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.linear_traversal_nth.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,n){\nwhile(true){\nif((coll \x3d\x3d null)){\nthrow (new Error(\x22Index out of bounds\x22));\n} else {\nif((n \x3d\x3d\x3d (0))){\nif(cljs.core.seq(coll)){\nreturn cljs.core.first(coll);\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n}\n} else {\nif(cljs.core.indexed_QMARK_(coll)){\nreturn cljs.core._nth(coll,n);\n} else {\nif(cljs.core.seq(coll)){\nvar G__41168 \x3d cljs.core.next(coll);\nvar G__41169 \x3d (n - (1));\ncoll \x3d G__41168;\nn \x3d G__41169;\ncontinue;\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n\n}\n}\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.linear_traversal_nth.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,n,not_found){\nwhile(true){\nif((coll \x3d\x3d null)){\nreturn not_found;\n} else {\nif((n \x3d\x3d\x3d (0))){\nif(cljs.core.seq(coll)){\nreturn cljs.core.first(coll);\n} else {\nreturn not_found;\n}\n} else {\nif(cljs.core.indexed_QMARK_(coll)){\nreturn cljs.core._nth(coll,n,not_found);\n} else {\nif(cljs.core.seq(coll)){\nvar G__41170 \x3d cljs.core.next(coll);\nvar G__41171 \x3d (n - (1));\nvar G__41172 \x3d not_found;\ncoll \x3d G__41170;\nn \x3d G__41171;\nnot_found \x3d G__41172;\ncontinue;\n} else {\nreturn not_found;\n\n}\n}\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.linear_traversal_nth.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns the value at the index. get returns nil if index out of\n *   bounds, nth throws an exception unless not-found is supplied.  nth\n *   also works for strings, arrays, regex Matchers and Lists, and,\n *   in O(n) time, for sequences.\n */\ncljs.core.nth \x3d (function cljs$core$nth(var_args){\nvar G__38434 \x3d arguments.length;\nswitch (G__38434) {\ncase 2:\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.nth.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,n){\nif((!(typeof n \x3d\x3d\x3d \x27number\x27))){\nthrow (new Error(\x22Index argument to nth must be a number\x22));\n} else {\nif((coll \x3d\x3d null)){\nreturn coll;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (16))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IIndexed$))))?true:false):false)){\nreturn coll.cljs$core$IIndexed$_nth$arity$2(null,n);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nif(((((-1) \x3c n)) \x26\x26 ((n \x3c coll.length)))){\nreturn (coll[(n | (0))]);\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n}\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nif(((((-1) \x3c n)) \x26\x26 ((n \x3c coll.length)))){\nreturn coll.charAt((n | (0)));\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n}\n} else {\nif((function (){var or__4160__auto__ \x3d (((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeq$))))?true:false):false);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nif((!((coll \x3d\x3d null)))){\nif((((coll.cljs$lang$protocol_mask$partition0$ \x26 (16777216))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISequential$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}\n})()){\nif((n \x3c (0))){\nthrow (new Error(\x22Index out of bounds\x22));\n} else {\nreturn cljs.core.linear_traversal_nth.cljs$core$IFn$_invoke$arity$2(coll,n);\n}\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.IIndexed,coll)){\nreturn cljs.core._nth(coll,n);\n} else {\nthrow (new Error([\x22nth not supported on this type \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type__GT_str(cljs.core.type(coll)))].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n}\n}));\n\n(cljs.core.nth.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,n,not_found){\nif((!(typeof n \x3d\x3d\x3d \x27number\x27))){\nthrow (new Error(\x22Index argument to nth must be a number.\x22));\n} else {\nif((coll \x3d\x3d null)){\nreturn not_found;\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (16))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IIndexed$))))?true:false):false)){\nreturn coll.cljs$core$IIndexed$_nth$arity$3(null,n,not_found);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nif(((((-1) \x3c n)) \x26\x26 ((n \x3c coll.length)))){\nreturn (coll[(n | (0))]);\n} else {\nreturn not_found;\n}\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nif(((((-1) \x3c n)) \x26\x26 ((n \x3c coll.length)))){\nreturn coll.charAt((n | (0)));\n} else {\nreturn not_found;\n}\n} else {\nif((function (){var or__4160__auto__ \x3d (((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeq$))))?true:false):false);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nif((!((coll \x3d\x3d null)))){\nif((((coll.cljs$lang$protocol_mask$partition0$ \x26 (16777216))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISequential$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}\n})()){\nif((n \x3c (0))){\nreturn not_found;\n} else {\nreturn cljs.core.linear_traversal_nth.cljs$core$IFn$_invoke$arity$3(coll,n,not_found);\n}\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.IIndexed,coll)){\nreturn cljs.core._nth(coll,n,not_found);\n} else {\nthrow (new Error([\x22nth not supported on this type \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type__GT_str(cljs.core.type(coll)))].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n}\n}));\n\n(cljs.core.nth.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns the nth rest of coll, coll when n is 0.\n */\ncljs.core.nthrest \x3d (function cljs$core$nthrest(coll,n){\nvar n__$1 \x3d n;\nvar xs \x3d coll;\nwhile(true){\nvar temp__5751__auto__ \x3d (((n__$1 \x3e (0))) \x26\x26 (cljs.core.seq(xs)));\nif(temp__5751__auto__){\nvar xs__$1 \x3d temp__5751__auto__;\nvar G__41196 \x3d (n__$1 - (1));\nvar G__41197 \x3d cljs.core.rest(xs__$1);\nn__$1 \x3d G__41196;\nxs \x3d G__41197;\ncontinue;\n} else {\nreturn xs;\n}\nbreak;\n}\n});\n/**\n * Returns the value mapped to key, not-found or nil if key not present.\n */\ncljs.core.get \x3d (function cljs$core$get(var_args){\nvar G__38444 \x3d arguments.length;\nswitch (G__38444) {\ncase 2:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.get.cljs$core$IFn$_invoke$arity$2 \x3d (function (o,k){\nif((o \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (256))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$ILookup$))))?true:false):false)){\nreturn o.cljs$core$ILookup$_lookup$arity$2(null,k);\n} else {\nif(cljs.core.array_QMARK_(o)){\nif((((!((k \x3d\x3d null)))) \x26\x26 ((k \x3c o.length)))){\nreturn (o[(k | (0))]);\n} else {\nreturn null;\n}\n} else {\nif(typeof o \x3d\x3d\x3d \x27string\x27){\nif((((!((k \x3d\x3d null)))) \x26\x26 (((((-1) \x3c k)) \x26\x26 ((k \x3c o.length)))))){\nreturn o.charAt((k | (0)));\n} else {\nreturn null;\n}\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.ILookup,o)){\nreturn cljs.core._lookup(o,k);\n} else {\nreturn null;\n\n}\n}\n}\n}\n}\n}));\n\n(cljs.core.get.cljs$core$IFn$_invoke$arity$3 \x3d (function (o,k,not_found){\nif((!((o \x3d\x3d null)))){\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (256))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$ILookup$))))?true:false):false)){\nreturn o.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n} else {\nif(cljs.core.array_QMARK_(o)){\nif((((!((k \x3d\x3d null)))) \x26\x26 (((((-1) \x3c k)) \x26\x26 ((k \x3c o.length)))))){\nreturn (o[(k | (0))]);\n} else {\nreturn not_found;\n}\n} else {\nif(typeof o \x3d\x3d\x3d \x27string\x27){\nif((((!((k \x3d\x3d null)))) \x26\x26 (((((-1) \x3c k)) \x26\x26 ((k \x3c o.length)))))){\nreturn o.charAt((k | (0)));\n} else {\nreturn not_found;\n}\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.ILookup,o)){\nreturn cljs.core._lookup(o,k,not_found);\n} else {\nreturn not_found;\n\n}\n}\n}\n}\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.get.cljs$lang$maxFixedArity \x3d 3);\n\n\n\n/**\n * assoc[iate]. When applied to a map, returns a new map of the\n * same (hashed/sorted) type, that contains the mapping of key(s) to\n * val(s). When applied to a vector, returns a new vector that\n * contains val at index. Note - index must be \x3c\x3d (count vector).\n */\ncljs.core.assoc \x3d (function cljs$core$assoc(var_args){\nvar G__38452 \x3d arguments.length;\nswitch (G__38452) {\ncase 3:\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41207 \x3d arguments.length;\nvar i__4772__auto___41208 \x3d (0);\nwhile(true){\nif((i__4772__auto___41208 \x3c len__4771__auto___41207)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41208]));\n\nvar G__41209 \x3d (i__4772__auto___41208 + (1));\ni__4772__auto___41208 \x3d G__41209;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,k,v){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (512))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IAssociative$))))?true:false):false)){\nreturn coll.cljs$core$IAssociative$_assoc$arity$3(null,k,v);\n} else {\nif((!((coll \x3d\x3d null)))){\nreturn cljs.core._assoc(coll,k,v);\n} else {\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([k,v]);\n}\n}\n}));\n\n(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic \x3d (function (coll,k,v,kvs){\nwhile(true){\nvar ret \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(coll,k,v);\nif(cljs.core.truth_(kvs)){\nvar G__41217 \x3d ret;\nvar G__41219 \x3d cljs.core.first(kvs);\nvar G__41220 \x3d cljs.core.second(kvs);\nvar G__41221 \x3d cljs.core.nnext(kvs);\ncoll \x3d G__41217;\nk \x3d G__41219;\nv \x3d G__41220;\nkvs \x3d G__41221;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.assoc.cljs$lang$applyTo \x3d (function (seq38448){\nvar G__38449 \x3d cljs.core.first(seq38448);\nvar seq38448__$1 \x3d cljs.core.next(seq38448);\nvar G__38450 \x3d cljs.core.first(seq38448__$1);\nvar seq38448__$2 \x3d cljs.core.next(seq38448__$1);\nvar G__38451 \x3d cljs.core.first(seq38448__$2);\nvar seq38448__$3 \x3d cljs.core.next(seq38448__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38449,G__38450,G__38451,seq38448__$3);\n}));\n\n(cljs.core.assoc.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * dissoc[iate]. Returns a new map of the same (hashed/sorted) type,\n *   that does not contain a mapping for key(s).\n */\ncljs.core.dissoc \x3d (function cljs$core$dissoc(var_args){\nvar G__38458 \x3d arguments.length;\nswitch (G__38458) {\ncase 1:\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41227 \x3d arguments.length;\nvar i__4772__auto___41229 \x3d (0);\nwhile(true){\nif((i__4772__auto___41229 \x3c len__4771__auto___41227)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41229]));\n\nvar G__41234 \x3d (i__4772__auto___41229 + (1));\ni__4772__auto___41229 \x3d G__41234;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nreturn coll;\n}));\n\n(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,k){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._dissoc(coll,k);\n}\n}));\n\n(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic \x3d (function (coll,k,ks){\nwhile(true){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nvar ret \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(coll,k);\nif(cljs.core.truth_(ks)){\nvar G__41241 \x3d ret;\nvar G__41242 \x3d cljs.core.first(ks);\nvar G__41243 \x3d cljs.core.next(ks);\ncoll \x3d G__41241;\nk \x3d G__41242;\nks \x3d G__41243;\ncontinue;\n} else {\nreturn ret;\n}\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.dissoc.cljs$lang$applyTo \x3d (function (seq38455){\nvar G__38456 \x3d cljs.core.first(seq38455);\nvar seq38455__$1 \x3d cljs.core.next(seq38455);\nvar G__38457 \x3d cljs.core.first(seq38455__$1);\nvar seq38455__$2 \x3d cljs.core.next(seq38455__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38456,G__38457,seq38455__$2);\n}));\n\n(cljs.core.dissoc.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Return true if f is a JavaScript function or satisfies the Fn protocol.\n */\ncljs.core.fn_QMARK_ \x3d (function cljs$core$fn_QMARK_(f){\nvar or__4160__auto__ \x3d typeof f \x3d\x3d\x3d \x27function\x27;\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nif((!((f \x3d\x3d null)))){\nif(((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d f.cljs$core$Fn$)))){\nreturn true;\n} else {\nif((!f.cljs$lang$protocol_mask$partition$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.Fn,f);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.Fn,f);\n}\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.Fn}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.MetaFn \x3d (function (afn,meta){\nthis.afn \x3d afn;\nthis.meta \x3d meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393217;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.MetaFn.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_,new_meta){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.MetaFn(self__.afn,new_meta));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$Fn$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.MetaFn.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__38462 \x3d (arguments.length - (1));\nswitch (G__38462) {\ncase (0):\nreturn self__.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase (3):\nreturn self__.cljs$core$IFn$_invoke$arity$3((arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase (4):\nreturn self__.cljs$core$IFn$_invoke$arity$4((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase (5):\nreturn self__.cljs$core$IFn$_invoke$arity$5((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase (6):\nreturn self__.cljs$core$IFn$_invoke$arity$6((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ncase (7):\nreturn self__.cljs$core$IFn$_invoke$arity$7((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]));\n\nbreak;\ncase (8):\nreturn self__.cljs$core$IFn$_invoke$arity$8((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]));\n\nbreak;\ncase (9):\nreturn self__.cljs$core$IFn$_invoke$arity$9((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]));\n\nbreak;\ncase (10):\nreturn self__.cljs$core$IFn$_invoke$arity$10((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]));\n\nbreak;\ncase (11):\nreturn self__.cljs$core$IFn$_invoke$arity$11((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]));\n\nbreak;\ncase (12):\nreturn self__.cljs$core$IFn$_invoke$arity$12((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]));\n\nbreak;\ncase (13):\nreturn self__.cljs$core$IFn$_invoke$arity$13((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]));\n\nbreak;\ncase (14):\nreturn self__.cljs$core$IFn$_invoke$arity$14((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]));\n\nbreak;\ncase (15):\nreturn self__.cljs$core$IFn$_invoke$arity$15((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]));\n\nbreak;\ncase (16):\nreturn self__.cljs$core$IFn$_invoke$arity$16((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]));\n\nbreak;\ncase (17):\nreturn self__.cljs$core$IFn$_invoke$arity$17((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]));\n\nbreak;\ncase (18):\nreturn self__.cljs$core$IFn$_invoke$arity$18((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]));\n\nbreak;\ncase (19):\nreturn self__.cljs$core$IFn$_invoke$arity$19((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]));\n\nbreak;\ncase (20):\nreturn self__.cljs$core$IFn$_invoke$arity$20((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]));\n\nbreak;\ncase (21):\nreturn self__.cljs$core$IFn$_invoke$arity$21((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]),(arguments[(21)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.MetaFn.prototype.apply \x3d (function (self__,args38461){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args38461)));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$0 ? self__.afn.cljs$core$IFn$_invoke$arity$0() : self__.afn.call(null));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (a){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$1 ? self__.afn.cljs$core$IFn$_invoke$arity$1(a) : self__.afn.call(null,a));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,b){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$2 ? self__.afn.cljs$core$IFn$_invoke$arity$2(a,b) : self__.afn.call(null,a,b));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,c){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$3 ? self__.afn.cljs$core$IFn$_invoke$arity$3(a,b,c) : self__.afn.call(null,a,b,c));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,b,c,d){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$4 ? self__.afn.cljs$core$IFn$_invoke$arity$4(a,b,c,d) : self__.afn.call(null,a,b,c,d));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$5 \x3d (function (a,b,c,d,e){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$5 ? self__.afn.cljs$core$IFn$_invoke$arity$5(a,b,c,d,e) : self__.afn.call(null,a,b,c,d,e));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$6 \x3d (function (a,b,c,d,e,f){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$6 ? self__.afn.cljs$core$IFn$_invoke$arity$6(a,b,c,d,e,f) : self__.afn.call(null,a,b,c,d,e,f));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$7 \x3d (function (a,b,c,d,e,f,g){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$7 ? self__.afn.cljs$core$IFn$_invoke$arity$7(a,b,c,d,e,f,g) : self__.afn.call(null,a,b,c,d,e,f,g));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$8 \x3d (function (a,b,c,d,e,f,g,h){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$8 ? self__.afn.cljs$core$IFn$_invoke$arity$8(a,b,c,d,e,f,g,h) : self__.afn.call(null,a,b,c,d,e,f,g,h));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$9 \x3d (function (a,b,c,d,e,f,g,h,i){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$9 ? self__.afn.cljs$core$IFn$_invoke$arity$9(a,b,c,d,e,f,g,h,i) : self__.afn.call(null,a,b,c,d,e,f,g,h,i));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$10 \x3d (function (a,b,c,d,e,f,g,h,i,j){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$10 ? self__.afn.cljs$core$IFn$_invoke$arity$10(a,b,c,d,e,f,g,h,i,j) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$11 \x3d (function (a,b,c,d,e,f,g,h,i,j,k){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$11 ? self__.afn.cljs$core$IFn$_invoke$arity$11(a,b,c,d,e,f,g,h,i,j,k) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$12 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$12 ? self__.afn.cljs$core$IFn$_invoke$arity$12(a,b,c,d,e,f,g,h,i,j,k,l) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$13 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$13 ? self__.afn.cljs$core$IFn$_invoke$arity$13(a,b,c,d,e,f,g,h,i,j,k,l,m) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$14 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$14 ? self__.afn.cljs$core$IFn$_invoke$arity$14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$15 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$15 ? self__.afn.cljs$core$IFn$_invoke$arity$15(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$16 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$16 ? self__.afn.cljs$core$IFn$_invoke$arity$16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$17 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$17 ? self__.afn.cljs$core$IFn$_invoke$arity$17(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$18 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$18 ? self__.afn.cljs$core$IFn$_invoke$arity$18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$19 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$19 ? self__.afn.cljs$core$IFn$_invoke$arity$19(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$20 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.afn.cljs$core$IFn$_invoke$arity$20 ? self__.afn.cljs$core$IFn$_invoke$arity$20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : self__.afn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t));\n}));\n\n(cljs.core.MetaFn.prototype.cljs$core$IFn$_invoke$arity$21 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$22 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$22(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.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));\n}));\n\n(cljs.core.MetaFn.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22afn\x22,\x22afn\x22,216963467,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null)], null);\n}));\n\n(cljs.core.MetaFn.cljs$lang$type \x3d true);\n\n(cljs.core.MetaFn.cljs$lang$ctorStr \x3d \x22cljs.core/MetaFn\x22);\n\n(cljs.core.MetaFn.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/MetaFn\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/MetaFn.\n */\ncljs.core.__GT_MetaFn \x3d (function cljs$core$__GT_MetaFn(afn,meta){\nreturn (new cljs.core.MetaFn(afn,meta));\n});\n\n/**\n * Returns an object of the same type and value as obj, with\n *   map m as its metadata.\n */\ncljs.core.with_meta \x3d (function cljs$core$with_meta(o,meta){\nif(typeof o \x3d\x3d\x3d \x27function\x27){\nreturn (new cljs.core.MetaFn(o,meta));\n} else {\nif((o \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._with_meta(o,meta);\n}\n}\n});\n/**\n * Returns the metadata of obj, returns nil if there is no metadata.\n */\ncljs.core.meta \x3d (function cljs$core$meta(o){\nif((((!((o \x3d\x3d null))))?(((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IMeta$))))?true:(((!o.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IMeta,o):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IMeta,o)):false)){\nreturn cljs.core._meta(o);\n} else {\nreturn null;\n}\n});\n/**\n * For a list or queue, same as first, for a vector, same as, but much\n *   more efficient than, last. If the collection is empty, returns nil.\n */\ncljs.core.peek \x3d (function cljs$core$peek(coll){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._peek(coll);\n}\n});\n/**\n * For a list or queue, returns a new list/queue without the first\n *   item, for a vector, returns a new vector without the last item.\n *   Note - not the same as next/butlast.\n */\ncljs.core.pop \x3d (function cljs$core$pop(coll){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._pop(coll);\n}\n});\n/**\n * disj[oin]. Returns a new set of the same (hashed/sorted) type, that\n *   does not contain key(s).\n */\ncljs.core.disj \x3d (function cljs$core$disj(var_args){\nvar G__38469 \x3d arguments.length;\nswitch (G__38469) {\ncase 1:\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41333 \x3d arguments.length;\nvar i__4772__auto___41334 \x3d (0);\nwhile(true){\nif((i__4772__auto___41334 \x3c len__4771__auto___41333)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41334]));\n\nvar G__41338 \x3d (i__4772__auto___41334 + (1));\ni__4772__auto___41334 \x3d G__41338;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.disj.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nreturn coll;\n}));\n\n(cljs.core.disj.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,k){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._disjoin(coll,k);\n}\n}));\n\n(cljs.core.disj.cljs$core$IFn$_invoke$arity$variadic \x3d (function (coll,k,ks){\nwhile(true){\nif((coll \x3d\x3d null)){\nreturn null;\n} else {\nvar ret \x3d cljs.core.disj.cljs$core$IFn$_invoke$arity$2(coll,k);\nif(cljs.core.truth_(ks)){\nvar G__41349 \x3d ret;\nvar G__41350 \x3d cljs.core.first(ks);\nvar G__41351 \x3d cljs.core.next(ks);\ncoll \x3d G__41349;\nk \x3d G__41350;\nks \x3d G__41351;\ncontinue;\n} else {\nreturn ret;\n}\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.disj.cljs$lang$applyTo \x3d (function (seq38466){\nvar G__38467 \x3d cljs.core.first(seq38466);\nvar seq38466__$1 \x3d cljs.core.next(seq38466);\nvar G__38468 \x3d cljs.core.first(seq38466__$1);\nvar seq38466__$2 \x3d cljs.core.next(seq38466__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38467,G__38468,seq38466__$2);\n}));\n\n(cljs.core.disj.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns true if coll has no items - same as (not (seq coll)).\n *   Please use the idiom (seq x) rather than (not (empty? x))\n */\ncljs.core.empty_QMARK_ \x3d (function cljs$core$empty_QMARK_(coll){\nreturn (((coll \x3d\x3d null)) || (cljs.core.not(cljs.core.seq(coll))));\n});\n/**\n * Returns true if x satisfies ICollection\n */\ncljs.core.coll_QMARK_ \x3d (function cljs$core$coll_QMARK_(x){\nif((x \x3d\x3d null)){\nreturn false;\n} else {\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (8))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ICollection$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ICollection,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ICollection,x);\n}\n}\n});\n/**\n * Returns true if x satisfies ISet\n */\ncljs.core.set_QMARK_ \x3d (function cljs$core$set_QMARK_(x){\nif((x \x3d\x3d null)){\nreturn false;\n} else {\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (4096))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ISet$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISet,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISet,x);\n}\n}\n});\n/**\n * Returns true if coll implements IAssociative\n */\ncljs.core.associative_QMARK_ \x3d (function cljs$core$associative_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (512))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IAssociative$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IAssociative,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IAssociative,x);\n}\n});\n/**\n * Returns true if coll implements IFind\n */\ncljs.core.ifind_QMARK_ \x3d (function cljs$core$ifind_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif(((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IFind$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IFind,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IFind,x);\n}\n});\n/**\n * Returns true if coll satisfies ISequential\n */\ncljs.core.sequential_QMARK_ \x3d (function cljs$core$sequential_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (16777216))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ISequential$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISequential,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISequential,x);\n}\n});\n/**\n * Returns true if coll satisfies ISorted\n */\ncljs.core.sorted_QMARK_ \x3d (function cljs$core$sorted_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (268435456))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ISorted$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISorted,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISorted,x);\n}\n});\n/**\n * Returns true if coll satisfies IReduce\n */\ncljs.core.reduceable_QMARK_ \x3d (function cljs$core$reduceable_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (524288))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IReduce$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IReduce,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IReduce,x);\n}\n});\n/**\n * Return true if x satisfies IMap\n */\ncljs.core.map_QMARK_ \x3d (function cljs$core$map_QMARK_(x){\nif((x \x3d\x3d null)){\nreturn false;\n} else {\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (1024))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IMap$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IMap,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IMap,x);\n}\n}\n});\n/**\n * Return true if x satisfies IRecord\n */\ncljs.core.record_QMARK_ \x3d (function cljs$core$record_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (67108864))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IRecord$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IRecord,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IRecord,x);\n}\n});\n/**\n * Return true if x satisfies IVector\n */\ncljs.core.vector_QMARK_ \x3d (function cljs$core$vector_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (16384))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IVector$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IVector,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IVector,x);\n}\n});\n\n/**\n * Return true if x satisfies IChunkedSeq.\n */\ncljs.core.chunked_seq_QMARK_ \x3d (function cljs$core$chunked_seq_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition1$ \x26 (512))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IChunkedSeq$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n});\n/**\n * Create JavaSript object from an even number arguments representing\n *   interleaved keys and values.\n */\ncljs.core.js_obj \x3d (function cljs$core$js_obj(var_args){\nvar G__38483 \x3d arguments.length;\nswitch (G__38483) {\ncase 0:\nreturn cljs.core.js_obj.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41387 \x3d arguments.length;\nvar i__4772__auto___41388 \x3d (0);\nwhile(true){\nif((i__4772__auto___41388 \x3c len__4771__auto___41387)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41388]));\n\nvar G__41390 \x3d (i__4772__auto___41388 + (1));\ni__4772__auto___41388 \x3d G__41390;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((0)),(0),null));\nreturn cljs.core.js_obj.cljs$core$IFn$_invoke$arity$variadic(argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.js_obj.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn ({});\n}));\n\n(cljs.core.js_obj.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keyvals){\nreturn (cljs.core.apply.cljs$core$IFn$_invoke$arity$2 ? cljs.core.apply.cljs$core$IFn$_invoke$arity$2(goog.object.create,keyvals) : cljs.core.apply.call(null,goog.object.create,keyvals));\n}));\n\n/** @this {Function} */\n(cljs.core.js_obj.cljs$lang$applyTo \x3d (function (seq38482){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq38482));\n}));\n\n(cljs.core.js_obj.cljs$lang$maxFixedArity \x3d (0));\n\n/**\n * Return the JavaScript keys for an object.\n */\ncljs.core.js_keys \x3d (function cljs$core$js_keys(obj){\nreturn goog.object.getKeys(obj);\n});\n/**\n * Delete a property from a JavaScript object.\n *   Returns true upon success, false otherwise.\n */\ncljs.core.js_delete \x3d (function cljs$core$js_delete(obj,key){\nreturn delete obj[key];\n});\ncljs.core.array_copy \x3d (function cljs$core$array_copy(from,i,to,j,len){\nvar i__$1 \x3d i;\nvar j__$1 \x3d j;\nvar len__$1 \x3d len;\nwhile(true){\nif((len__$1 \x3d\x3d\x3d (0))){\nreturn to;\n} else {\n(to[j__$1] \x3d (from[i__$1]));\n\nvar G__41395 \x3d (i__$1 + (1));\nvar G__41396 \x3d (j__$1 + (1));\nvar G__41397 \x3d (len__$1 - (1));\ni__$1 \x3d G__41395;\nj__$1 \x3d G__41396;\nlen__$1 \x3d G__41397;\ncontinue;\n}\nbreak;\n}\n});\ncljs.core.array_copy_downward \x3d (function cljs$core$array_copy_downward(from,i,to,j,len){\nvar i__$1 \x3d (i + (len - (1)));\nvar j__$1 \x3d (j + (len - (1)));\nvar len__$1 \x3d len;\nwhile(true){\nif((len__$1 \x3d\x3d\x3d (0))){\nreturn to;\n} else {\n(to[j__$1] \x3d (from[i__$1]));\n\nvar G__41398 \x3d (i__$1 - (1));\nvar G__41399 \x3d (j__$1 - (1));\nvar G__41400 \x3d (len__$1 - (1));\ni__$1 \x3d G__41398;\nj__$1 \x3d G__41399;\nlen__$1 \x3d G__41400;\ncontinue;\n}\nbreak;\n}\n});\ncljs.core.lookup_sentinel \x3d ({});\n/**\n * Returns true if x is the value false, false otherwise.\n */\ncljs.core.false_QMARK_ \x3d (function cljs$core$false_QMARK_(x){\nreturn x \x3d\x3d\x3d false;\n});\n/**\n * Returns true if x is the value true, false otherwise.\n */\ncljs.core.true_QMARK_ \x3d (function cljs$core$true_QMARK_(x){\nreturn x \x3d\x3d\x3d true;\n});\n/**\n * Return true if x is a Boolean\n */\ncljs.core.boolean_QMARK_ \x3d (function cljs$core$boolean_QMARK_(x){\nreturn ((x \x3d\x3d\x3d true) || (x \x3d\x3d\x3d false));\n});\n/**\n * Returns true if x identical to the JavaScript undefined value.\n */\ncljs.core.undefined_QMARK_ \x3d (function cljs$core$undefined_QMARK_(x){\nreturn (void 0 \x3d\x3d\x3d x);\n});\n/**\n * Return true if s satisfies ISeq\n */\ncljs.core.seq_QMARK_ \x3d (function cljs$core$seq_QMARK_(s){\nif((s \x3d\x3d null)){\nreturn false;\n} else {\nif((!((s \x3d\x3d null)))){\nif((((s.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d s.cljs$core$ISeq$)))){\nreturn true;\n} else {\nif((!s.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISeq,s);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISeq,s);\n}\n}\n});\n/**\n * Return true if the seq function is supported for s\n */\ncljs.core.seqable_QMARK_ \x3d (function cljs$core$seqable_QMARK_(s){\nvar or__4160__auto__ \x3d (s \x3d\x3d null);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (((!((s \x3d\x3d null))))?(((((s.cljs$lang$protocol_mask$partition0$ \x26 (8388608))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d s.cljs$core$ISeqable$))))?true:(((!s.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.ISeqable,s):false)):cljs.core.native_satisfies_QMARK_(cljs.core.ISeqable,s));\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nreturn ((cljs.core.array_QMARK_(s)) || (typeof s \x3d\x3d\x3d \x27string\x27));\n}\n}\n});\n/**\n * Coerce to boolean\n */\ncljs.core.boolean$ \x3d (function cljs$core$boolean(x){\nif((x \x3d\x3d null)){\nreturn false;\n} else {\nif(x \x3d\x3d\x3d false){\nreturn false;\n} else {\nreturn true;\n\n}\n}\n});\n/**\n * Returns true if f returns true for fn? or satisfies IFn.\n */\ncljs.core.ifn_QMARK_ \x3d (function cljs$core$ifn_QMARK_(f){\nvar or__4160__auto__ \x3d cljs.core.fn_QMARK_(f);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nif((!((f \x3d\x3d null)))){\nif((((f.cljs$lang$protocol_mask$partition0$ \x26 (1))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d f.cljs$core$IFn$)))){\nreturn true;\n} else {\nif((!f.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IFn,f);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IFn,f);\n}\n}\n});\n/**\n * Returns true if n is a JavaScript number with no decimal part.\n */\ncljs.core.integer_QMARK_ \x3d (function cljs$core$integer_QMARK_(n){\nreturn ((typeof n \x3d\x3d\x3d \x27number\x27) \x26\x26 ((!(isNaN(n)))) \x26\x26 ((!((n \x3d\x3d\x3d Infinity)))) \x26\x26 ((parseFloat(n) \x3d\x3d\x3d parseInt(n,(10)))));\n});\n/**\n * Return true if x satisfies integer? or is an instance of goog.math.Integer\n * or goog.math.Long.\n */\ncljs.core.int_QMARK_ \x3d (function cljs$core$int_QMARK_(x){\nreturn ((cljs.core.integer_QMARK_(x)) || ((x instanceof goog.math.Integer)) || ((x instanceof goog.math.Long)));\n});\n/**\n * Return true if x satisfies int? and is positive.\n */\ncljs.core.pos_int_QMARK_ \x3d (function cljs$core$pos_int_QMARK_(x){\nif(cljs.core.integer_QMARK_(x)){\nreturn (x \x3e (0));\n} else {\nif((x instanceof goog.math.Integer)){\nreturn ((cljs.core.not(x.isNegative())) \x26\x26 (cljs.core.not(x.isZero())));\n} else {\nif((x instanceof goog.math.Long)){\nreturn ((cljs.core.not(x.isNegative())) \x26\x26 (cljs.core.not(x.isZero())));\n} else {\nreturn false;\n\n}\n}\n}\n});\n/**\n * Return true if x satisfies int? and is negative.\n */\ncljs.core.neg_int_QMARK_ \x3d (function cljs$core$neg_int_QMARK_(x){\nif(cljs.core.integer_QMARK_(x)){\nreturn (x \x3c (0));\n} else {\nif((x instanceof goog.math.Integer)){\nreturn x.isNegative();\n} else {\nif((x instanceof goog.math.Long)){\nreturn x.isNegative();\n} else {\nreturn false;\n\n}\n}\n}\n});\n/**\n * Return true if x satisfies int? and is a natural integer value.\n */\ncljs.core.nat_int_QMARK_ \x3d (function cljs$core$nat_int_QMARK_(x){\nif(cljs.core.integer_QMARK_(x)){\nreturn (!((x \x3c (0))));\n} else {\nif((x instanceof goog.math.Integer)){\nreturn cljs.core.not(x.isNegative());\n} else {\nif((x instanceof goog.math.Long)){\nreturn cljs.core.not(x.isNegative());\n} else {\nreturn false;\n\n}\n}\n}\n});\n/**\n * Returns true for JavaScript numbers, false otherwise.\n */\ncljs.core.float_QMARK_ \x3d (function cljs$core$float_QMARK_(x){\nreturn typeof x \x3d\x3d\x3d \x27number\x27;\n});\n/**\n * Returns true for JavaScript numbers, false otherwise.\n */\ncljs.core.double_QMARK_ \x3d (function cljs$core$double_QMARK_(x){\nreturn typeof x \x3d\x3d\x3d \x27number\x27;\n});\n/**\n * Returns true for Infinity and -Infinity values.\n */\ncljs.core.infinite_QMARK_ \x3d (function cljs$core$infinite_QMARK_(x){\nreturn (((x \x3d\x3d\x3d Number.POSITIVE_INFINITY)) || ((x \x3d\x3d\x3d Number.NEGATIVE_INFINITY)));\n});\n/**\n * Returns true if key is present in the given collection, otherwise\n *   returns false.  Note that for numerically indexed collections like\n *   vectors and arrays, this tests if the numeric key is within the\n *   range of indexes. \x27contains?\x27 operates constant or logarithmic time;\n *   it will not perform a linear search for a value.  See also \x27some\x27.\n */\ncljs.core.contains_QMARK_ \x3d (function cljs$core$contains_QMARK_(coll,v){\nif((cljs.core.get.cljs$core$IFn$_invoke$arity$3(coll,v,cljs.core.lookup_sentinel) \x3d\x3d\x3d cljs.core.lookup_sentinel)){\nreturn false;\n} else {\nreturn true;\n}\n});\n/**\n * Returns the map entry for key, or nil if key not present.\n */\ncljs.core.find \x3d (function cljs$core$find(coll,k){\nif(cljs.core.ifind_QMARK_(coll)){\nreturn cljs.core._find(coll,k);\n} else {\nif((((!((coll \x3d\x3d null)))) \x26\x26 (cljs.core.associative_QMARK_(coll)) \x26\x26 (cljs.core.contains_QMARK_(coll,k)))){\nreturn (new cljs.core.MapEntry(k,cljs.core.get.cljs$core$IFn$_invoke$arity$2(coll,k),null));\n} else {\nreturn null;\n}\n}\n});\n/**\n * Returns true if no two of the arguments are \x3d\n */\ncljs.core.distinct_QMARK_ \x3d (function cljs$core$distinct_QMARK_(var_args){\nvar G__38498 \x3d arguments.length;\nswitch (G__38498) {\ncase 1:\nreturn cljs.core.distinct_QMARK_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.distinct_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41421 \x3d arguments.length;\nvar i__4772__auto___41422 \x3d (0);\nwhile(true){\nif((i__4772__auto___41422 \x3c len__4771__auto___41421)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41422]));\n\nvar G__41423 \x3d (i__4772__auto___41422 + (1));\ni__4772__auto___41422 \x3d G__41423;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.distinct_QMARK_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.distinct_QMARK_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core.distinct_QMARK_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,y)));\n}));\n\n(cljs.core.distinct_QMARK_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,y)))){\nvar s \x3d cljs.core.PersistentHashSet.createAsIfByAssoc([x,y]);\nvar xs \x3d more;\nwhile(true){\nvar x__$1 \x3d cljs.core.first(xs);\nvar etc \x3d cljs.core.next(xs);\nif(cljs.core.truth_(xs)){\nif(cljs.core.contains_QMARK_(s,x__$1)){\nreturn false;\n} else {\nvar G__41433 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(s,x__$1);\nvar G__41434 \x3d etc;\ns \x3d G__41433;\nxs \x3d G__41434;\ncontinue;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n} else {\nreturn false;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.distinct_QMARK_.cljs$lang$applyTo \x3d (function (seq38495){\nvar G__38496 \x3d cljs.core.first(seq38495);\nvar seq38495__$1 \x3d cljs.core.next(seq38495);\nvar G__38497 \x3d cljs.core.first(seq38495__$1);\nvar seq38495__$2 \x3d cljs.core.next(seq38495__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38496,G__38497,seq38495__$2);\n}));\n\n(cljs.core.distinct_QMARK_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Comparator. Returns a negative number, zero, or a positive number\n *   when x is logically \x27less than\x27, \x27equal to\x27, or \x27greater than\x27\n *   y. Uses IComparable if available and google.array.defaultCompare for objects\n *  of the same type and special-cases nil to be less than any other object.\n */\ncljs.core.compare \x3d (function cljs$core$compare(x,y){\nif((x \x3d\x3d\x3d y)){\nreturn (0);\n} else {\nif((x \x3d\x3d null)){\nreturn (-1);\n} else {\nif((y \x3d\x3d null)){\nreturn (1);\n} else {\nif(typeof x \x3d\x3d\x3d \x27number\x27){\nif(typeof y \x3d\x3d\x3d \x27number\x27){\nreturn goog.array.defaultCompare(x,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n} else {\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition1$ \x26 (2048))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IComparable$))))?true:(((!x.cljs$lang$protocol_mask$partition1$))?cljs.core.native_satisfies_QMARK_(cljs.core.IComparable,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IComparable,x))){\nreturn cljs.core._compare(x,y);\n} else {\nif(((((typeof x \x3d\x3d\x3d \x27string\x27) || (cljs.core.array_QMARK_(x)) || (x \x3d\x3d\x3d true) || (x \x3d\x3d\x3d false))) \x26\x26 ((cljs.core.type(x) \x3d\x3d\x3d cljs.core.type(y))))){\nreturn goog.array.defaultCompare(x,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n\n}\n}\n}\n}\n}\n});\n/**\n * Compare indexed collection.\n */\ncljs.core.compare_indexed \x3d (function cljs$core$compare_indexed(var_args){\nvar G__38501 \x3d arguments.length;\nswitch (G__38501) {\ncase 2:\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 4:\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2 \x3d (function (xs,ys){\nvar xl \x3d cljs.core.count(xs);\nvar yl \x3d cljs.core.count(ys);\nif((xl \x3c yl)){\nreturn (-1);\n} else {\nif((xl \x3e yl)){\nreturn (1);\n} else {\nif((xl \x3d\x3d\x3d (0))){\nreturn (0);\n} else {\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$4(xs,ys,xl,(0));\n\n}\n}\n}\n}));\n\n(cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$4 \x3d (function (xs,ys,len,n){\nwhile(true){\nvar d \x3d cljs.core.compare(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(xs,n),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(ys,n));\nif((((d \x3d\x3d\x3d (0))) \x26\x26 (((n + (1)) \x3c len)))){\nvar G__41455 \x3d xs;\nvar G__41456 \x3d ys;\nvar G__41457 \x3d len;\nvar G__41458 \x3d (n + (1));\nxs \x3d G__41455;\nys \x3d G__41456;\nlen \x3d G__41457;\nn \x3d G__41458;\ncontinue;\n} else {\nreturn d;\n}\nbreak;\n}\n}));\n\n(cljs.core.compare_indexed.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Given a fn that might be boolean valued or a comparator,\n * return a fn that is a comparator.\n */\ncljs.core.fn__GT_comparator \x3d (function cljs$core$fn__GT_comparator(f){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(f,cljs.core.compare)){\nreturn cljs.core.compare;\n} else {\nreturn (function (x,y){\nvar r \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y));\nif(typeof r \x3d\x3d\x3d \x27number\x27){\nreturn r;\n} else {\nif(cljs.core.truth_(r)){\nreturn (-1);\n} else {\nif(cljs.core.truth_((f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(y,x) : f.call(null,y,x)))){\nreturn (1);\n} else {\nreturn (0);\n}\n}\n}\n});\n}\n});\n/**\n * Returns a sorted sequence of the items in coll. Comp can be\n * boolean-valued comparison function, or a -/0/+ valued comparator.\n * Comp defaults to compare.\n */\ncljs.core.sort \x3d (function cljs$core$sort(var_args){\nvar G__38503 \x3d arguments.length;\nswitch (G__38503) {\ncase 1:\nreturn cljs.core.sort.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.sort.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.sort.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nreturn cljs.core.sort.cljs$core$IFn$_invoke$arity$2(cljs.core.compare,coll);\n}));\n\n(cljs.core.sort.cljs$core$IFn$_invoke$arity$2 \x3d (function (comp,coll){\nif(cljs.core.seq(coll)){\nvar a \x3d (cljs.core.to_array.cljs$core$IFn$_invoke$arity$1 ? cljs.core.to_array.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.to_array.call(null,coll));\ngoog.array.stableSort(a,cljs.core.fn__GT_comparator(comp));\n\nreturn cljs.core.with_meta(cljs.core.seq(a),cljs.core.meta(coll));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.sort.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a sorted sequence of the items in coll, where the sort\n * order is determined by comparing (keyfn item).  Comp can be\n * boolean-valued comparison function, or a -/0/+ valued comparator.\n * Comp defaults to compare.\n */\ncljs.core.sort_by \x3d (function cljs$core$sort_by(var_args){\nvar G__38505 \x3d arguments.length;\nswitch (G__38505) {\ncase 2:\nreturn cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.sort_by.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2 \x3d (function (keyfn,coll){\nreturn cljs.core.sort_by.cljs$core$IFn$_invoke$arity$3(keyfn,cljs.core.compare,coll);\n}));\n\n(cljs.core.sort_by.cljs$core$IFn$_invoke$arity$3 \x3d (function (keyfn,comp,coll){\nreturn cljs.core.sort.cljs$core$IFn$_invoke$arity$2((function (x,y){\nvar G__38507 \x3d (keyfn.cljs$core$IFn$_invoke$arity$1 ? keyfn.cljs$core$IFn$_invoke$arity$1(x) : keyfn.call(null,x));\nvar G__38508 \x3d (keyfn.cljs$core$IFn$_invoke$arity$1 ? keyfn.cljs$core$IFn$_invoke$arity$1(y) : keyfn.call(null,y));\nvar fexpr__38506 \x3d cljs.core.fn__GT_comparator(comp);\nreturn (fexpr__38506.cljs$core$IFn$_invoke$arity$2 ? fexpr__38506.cljs$core$IFn$_invoke$arity$2(G__38507,G__38508) : fexpr__38506.call(null,G__38507,G__38508));\n}),coll);\n}));\n\n(cljs.core.sort_by.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.seq_reduce \x3d (function cljs$core$seq_reduce(var_args){\nvar G__38510 \x3d arguments.length;\nswitch (G__38510) {\ncase 2:\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nvar temp__5751__auto__ \x3d cljs.core.seq(coll);\nif(temp__5751__auto__){\nvar s \x3d temp__5751__auto__;\nvar G__38511 \x3d f;\nvar G__38512 \x3d cljs.core.first(s);\nvar G__38513 \x3d cljs.core.next(s);\nreturn (cljs.core.reduce.cljs$core$IFn$_invoke$arity$3 ? cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(G__38511,G__38512,G__38513) : cljs.core.reduce.call(null,G__38511,G__38512,G__38513));\n} else {\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n}\n}));\n\n(cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,val,coll){\nvar val__$1 \x3d val;\nvar coll__$1 \x3d cljs.core.seq(coll);\nwhile(true){\nif(coll__$1){\nvar nval \x3d (function (){var G__38514 \x3d val__$1;\nvar G__38515 \x3d cljs.core.first(coll__$1);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38514,G__38515) : f.call(null,G__38514,G__38515));\n})();\nif(cljs.core.reduced_QMARK_(nval)){\nreturn cljs.core.deref(nval);\n} else {\nvar G__41477 \x3d nval;\nvar G__41478 \x3d cljs.core.next(coll__$1);\nval__$1 \x3d G__41477;\ncoll__$1 \x3d G__41478;\ncontinue;\n}\n} else {\nreturn val__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.seq_reduce.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Return a random permutation of coll\n */\ncljs.core.shuffle \x3d (function cljs$core$shuffle(coll){\nvar a \x3d (cljs.core.to_array.cljs$core$IFn$_invoke$arity$1 ? cljs.core.to_array.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.to_array.call(null,coll));\ngoog.array.shuffle(a);\n\nreturn (cljs.core.vec.cljs$core$IFn$_invoke$arity$1 ? cljs.core.vec.cljs$core$IFn$_invoke$arity$1(a) : cljs.core.vec.call(null,a));\n});\ncljs.core.iter_reduce \x3d (function cljs$core$iter_reduce(var_args){\nvar G__38517 \x3d arguments.length;\nswitch (G__38517) {\ncase 2:\nreturn cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,f){\nvar iter \x3d cljs.core._iterator(coll);\nif(cljs.core.truth_(iter.hasNext())){\nvar init \x3d iter.next();\nvar acc \x3d init;\nwhile(true){\nif(iter.hasNext()){\nvar nacc \x3d (function (){var G__38518 \x3d acc;\nvar G__38519 \x3d iter.next();\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38518,G__38519) : f.call(null,G__38518,G__38519));\n})();\nif(cljs.core.reduced_QMARK_(nacc)){\nreturn cljs.core.deref(nacc);\n} else {\nvar G__41496 \x3d nacc;\nacc \x3d G__41496;\ncontinue;\n}\n} else {\nreturn acc;\n}\nbreak;\n}\n} else {\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n}\n}));\n\n(cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (coll,f,init){\nvar iter \x3d cljs.core._iterator(coll);\nvar acc \x3d init;\nwhile(true){\nif(iter.hasNext()){\nvar nacc \x3d (function (){var G__38520 \x3d acc;\nvar G__38521 \x3d iter.next();\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38520,G__38521) : f.call(null,G__38520,G__38521));\n})();\nif(cljs.core.reduced_QMARK_(nacc)){\nreturn cljs.core.deref(nacc);\n} else {\nvar G__41503 \x3d nacc;\nacc \x3d G__41503;\ncontinue;\n}\n} else {\nreturn acc;\n}\nbreak;\n}\n}));\n\n(cljs.core.iter_reduce.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * f should be a function of 2 arguments. If val is not supplied,\n *   returns the result of applying f to the first 2 items in coll, then\n *   applying f to that result and the 3rd item, etc. If coll contains no\n *   items, f must accept no arguments as well, and reduce returns the\n *   result of calling f with no arguments.  If coll has only 1 item, it\n *   is returned and f is not called.  If val is supplied, returns the\n *   result of applying f to val and the first item in coll, then\n *   applying f to that result and the 2nd item, etc. If coll contains no\n *   items, returns val and f is not called.\n */\ncljs.core.reduce \x3d (function cljs$core$reduce(var_args){\nvar G__38523 \x3d arguments.length;\nswitch (G__38523) {\ncase 2:\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.reduce.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (524288))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IReduce$))))?true:false):false)){\nreturn coll.cljs$core$IReduce$_reduce$arity$2(null,f);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$2(coll,f);\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$2(coll,f);\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.IReduce,coll)){\nreturn cljs.core._reduce(coll,f);\n} else {\nif(cljs.core.iterable_QMARK_(coll)){\nreturn cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$2(coll,f);\n} else {\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll);\n\n}\n}\n}\n}\n}\n}));\n\n(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,val,coll){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (524288))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IReduce$))))?true:false):false)){\nreturn coll.cljs$core$IReduce$_reduce$arity$3(null,f,val);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$3(coll,f,val);\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$3(coll,f,val);\n} else {\nif(cljs.core.native_satisfies_QMARK_(cljs.core.IReduce,coll)){\nreturn cljs.core._reduce(coll,f,val);\n} else {\nif(cljs.core.iterable_QMARK_(coll)){\nreturn cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$3(coll,f,val);\n} else {\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,val,coll);\n\n}\n}\n}\n}\n}\n}));\n\n(cljs.core.reduce.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Reduces an associative collection. f should be a function of 3\n *   arguments. Returns the result of applying f to init, the first key\n *   and the first value in coll, then applying f to that result and the\n *   2nd key and value, etc. If coll contains no entries, returns init\n *   and f is not called. Note that reduce-kv is supported on vectors,\n *   where the keys will be the ordinals.\n */\ncljs.core.reduce_kv \x3d (function cljs$core$reduce_kv(f,init,coll){\nif((!((coll \x3d\x3d null)))){\nreturn cljs.core._kv_reduce(coll,f,init);\n} else {\nreturn init;\n}\n});\n/**\n * Returns its argument.\n */\ncljs.core.identity \x3d (function cljs$core$identity(x){\nreturn x;\n});\n/**\n * Takes a reducing function f of 2 args and returns a fn suitable for\n *   transduce by adding an arity-1 signature that calls cf (default -\n *   identity) on the result argument.\n */\ncljs.core.completing \x3d (function cljs$core$completing(var_args){\nvar G__38527 \x3d arguments.length;\nswitch (G__38527) {\ncase 1:\nreturn cljs.core.completing.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.completing.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.completing.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn cljs.core.completing.cljs$core$IFn$_invoke$arity$2(f,cljs.core.identity);\n}));\n\n(cljs.core.completing.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,cf){\nreturn (function() {\nvar G__41515 \x3d null;\nvar G__41515__0 \x3d (function (){\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n});\nvar G__41515__1 \x3d (function (x){\nreturn (cf.cljs$core$IFn$_invoke$arity$1 ? cf.cljs$core$IFn$_invoke$arity$1(x) : cf.call(null,x));\n});\nvar G__41515__2 \x3d (function (x,y){\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y));\n});\nG__41515 \x3d function(x,y){\nswitch(arguments.length){\ncase 0:\nreturn G__41515__0.call(this);\ncase 1:\nreturn G__41515__1.call(this,x);\ncase 2:\nreturn G__41515__2.call(this,x,y);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__41515.cljs$core$IFn$_invoke$arity$0 \x3d G__41515__0;\nG__41515.cljs$core$IFn$_invoke$arity$1 \x3d G__41515__1;\nG__41515.cljs$core$IFn$_invoke$arity$2 \x3d G__41515__2;\nreturn G__41515;\n})()\n}));\n\n(cljs.core.completing.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * reduce with a transformation of f (xf). If init is not\n *   supplied, (f) will be called to produce it. f should be a reducing\n *   step function that accepts both 1 and 2 arguments, if it accepts\n *   only 2 you can add the arity-1 with \x27completing\x27. Returns the result\n *   of applying (the transformed) xf to init and the first item in coll,\n *   then applying xf to that result and the 2nd item, etc. If coll\n *   contains no items, returns init and f is not called. Note that\n *   certain transforms may inject or skip items.\n */\ncljs.core.transduce \x3d (function cljs$core$transduce(var_args){\nvar G__38529 \x3d arguments.length;\nswitch (G__38529) {\ncase 3:\nreturn cljs.core.transduce.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.transduce.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.transduce.cljs$core$IFn$_invoke$arity$3 \x3d (function (xform,f,coll){\nreturn cljs.core.transduce.cljs$core$IFn$_invoke$arity$4(xform,f,(f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null)),coll);\n}));\n\n(cljs.core.transduce.cljs$core$IFn$_invoke$arity$4 \x3d (function (xform,f,init,coll){\nvar f__$1 \x3d (xform.cljs$core$IFn$_invoke$arity$1 ? xform.cljs$core$IFn$_invoke$arity$1(f) : xform.call(null,f));\nvar ret \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(f__$1,init,coll);\nreturn (f__$1.cljs$core$IFn$_invoke$arity$1 ? f__$1.cljs$core$IFn$_invoke$arity$1(ret) : f__$1.call(null,ret));\n}));\n\n(cljs.core.transduce.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Returns the sum of nums. (+) returns 0.\n */\ncljs.core._PLUS_ \x3d (function cljs$core$_PLUS_(var_args){\nvar G__38534 \x3d arguments.length;\nswitch (G__38534) {\ncase 0:\nreturn cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41529 \x3d arguments.length;\nvar i__4772__auto___41530 \x3d (0);\nwhile(true){\nif((i__4772__auto___41530 \x3c len__4771__auto___41529)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41530]));\n\nvar G__41531 \x3d (i__4772__auto___41530 + (1));\ni__4772__auto___41530 \x3d G__41531;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (0);\n}));\n\n(cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x + y);\n}));\n\n(cljs.core._PLUS_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._PLUS_,(x + y),more);\n}));\n\n/** @this {Function} */\n(cljs.core._PLUS_.cljs$lang$applyTo \x3d (function (seq38531){\nvar G__38532 \x3d cljs.core.first(seq38531);\nvar seq38531__$1 \x3d cljs.core.next(seq38531);\nvar G__38533 \x3d cljs.core.first(seq38531__$1);\nvar seq38531__$2 \x3d cljs.core.next(seq38531__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38532,G__38533,seq38531__$2);\n}));\n\n(cljs.core._PLUS_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * If no ys are supplied, returns the negation of x, else subtracts\n *   the ys from x and returns the result.\n */\ncljs.core._ \x3d (function cljs$core$_(var_args){\nvar G__38539 \x3d arguments.length;\nswitch (G__38539) {\ncase 1:\nreturn cljs.core._.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41538 \x3d arguments.length;\nvar i__4772__auto___41539 \x3d (0);\nwhile(true){\nif((i__4772__auto___41539 \x3c len__4771__auto___41538)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41539]));\n\nvar G__41540 \x3d (i__4772__auto___41539 + (1));\ni__4772__auto___41539 \x3d G__41540;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn (- x);\n}));\n\n(cljs.core._.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x - y);\n}));\n\n(cljs.core._.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._,(x - y),more);\n}));\n\n/** @this {Function} */\n(cljs.core._.cljs$lang$applyTo \x3d (function (seq38536){\nvar G__38537 \x3d cljs.core.first(seq38536);\nvar seq38536__$1 \x3d cljs.core.next(seq38536);\nvar G__38538 \x3d cljs.core.first(seq38536__$1);\nvar seq38536__$2 \x3d cljs.core.next(seq38536__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38537,G__38538,seq38536__$2);\n}));\n\n(cljs.core._.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns the product of nums. (*) returns 1.\n */\ncljs.core._STAR_ \x3d (function cljs$core$_STAR_(var_args){\nvar G__38544 \x3d arguments.length;\nswitch (G__38544) {\ncase 0:\nreturn cljs.core._STAR_.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core._STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41550 \x3d arguments.length;\nvar i__4772__auto___41551 \x3d (0);\nwhile(true){\nif((i__4772__auto___41551 \x3c len__4771__auto___41550)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41551]));\n\nvar G__41552 \x3d (i__4772__auto___41551 + (1));\ni__4772__auto___41551 \x3d G__41552;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._STAR_.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (1);\n}));\n\n(cljs.core._STAR_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core._STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x * y);\n}));\n\n(cljs.core._STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._STAR_,(x * y),more);\n}));\n\n/** @this {Function} */\n(cljs.core._STAR_.cljs$lang$applyTo \x3d (function (seq38541){\nvar G__38542 \x3d cljs.core.first(seq38541);\nvar seq38541__$1 \x3d cljs.core.next(seq38541);\nvar G__38543 \x3d cljs.core.first(seq38541__$1);\nvar seq38541__$2 \x3d cljs.core.next(seq38541__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38542,G__38543,seq38541__$2);\n}));\n\n(cljs.core._STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * If no denominators are supplied, returns 1/numerator,\n *   else returns numerator divided by all of the denominators.\n */\ncljs.core._SLASH_ \x3d (function cljs$core$_SLASH_(var_args){\nvar G__38549 \x3d arguments.length;\nswitch (G__38549) {\ncase 1:\nreturn cljs.core._SLASH_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._SLASH_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41559 \x3d arguments.length;\nvar i__4772__auto___41560 \x3d (0);\nwhile(true){\nif((i__4772__auto___41560 \x3c len__4771__auto___41559)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41560]));\n\nvar G__41571 \x3d (i__4772__auto___41560 + (1));\ni__4772__auto___41560 \x3d G__41571;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._SLASH_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._SLASH_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn ((1) / x);\n}));\n\n(cljs.core._SLASH_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x / y);\n}));\n\n(cljs.core._SLASH_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._SLASH_,(x / y),more);\n}));\n\n/** @this {Function} */\n(cljs.core._SLASH_.cljs$lang$applyTo \x3d (function (seq38546){\nvar G__38547 \x3d cljs.core.first(seq38546);\nvar seq38546__$1 \x3d cljs.core.next(seq38546);\nvar G__38548 \x3d cljs.core.first(seq38546__$1);\nvar seq38546__$2 \x3d cljs.core.next(seq38546__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38547,G__38548,seq38546__$2);\n}));\n\n(cljs.core._SLASH_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns non-nil if nums are in monotonically increasing order,\n *   otherwise false.\n */\ncljs.core._LT_ \x3d (function cljs$core$_LT_(var_args){\nvar G__38554 \x3d arguments.length;\nswitch (G__38554) {\ncase 1:\nreturn cljs.core._LT_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._LT_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41579 \x3d arguments.length;\nvar i__4772__auto___41581 \x3d (0);\nwhile(true){\nif((i__4772__auto___41581 \x3c len__4771__auto___41579)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41581]));\n\nvar G__41582 \x3d (i__4772__auto___41581 + (1));\ni__4772__auto___41581 \x3d G__41582;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._LT_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._LT_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core._LT_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x \x3c y);\n}));\n\n(cljs.core._LT_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nwhile(true){\nif((x \x3c y)){\nif(cljs.core.next(more)){\nvar G__41585 \x3d y;\nvar G__41586 \x3d cljs.core.first(more);\nvar G__41587 \x3d cljs.core.next(more);\nx \x3d G__41585;\ny \x3d G__41586;\nmore \x3d G__41587;\ncontinue;\n} else {\nreturn (y \x3c cljs.core.first(more));\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core._LT_.cljs$lang$applyTo \x3d (function (seq38551){\nvar G__38552 \x3d cljs.core.first(seq38551);\nvar seq38551__$1 \x3d cljs.core.next(seq38551);\nvar G__38553 \x3d cljs.core.first(seq38551__$1);\nvar seq38551__$2 \x3d cljs.core.next(seq38551__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38552,G__38553,seq38551__$2);\n}));\n\n(cljs.core._LT_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns non-nil if nums are in monotonically non-decreasing order,\n *   otherwise false.\n */\ncljs.core._LT__EQ_ \x3d (function cljs$core$_LT__EQ_(var_args){\nvar G__38559 \x3d arguments.length;\nswitch (G__38559) {\ncase 1:\nreturn cljs.core._LT__EQ_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._LT__EQ_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41592 \x3d arguments.length;\nvar i__4772__auto___41593 \x3d (0);\nwhile(true){\nif((i__4772__auto___41593 \x3c len__4771__auto___41592)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41593]));\n\nvar G__41594 \x3d (i__4772__auto___41593 + (1));\ni__4772__auto___41593 \x3d G__41594;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._LT__EQ_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._LT__EQ_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core._LT__EQ_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x \x3c\x3d y);\n}));\n\n(cljs.core._LT__EQ_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nwhile(true){\nif((x \x3c\x3d y)){\nif(cljs.core.next(more)){\nvar G__41598 \x3d y;\nvar G__41599 \x3d cljs.core.first(more);\nvar G__41600 \x3d cljs.core.next(more);\nx \x3d G__41598;\ny \x3d G__41599;\nmore \x3d G__41600;\ncontinue;\n} else {\nreturn (y \x3c\x3d cljs.core.first(more));\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core._LT__EQ_.cljs$lang$applyTo \x3d (function (seq38556){\nvar G__38557 \x3d cljs.core.first(seq38556);\nvar seq38556__$1 \x3d cljs.core.next(seq38556);\nvar G__38558 \x3d cljs.core.first(seq38556__$1);\nvar seq38556__$2 \x3d cljs.core.next(seq38556__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38557,G__38558,seq38556__$2);\n}));\n\n(cljs.core._LT__EQ_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns non-nil if nums are in monotonically decreasing order,\n *   otherwise false.\n */\ncljs.core._GT_ \x3d (function cljs$core$_GT_(var_args){\nvar G__38564 \x3d arguments.length;\nswitch (G__38564) {\ncase 1:\nreturn cljs.core._GT_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._GT_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41604 \x3d arguments.length;\nvar i__4772__auto___41605 \x3d (0);\nwhile(true){\nif((i__4772__auto___41605 \x3c len__4771__auto___41604)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41605]));\n\nvar G__41606 \x3d (i__4772__auto___41605 + (1));\ni__4772__auto___41605 \x3d G__41606;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._GT_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._GT_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core._GT_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x \x3e y);\n}));\n\n(cljs.core._GT_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nwhile(true){\nif((x \x3e y)){\nif(cljs.core.next(more)){\nvar G__41613 \x3d y;\nvar G__41614 \x3d cljs.core.first(more);\nvar G__41615 \x3d cljs.core.next(more);\nx \x3d G__41613;\ny \x3d G__41614;\nmore \x3d G__41615;\ncontinue;\n} else {\nreturn (y \x3e cljs.core.first(more));\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core._GT_.cljs$lang$applyTo \x3d (function (seq38561){\nvar G__38562 \x3d cljs.core.first(seq38561);\nvar seq38561__$1 \x3d cljs.core.next(seq38561);\nvar G__38563 \x3d cljs.core.first(seq38561__$1);\nvar seq38561__$2 \x3d cljs.core.next(seq38561__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38562,G__38563,seq38561__$2);\n}));\n\n(cljs.core._GT_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns non-nil if nums are in monotonically non-increasing order,\n *   otherwise false.\n */\ncljs.core._GT__EQ_ \x3d (function cljs$core$_GT__EQ_(var_args){\nvar G__38569 \x3d arguments.length;\nswitch (G__38569) {\ncase 1:\nreturn cljs.core._GT__EQ_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._GT__EQ_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41629 \x3d arguments.length;\nvar i__4772__auto___41630 \x3d (0);\nwhile(true){\nif((i__4772__auto___41630 \x3c len__4771__auto___41629)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41630]));\n\nvar G__41631 \x3d (i__4772__auto___41630 + (1));\ni__4772__auto___41630 \x3d G__41631;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._GT__EQ_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._GT__EQ_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core._GT__EQ_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x \x3e\x3d y);\n}));\n\n(cljs.core._GT__EQ_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nwhile(true){\nif((x \x3e\x3d y)){\nif(cljs.core.next(more)){\nvar G__41637 \x3d y;\nvar G__41638 \x3d cljs.core.first(more);\nvar G__41639 \x3d cljs.core.next(more);\nx \x3d G__41637;\ny \x3d G__41638;\nmore \x3d G__41639;\ncontinue;\n} else {\nreturn (y \x3e\x3d cljs.core.first(more));\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core._GT__EQ_.cljs$lang$applyTo \x3d (function (seq38566){\nvar G__38567 \x3d cljs.core.first(seq38566);\nvar seq38566__$1 \x3d cljs.core.next(seq38566);\nvar G__38568 \x3d cljs.core.first(seq38566__$1);\nvar seq38566__$2 \x3d cljs.core.next(seq38566__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38567,G__38568,seq38566__$2);\n}));\n\n(cljs.core._GT__EQ_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns a number one less than num.\n */\ncljs.core.dec \x3d (function cljs$core$dec(x){\nreturn (x - (1));\n});\n/**\n * Returns the greatest of the nums.\n */\ncljs.core.max \x3d (function cljs$core$max(var_args){\nvar G__38574 \x3d arguments.length;\nswitch (G__38574) {\ncase 1:\nreturn cljs.core.max.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.max.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41654 \x3d arguments.length;\nvar i__4772__auto___41655 \x3d (0);\nwhile(true){\nif((i__4772__auto___41655 \x3c len__4771__auto___41654)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41655]));\n\nvar G__41661 \x3d (i__4772__auto___41655 + (1));\ni__4772__auto___41655 \x3d G__41661;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.max.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.max.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core.max.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nvar x__4249__auto__ \x3d x;\nvar y__4250__auto__ \x3d y;\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n}));\n\n(cljs.core.max.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.max,(function (){var x__4249__auto__ \x3d x;\nvar y__4250__auto__ \x3d y;\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})(),more);\n}));\n\n/** @this {Function} */\n(cljs.core.max.cljs$lang$applyTo \x3d (function (seq38571){\nvar G__38572 \x3d cljs.core.first(seq38571);\nvar seq38571__$1 \x3d cljs.core.next(seq38571);\nvar G__38573 \x3d cljs.core.first(seq38571__$1);\nvar seq38571__$2 \x3d cljs.core.next(seq38571__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38572,G__38573,seq38571__$2);\n}));\n\n(cljs.core.max.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns the least of the nums.\n */\ncljs.core.min \x3d (function cljs$core$min(var_args){\nvar G__38579 \x3d arguments.length;\nswitch (G__38579) {\ncase 1:\nreturn cljs.core.min.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.min.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41673 \x3d arguments.length;\nvar i__4772__auto___41674 \x3d (0);\nwhile(true){\nif((i__4772__auto___41674 \x3c len__4771__auto___41673)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41674]));\n\nvar G__41676 \x3d (i__4772__auto___41674 + (1));\ni__4772__auto___41674 \x3d G__41676;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.min.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.min.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core.min.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nvar x__4252__auto__ \x3d x;\nvar y__4253__auto__ \x3d y;\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n}));\n\n(cljs.core.min.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.min,(function (){var x__4252__auto__ \x3d x;\nvar y__4253__auto__ \x3d y;\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})(),more);\n}));\n\n/** @this {Function} */\n(cljs.core.min.cljs$lang$applyTo \x3d (function (seq38576){\nvar G__38577 \x3d cljs.core.first(seq38576);\nvar seq38576__$1 \x3d cljs.core.next(seq38576);\nvar G__38578 \x3d cljs.core.first(seq38576__$1);\nvar seq38576__$2 \x3d cljs.core.next(seq38576__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38577,G__38578,seq38576__$2);\n}));\n\n(cljs.core.min.cljs$lang$maxFixedArity \x3d (2));\n\ncljs.core.byte$ \x3d (function cljs$core$byte(x){\nreturn x;\n});\n/**\n * Coerce to char\n */\ncljs.core.char$ \x3d (function cljs$core$char(x){\nif(typeof x \x3d\x3d\x3d \x27number\x27){\nreturn String.fromCharCode(x);\n} else {\nif(((typeof x \x3d\x3d\x3d \x27string\x27) \x26\x26 ((x.length \x3d\x3d\x3d (1))))){\nreturn x;\n} else {\nthrow (new Error(\x22Argument to char must be a character or number\x22));\n\n}\n}\n});\ncljs.core.short$ \x3d (function cljs$core$short(x){\nreturn x;\n});\ncljs.core.float$ \x3d (function cljs$core$float(x){\nreturn x;\n});\ncljs.core.double$ \x3d (function cljs$core$double(x){\nreturn x;\n});\ncljs.core.unchecked_byte \x3d (function cljs$core$unchecked_byte(x){\nreturn x;\n});\ncljs.core.unchecked_char \x3d (function cljs$core$unchecked_char(x){\nreturn x;\n});\ncljs.core.unchecked_short \x3d (function cljs$core$unchecked_short(x){\nreturn x;\n});\ncljs.core.unchecked_float \x3d (function cljs$core$unchecked_float(x){\nreturn x;\n});\ncljs.core.unchecked_double \x3d (function cljs$core$unchecked_double(x){\nreturn x;\n});\n/**\n * Returns the sum of nums. (+) returns 0.\n */\ncljs.core.unchecked_add \x3d (function cljs$core$unchecked_add(var_args){\nvar G__38584 \x3d arguments.length;\nswitch (G__38584) {\ncase 0:\nreturn cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41685 \x3d arguments.length;\nvar i__4772__auto___41686 \x3d (0);\nwhile(true){\nif((i__4772__auto___41686 \x3c len__4771__auto___41685)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41686]));\n\nvar G__41687 \x3d (i__4772__auto___41686 + (1));\ni__4772__auto___41686 \x3d G__41687;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (0);\n}));\n\n(cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x + y);\n}));\n\n(cljs.core.unchecked_add.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_add,(x + y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_add.cljs$lang$applyTo \x3d (function (seq38581){\nvar G__38582 \x3d cljs.core.first(seq38581);\nvar seq38581__$1 \x3d cljs.core.next(seq38581);\nvar G__38583 \x3d cljs.core.first(seq38581__$1);\nvar seq38581__$2 \x3d cljs.core.next(seq38581__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38582,G__38583,seq38581__$2);\n}));\n\n(cljs.core.unchecked_add.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns the sum of nums. (+) returns 0.\n */\ncljs.core.unchecked_add_int \x3d (function cljs$core$unchecked_add_int(var_args){\nvar G__38589 \x3d arguments.length;\nswitch (G__38589) {\ncase 0:\nreturn cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41699 \x3d arguments.length;\nvar i__4772__auto___41700 \x3d (0);\nwhile(true){\nif((i__4772__auto___41700 \x3c len__4771__auto___41699)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41700]));\n\nvar G__41701 \x3d (i__4772__auto___41700 + (1));\ni__4772__auto___41700 \x3d G__41701;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (0);\n}));\n\n(cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x + y);\n}));\n\n(cljs.core.unchecked_add_int.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_add_int,(x + y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_add_int.cljs$lang$applyTo \x3d (function (seq38586){\nvar G__38587 \x3d cljs.core.first(seq38586);\nvar seq38586__$1 \x3d cljs.core.next(seq38586);\nvar G__38588 \x3d cljs.core.first(seq38586__$1);\nvar seq38586__$2 \x3d cljs.core.next(seq38586__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38587,G__38588,seq38586__$2);\n}));\n\n(cljs.core.unchecked_add_int.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns a number one less than x, an int.\n */\ncljs.core.unchecked_dec \x3d (function cljs$core$unchecked_dec(x){\nreturn (x - (1));\n});\n/**\n * Returns a number one less than x, an int.\n */\ncljs.core.unchecked_dec_int \x3d (function cljs$core$unchecked_dec_int(x){\nreturn (x - (1));\n});\n/**\n * If no denominators are supplied, returns 1/numerator,\n *   else returns numerator divided by all of the denominators.\n */\ncljs.core.unchecked_divide_int \x3d (function cljs$core$unchecked_divide_int(var_args){\nvar G__38594 \x3d arguments.length;\nswitch (G__38594) {\ncase 1:\nreturn cljs.core.unchecked_divide_int.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_divide_int.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41711 \x3d arguments.length;\nvar i__4772__auto___41712 \x3d (0);\nwhile(true){\nif((i__4772__auto___41712 \x3c len__4771__auto___41711)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41712]));\n\nvar G__41714 \x3d (i__4772__auto___41712 + (1));\ni__4772__auto___41712 \x3d G__41714;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_divide_int.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_divide_int.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn ((1) / x);\n}));\n\n(cljs.core.unchecked_divide_int.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x / y);\n}));\n\n(cljs.core.unchecked_divide_int.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_divide_int,(x / y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_divide_int.cljs$lang$applyTo \x3d (function (seq38591){\nvar G__38592 \x3d cljs.core.first(seq38591);\nvar seq38591__$1 \x3d cljs.core.next(seq38591);\nvar G__38593 \x3d cljs.core.first(seq38591__$1);\nvar seq38591__$2 \x3d cljs.core.next(seq38591__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38592,G__38593,seq38591__$2);\n}));\n\n(cljs.core.unchecked_divide_int.cljs$lang$maxFixedArity \x3d (2));\n\ncljs.core.unchecked_inc \x3d (function cljs$core$unchecked_inc(x){\nreturn (x + (1));\n});\ncljs.core.unchecked_inc_int \x3d (function cljs$core$unchecked_inc_int(x){\nreturn (x + (1));\n});\n/**\n * Returns the product of nums. (*) returns 1.\n */\ncljs.core.unchecked_multiply \x3d (function cljs$core$unchecked_multiply(var_args){\nvar G__38599 \x3d arguments.length;\nswitch (G__38599) {\ncase 0:\nreturn cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41720 \x3d arguments.length;\nvar i__4772__auto___41722 \x3d (0);\nwhile(true){\nif((i__4772__auto___41722 \x3c len__4771__auto___41720)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41722]));\n\nvar G__41724 \x3d (i__4772__auto___41722 + (1));\ni__4772__auto___41722 \x3d G__41724;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (1);\n}));\n\n(cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x * y);\n}));\n\n(cljs.core.unchecked_multiply.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_multiply,(x * y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_multiply.cljs$lang$applyTo \x3d (function (seq38596){\nvar G__38597 \x3d cljs.core.first(seq38596);\nvar seq38596__$1 \x3d cljs.core.next(seq38596);\nvar G__38598 \x3d cljs.core.first(seq38596__$1);\nvar seq38596__$2 \x3d cljs.core.next(seq38596__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38597,G__38598,seq38596__$2);\n}));\n\n(cljs.core.unchecked_multiply.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns the product of nums. (*) returns 1.\n */\ncljs.core.unchecked_multiply_int \x3d (function cljs$core$unchecked_multiply_int(var_args){\nvar G__38604 \x3d arguments.length;\nswitch (G__38604) {\ncase 0:\nreturn cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41737 \x3d arguments.length;\nvar i__4772__auto___41738 \x3d (0);\nwhile(true){\nif((i__4772__auto___41738 \x3c len__4771__auto___41737)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41738]));\n\nvar G__41742 \x3d (i__4772__auto___41738 + (1));\ni__4772__auto___41738 \x3d G__41742;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (1);\n}));\n\n(cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn x;\n}));\n\n(cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x * y);\n}));\n\n(cljs.core.unchecked_multiply_int.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_multiply_int,(x * y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_multiply_int.cljs$lang$applyTo \x3d (function (seq38601){\nvar G__38602 \x3d cljs.core.first(seq38601);\nvar seq38601__$1 \x3d cljs.core.next(seq38601);\nvar G__38603 \x3d cljs.core.first(seq38601__$1);\nvar seq38601__$2 \x3d cljs.core.next(seq38601__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38602,G__38603,seq38601__$2);\n}));\n\n(cljs.core.unchecked_multiply_int.cljs$lang$maxFixedArity \x3d (2));\n\ncljs.core.unchecked_negate \x3d (function cljs$core$unchecked_negate(x){\nreturn (- x);\n});\ncljs.core.unchecked_negate_int \x3d (function cljs$core$unchecked_negate_int(x){\nreturn (- x);\n});\ncljs.core.unchecked_remainder_int \x3d (function cljs$core$unchecked_remainder_int(x,n){\nreturn (cljs.core.mod.cljs$core$IFn$_invoke$arity$2 ? cljs.core.mod.cljs$core$IFn$_invoke$arity$2(x,n) : cljs.core.mod.call(null,x,n));\n});\n/**\n * If no ys are supplied, returns the negation of x, else subtracts\n *   the ys from x and returns the result.\n */\ncljs.core.unchecked_subtract \x3d (function cljs$core$unchecked_subtract(var_args){\nvar G__38609 \x3d arguments.length;\nswitch (G__38609) {\ncase 1:\nreturn cljs.core.unchecked_subtract.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_subtract.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41760 \x3d arguments.length;\nvar i__4772__auto___41767 \x3d (0);\nwhile(true){\nif((i__4772__auto___41767 \x3c len__4771__auto___41760)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41767]));\n\nvar G__41770 \x3d (i__4772__auto___41767 + (1));\ni__4772__auto___41767 \x3d G__41770;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_subtract.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_subtract.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn (- x);\n}));\n\n(cljs.core.unchecked_subtract.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x - y);\n}));\n\n(cljs.core.unchecked_subtract.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_subtract,(x - y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_subtract.cljs$lang$applyTo \x3d (function (seq38606){\nvar G__38607 \x3d cljs.core.first(seq38606);\nvar seq38606__$1 \x3d cljs.core.next(seq38606);\nvar G__38608 \x3d cljs.core.first(seq38606__$1);\nvar seq38606__$2 \x3d cljs.core.next(seq38606__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38607,G__38608,seq38606__$2);\n}));\n\n(cljs.core.unchecked_subtract.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * If no ys are supplied, returns the negation of x, else subtracts\n *   the ys from x and returns the result.\n */\ncljs.core.unchecked_subtract_int \x3d (function cljs$core$unchecked_subtract_int(var_args){\nvar G__38614 \x3d arguments.length;\nswitch (G__38614) {\ncase 1:\nreturn cljs.core.unchecked_subtract_int.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.unchecked_subtract_int.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41779 \x3d arguments.length;\nvar i__4772__auto___41780 \x3d (0);\nwhile(true){\nif((i__4772__auto___41780 \x3c len__4771__auto___41779)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41780]));\n\nvar G__41782 \x3d (i__4772__auto___41780 + (1));\ni__4772__auto___41780 \x3d G__41782;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.unchecked_subtract_int.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.unchecked_subtract_int.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn (- x);\n}));\n\n(cljs.core.unchecked_subtract_int.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x - y);\n}));\n\n(cljs.core.unchecked_subtract_int.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.unchecked_subtract_int,(x - y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.unchecked_subtract_int.cljs$lang$applyTo \x3d (function (seq38611){\nvar G__38612 \x3d cljs.core.first(seq38611);\nvar seq38611__$1 \x3d cljs.core.next(seq38611);\nvar G__38613 \x3d cljs.core.first(seq38611__$1);\nvar seq38611__$2 \x3d cljs.core.next(seq38611__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38612,G__38613,seq38611__$2);\n}));\n\n(cljs.core.unchecked_subtract_int.cljs$lang$maxFixedArity \x3d (2));\n\ncljs.core.fix \x3d (function cljs$core$fix(q){\nif((q \x3e\x3d (0))){\nreturn Math.floor(q);\n} else {\nreturn Math.ceil(q);\n}\n});\n/**\n * Coerce to int by stripping decimal places.\n */\ncljs.core.int$ \x3d (function cljs$core$int(x){\nreturn (x | (0));\n});\n/**\n * Coerce to int by stripping decimal places.\n */\ncljs.core.unchecked_int \x3d (function cljs$core$unchecked_int(x){\nreturn cljs.core.fix(x);\n});\n/**\n * Coerce to long by stripping decimal places. Identical to `int\x27.\n */\ncljs.core.long$ \x3d (function cljs$core$long(x){\nreturn cljs.core.fix(x);\n});\n/**\n * Coerce to long by stripping decimal places. Identical to `int\x27.\n */\ncljs.core.unchecked_long \x3d (function cljs$core$unchecked_long(x){\nreturn cljs.core.fix(x);\n});\ncljs.core.booleans \x3d (function cljs$core$booleans(x){\nreturn x;\n});\ncljs.core.bytes \x3d (function cljs$core$bytes(x){\nreturn x;\n});\ncljs.core.chars \x3d (function cljs$core$chars(x){\nreturn x;\n});\ncljs.core.shorts \x3d (function cljs$core$shorts(x){\nreturn x;\n});\ncljs.core.ints \x3d (function cljs$core$ints(x){\nreturn x;\n});\ncljs.core.floats \x3d (function cljs$core$floats(x){\nreturn x;\n});\ncljs.core.doubles \x3d (function cljs$core$doubles(x){\nreturn x;\n});\ncljs.core.longs \x3d (function cljs$core$longs(x){\nreturn x;\n});\n/**\n * Modulus of num and div with original javascript behavior. i.e. bug for negative numbers\n */\ncljs.core.js_mod \x3d (function cljs$core$js_mod(n,d){\nreturn (n % d);\n});\n/**\n * Modulus of num and div. Truncates toward negative infinity.\n */\ncljs.core.mod \x3d (function cljs$core$mod(n,d){\nreturn (((n % d) + d) % d);\n});\n/**\n * quot[ient] of dividing numerator by denominator.\n */\ncljs.core.quot \x3d (function cljs$core$quot(n,d){\nvar rem \x3d (n % d);\nreturn cljs.core.fix(((n - rem) / d));\n});\n/**\n * remainder of dividing numerator by denominator.\n */\ncljs.core.rem \x3d (function cljs$core$rem(n,d){\nvar q \x3d cljs.core.quot(n,d);\nreturn (n - (d * q));\n});\n/**\n * Bitwise exclusive or\n */\ncljs.core.bit_xor \x3d (function cljs$core$bit_xor(var_args){\nvar G__38619 \x3d arguments.length;\nswitch (G__38619) {\ncase 2:\nreturn cljs.core.bit_xor.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41814 \x3d arguments.length;\nvar i__4772__auto___41816 \x3d (0);\nwhile(true){\nif((i__4772__auto___41816 \x3c len__4771__auto___41814)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41816]));\n\nvar G__41817 \x3d (i__4772__auto___41816 + (1));\ni__4772__auto___41816 \x3d G__41817;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.bit_xor.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.bit_xor.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x ^ y);\n}));\n\n(cljs.core.bit_xor.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.bit_xor,(x ^ y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.bit_xor.cljs$lang$applyTo \x3d (function (seq38616){\nvar G__38617 \x3d cljs.core.first(seq38616);\nvar seq38616__$1 \x3d cljs.core.next(seq38616);\nvar G__38618 \x3d cljs.core.first(seq38616__$1);\nvar seq38616__$2 \x3d cljs.core.next(seq38616__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38617,G__38618,seq38616__$2);\n}));\n\n(cljs.core.bit_xor.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Bitwise and\n */\ncljs.core.bit_and \x3d (function cljs$core$bit_and(var_args){\nvar G__38624 \x3d arguments.length;\nswitch (G__38624) {\ncase 2:\nreturn cljs.core.bit_and.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41822 \x3d arguments.length;\nvar i__4772__auto___41825 \x3d (0);\nwhile(true){\nif((i__4772__auto___41825 \x3c len__4771__auto___41822)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41825]));\n\nvar G__41829 \x3d (i__4772__auto___41825 + (1));\ni__4772__auto___41825 \x3d G__41829;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.bit_and.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.bit_and.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x \x26 y);\n}));\n\n(cljs.core.bit_and.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.bit_and,(x \x26 y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.bit_and.cljs$lang$applyTo \x3d (function (seq38621){\nvar G__38622 \x3d cljs.core.first(seq38621);\nvar seq38621__$1 \x3d cljs.core.next(seq38621);\nvar G__38623 \x3d cljs.core.first(seq38621__$1);\nvar seq38621__$2 \x3d cljs.core.next(seq38621__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38622,G__38623,seq38621__$2);\n}));\n\n(cljs.core.bit_and.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Bitwise or\n */\ncljs.core.bit_or \x3d (function cljs$core$bit_or(var_args){\nvar G__38629 \x3d arguments.length;\nswitch (G__38629) {\ncase 2:\nreturn cljs.core.bit_or.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41887 \x3d arguments.length;\nvar i__4772__auto___41888 \x3d (0);\nwhile(true){\nif((i__4772__auto___41888 \x3c len__4771__auto___41887)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41888]));\n\nvar G__41892 \x3d (i__4772__auto___41888 + (1));\ni__4772__auto___41888 \x3d G__41892;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.bit_or.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.bit_or.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x | y);\n}));\n\n(cljs.core.bit_or.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.bit_or,(x | y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.bit_or.cljs$lang$applyTo \x3d (function (seq38626){\nvar G__38627 \x3d cljs.core.first(seq38626);\nvar seq38626__$1 \x3d cljs.core.next(seq38626);\nvar G__38628 \x3d cljs.core.first(seq38626__$1);\nvar seq38626__$2 \x3d cljs.core.next(seq38626__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38627,G__38628,seq38626__$2);\n}));\n\n(cljs.core.bit_or.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Bitwise and with complement\n */\ncljs.core.bit_and_not \x3d (function cljs$core$bit_and_not(var_args){\nvar G__38634 \x3d arguments.length;\nswitch (G__38634) {\ncase 2:\nreturn cljs.core.bit_and_not.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41917 \x3d arguments.length;\nvar i__4772__auto___41918 \x3d (0);\nwhile(true){\nif((i__4772__auto___41918 \x3c len__4771__auto___41917)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41918]));\n\nvar G__41920 \x3d (i__4772__auto___41918 + (1));\ni__4772__auto___41918 \x3d G__41920;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.bit_and_not.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.bit_and_not.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (x \x26 ~y);\n}));\n\n(cljs.core.bit_and_not.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.bit_and_not,(x \x26 ~y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.bit_and_not.cljs$lang$applyTo \x3d (function (seq38631){\nvar G__38632 \x3d cljs.core.first(seq38631);\nvar seq38631__$1 \x3d cljs.core.next(seq38631);\nvar G__38633 \x3d cljs.core.first(seq38631__$1);\nvar seq38631__$2 \x3d cljs.core.next(seq38631__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38632,G__38633,seq38631__$2);\n}));\n\n(cljs.core.bit_and_not.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Clear bit at index n\n */\ncljs.core.bit_clear \x3d (function cljs$core$bit_clear(x,n){\nreturn (x \x26 ~(1 \x3c\x3c n));\n});\n/**\n * Flip bit at index n\n */\ncljs.core.bit_flip \x3d (function cljs$core$bit_flip(x,n){\nreturn (x ^ (1 \x3c\x3c n));\n});\n/**\n * Bitwise complement\n */\ncljs.core.bit_not \x3d (function cljs$core$bit_not(x){\nreturn (~ x);\n});\n/**\n * Set bit at index n\n */\ncljs.core.bit_set \x3d (function cljs$core$bit_set(x,n){\nreturn (x | (1 \x3c\x3c n));\n});\n/**\n * Test bit at index n\n */\ncljs.core.bit_test \x3d (function cljs$core$bit_test(x,n){\nreturn ((x \x26 (1 \x3c\x3c n)) !\x3d 0);\n});\n/**\n * Bitwise shift left\n */\ncljs.core.bit_shift_left \x3d (function cljs$core$bit_shift_left(x,n){\nreturn (x \x3c\x3c n);\n});\n/**\n * Bitwise shift right\n */\ncljs.core.bit_shift_right \x3d (function cljs$core$bit_shift_right(x,n){\nreturn (x \x3e\x3e n);\n});\n/**\n * DEPRECATED: Bitwise shift right with zero fill\n */\ncljs.core.bit_shift_right_zero_fill \x3d (function cljs$core$bit_shift_right_zero_fill(x,n){\nreturn (x \x3e\x3e\x3e n);\n});\n/**\n * Bitwise shift right with zero fill\n */\ncljs.core.unsigned_bit_shift_right \x3d (function cljs$core$unsigned_bit_shift_right(x,n){\nreturn (x \x3e\x3e\x3e n);\n});\n/**\n * Counts the number of bits set in n\n */\ncljs.core.bit_count \x3d (function cljs$core$bit_count(v){\nvar v__$1 \x3d (v - ((v \x3e\x3e (1)) \x26 (1431655765)));\nvar v__$2 \x3d ((v__$1 \x26 (858993459)) + ((v__$1 \x3e\x3e (2)) \x26 (858993459)));\nreturn ((((v__$2 + (v__$2 \x3e\x3e (4))) \x26 (252645135)) * (16843009)) \x3e\x3e (24));\n});\n/**\n * Returns non-nil if nums all have the equivalent\n *   value, otherwise false. Behavior on non nums is\n *   undefined.\n */\ncljs.core._EQ__EQ_ \x3d (function cljs$core$_EQ__EQ_(var_args){\nvar G__38639 \x3d arguments.length;\nswitch (G__38639) {\ncase 1:\nreturn cljs.core._EQ__EQ_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core._EQ__EQ_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___41961 \x3d arguments.length;\nvar i__4772__auto___41963 \x3d (0);\nwhile(true){\nif((i__4772__auto___41963 \x3c len__4771__auto___41961)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___41963]));\n\nvar G__41964 \x3d (i__4772__auto___41963 + (1));\ni__4772__auto___41963 \x3d G__41964;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core._EQ__EQ_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core._EQ__EQ_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn true;\n}));\n\n(cljs.core._EQ__EQ_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn cljs.core._equiv(x,y);\n}));\n\n(cljs.core._EQ__EQ_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nwhile(true){\nif((x \x3d\x3d\x3d y)){\nif(cljs.core.next(more)){\nvar G__41968 \x3d y;\nvar G__41969 \x3d cljs.core.first(more);\nvar G__41970 \x3d cljs.core.next(more);\nx \x3d G__41968;\ny \x3d G__41969;\nmore \x3d G__41970;\ncontinue;\n} else {\nreturn (y \x3d\x3d\x3d cljs.core.first(more));\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core._EQ__EQ_.cljs$lang$applyTo \x3d (function (seq38636){\nvar G__38637 \x3d cljs.core.first(seq38636);\nvar seq38636__$1 \x3d cljs.core.next(seq38636);\nvar G__38638 \x3d cljs.core.first(seq38636__$1);\nvar seq38636__$2 \x3d cljs.core.next(seq38636__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38637,G__38638,seq38636__$2);\n}));\n\n(cljs.core._EQ__EQ_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns true if num is greater than zero, else false\n */\ncljs.core.pos_QMARK_ \x3d (function cljs$core$pos_QMARK_(x){\nreturn (x \x3e (0));\n});\n/**\n * Returns true if num is zero, else false\n */\ncljs.core.zero_QMARK_ \x3d (function cljs$core$zero_QMARK_(x){\nreturn (x \x3d\x3d\x3d (0));\n});\n/**\n * Returns true if num is less than zero, else false\n */\ncljs.core.neg_QMARK_ \x3d (function cljs$core$neg_QMARK_(x){\nreturn (x \x3c (0));\n});\n/**\n * Returns the nth next of coll, (seq coll) when n is 0.\n */\ncljs.core.nthnext \x3d (function cljs$core$nthnext(coll,n){\nvar n__$1 \x3d n;\nvar xs \x3d cljs.core.seq(coll);\nwhile(true){\nif(((xs) \x26\x26 ((n__$1 \x3e (0))))){\nvar G__41995 \x3d (n__$1 - (1));\nvar G__41996 \x3d cljs.core.next(xs);\nn__$1 \x3d G__41995;\nxs \x3d G__41996;\ncontinue;\n} else {\nreturn xs;\n}\nbreak;\n}\n});\n/**\n * With no args, returns the empty string. With one arg x, returns\n *   x.toString().  (str nil) returns the empty string. With more than\n *   one arg, returns the concatenation of the str values of the args.\n */\ncljs.core.str \x3d (function cljs$core$str(var_args){\nvar G__38643 \x3d arguments.length;\nswitch (G__38643) {\ncase 0:\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42003 \x3d arguments.length;\nvar i__4772__auto___42004 \x3d (0);\nwhile(true){\nif((i__4772__auto___42004 \x3c len__4771__auto___42003)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42004]));\n\nvar G__42007 \x3d (i__4772__auto___42004 + (1));\ni__4772__auto___42004 \x3d G__42007;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((1)),(0),null));\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.str.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn \x22\x22;\n}));\n\n(cljs.core.str.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nif((x \x3d\x3d null)){\nreturn \x22\x22;\n} else {\nreturn [x].join(\x22\x22);\n}\n}));\n\n(cljs.core.str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,ys){\nvar sb \x3d (new goog.string.StringBuffer(cljs.core.str.cljs$core$IFn$_invoke$arity$1(x)));\nvar more \x3d ys;\nwhile(true){\nif(cljs.core.truth_(more)){\nvar G__42035 \x3d sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(more)));\nvar G__42036 \x3d cljs.core.next(more);\nsb \x3d G__42035;\nmore \x3d G__42036;\ncontinue;\n} else {\nreturn sb.toString();\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.str.cljs$lang$applyTo \x3d (function (seq38641){\nvar G__38642 \x3d cljs.core.first(seq38641);\nvar seq38641__$1 \x3d cljs.core.next(seq38641);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38642,seq38641__$1);\n}));\n\n(cljs.core.str.cljs$lang$maxFixedArity \x3d (1));\n\n/**\n * Returns the substring of s beginning at start inclusive, and ending\n *   at end (defaults to length of string), exclusive.\n */\ncljs.core.subs \x3d (function cljs$core$subs(var_args){\nvar G__38645 \x3d arguments.length;\nswitch (G__38645) {\ncase 2:\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.subs.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,start){\nreturn s.substring(start);\n}));\n\n(cljs.core.subs.cljs$core$IFn$_invoke$arity$3 \x3d (function (s,start,end){\nreturn s.substring(start,end);\n}));\n\n(cljs.core.subs.cljs$lang$maxFixedArity \x3d 3);\n\n\n/**\n * Assumes x is sequential. Returns true if x equals y, otherwise\n *   returns false.\n */\ncljs.core.equiv_sequential \x3d (function cljs$core$equiv_sequential(x,y){\nreturn cljs.core.boolean$(((cljs.core.sequential_QMARK_(y))?((((cljs.core.counted_QMARK_(x)) \x26\x26 (cljs.core.counted_QMARK_(y)) \x26\x26 ((!((cljs.core.count(x) \x3d\x3d\x3d cljs.core.count(y)))))))?false:(function (){var xs \x3d cljs.core.seq(x);\nvar ys \x3d cljs.core.seq(y);\nwhile(true){\nif((xs \x3d\x3d null)){\nreturn (ys \x3d\x3d null);\n} else {\nif((ys \x3d\x3d null)){\nreturn false;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(xs),cljs.core.first(ys))){\nvar G__42069 \x3d cljs.core.next(xs);\nvar G__42070 \x3d cljs.core.next(ys);\nxs \x3d G__42069;\nys \x3d G__42070;\ncontinue;\n} else {\nreturn false;\n\n}\n}\n}\nbreak;\n}\n})()):null));\n});\ncljs.core.hash_coll \x3d (function cljs$core$hash_coll(coll){\nif(cljs.core.seq(coll)){\nvar res \x3d cljs.core.hash(cljs.core.first(coll));\nvar s \x3d cljs.core.next(coll);\nwhile(true){\nif((s \x3d\x3d null)){\nreturn res;\n} else {\nvar G__42072 \x3d cljs.core.hash_combine(res,cljs.core.hash(cljs.core.first(s)));\nvar G__42073 \x3d cljs.core.next(s);\nres \x3d G__42072;\ns \x3d G__42073;\ncontinue;\n}\nbreak;\n}\n} else {\nreturn (0);\n}\n});\n\ncljs.core.hash_imap \x3d (function cljs$core$hash_imap(m){\nvar h \x3d (0);\nvar s \x3d cljs.core.seq(m);\nwhile(true){\nif(s){\nvar e \x3d cljs.core.first(s);\nvar G__42074 \x3d ((h + (cljs.core.hash((cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(e) : cljs.core.key.call(null,e))) ^ cljs.core.hash((cljs.core.val.cljs$core$IFn$_invoke$arity$1 ? cljs.core.val.cljs$core$IFn$_invoke$arity$1(e) : cljs.core.val.call(null,e))))) % (4503599627370496));\nvar G__42075 \x3d cljs.core.next(s);\nh \x3d G__42074;\ns \x3d G__42075;\ncontinue;\n} else {\nreturn h;\n}\nbreak;\n}\n});\ncljs.core.hash_iset \x3d (function cljs$core$hash_iset(s){\nvar h \x3d (0);\nvar s__$1 \x3d cljs.core.seq(s);\nwhile(true){\nif(s__$1){\nvar e \x3d cljs.core.first(s__$1);\nvar G__42077 \x3d ((h + cljs.core.hash(e)) % (4503599627370496));\nvar G__42078 \x3d cljs.core.next(s__$1);\nh \x3d G__42077;\ns__$1 \x3d G__42078;\ncontinue;\n} else {\nreturn h;\n}\nbreak;\n}\n});\n\n\n/**\n * Takes a JavaScript object and a map of names to functions and\n *   attaches said functions as methods on the object.  Any references to\n *   JavaScript\x27s implicit this (via the this-as macro) will resolve to the\n *   object that the function is attached.\n */\ncljs.core.extend_object_BANG_ \x3d (function cljs$core$extend_object_BANG_(obj,fn_map){\nvar seq__38646_42079 \x3d cljs.core.seq(fn_map);\nvar chunk__38647_42080 \x3d null;\nvar count__38648_42081 \x3d (0);\nvar i__38649_42082 \x3d (0);\nwhile(true){\nif((i__38649_42082 \x3c count__38648_42081)){\nvar vec__38656_42083 \x3d chunk__38647_42080.cljs$core$IIndexed$_nth$arity$2(null,i__38649_42082);\nvar key_name_42084 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38656_42083,(0),null);\nvar f_42085 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38656_42083,(1),null);\nvar str_name_42086 \x3d (cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(key_name_42084) : cljs.core.name.call(null,key_name_42084));\ngoog.object.set(obj,str_name_42086,f_42085);\n\n\nvar G__42087 \x3d seq__38646_42079;\nvar G__42088 \x3d chunk__38647_42080;\nvar G__42089 \x3d count__38648_42081;\nvar G__42090 \x3d (i__38649_42082 + (1));\nseq__38646_42079 \x3d G__42087;\nchunk__38647_42080 \x3d G__42088;\ncount__38648_42081 \x3d G__42089;\ni__38649_42082 \x3d G__42090;\ncontinue;\n} else {\nvar temp__5753__auto___42092 \x3d cljs.core.seq(seq__38646_42079);\nif(temp__5753__auto___42092){\nvar seq__38646_42093__$1 \x3d temp__5753__auto___42092;\nif(cljs.core.chunked_seq_QMARK_(seq__38646_42093__$1)){\nvar c__4591__auto___42094 \x3d (cljs.core.chunk_first.cljs$core$IFn$_invoke$arity$1 ? cljs.core.chunk_first.cljs$core$IFn$_invoke$arity$1(seq__38646_42093__$1) : cljs.core.chunk_first.call(null,seq__38646_42093__$1));\nvar G__42096 \x3d (cljs.core.chunk_rest.cljs$core$IFn$_invoke$arity$1 ? cljs.core.chunk_rest.cljs$core$IFn$_invoke$arity$1(seq__38646_42093__$1) : cljs.core.chunk_rest.call(null,seq__38646_42093__$1));\nvar G__42097 \x3d c__4591__auto___42094;\nvar G__42098 \x3d cljs.core.count(c__4591__auto___42094);\nvar G__42099 \x3d (0);\nseq__38646_42079 \x3d G__42096;\nchunk__38647_42080 \x3d G__42097;\ncount__38648_42081 \x3d G__42098;\ni__38649_42082 \x3d G__42099;\ncontinue;\n} else {\nvar vec__38659_42100 \x3d cljs.core.first(seq__38646_42093__$1);\nvar key_name_42101 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38659_42100,(0),null);\nvar f_42102 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38659_42100,(1),null);\nvar str_name_42103 \x3d (cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(key_name_42101) : cljs.core.name.call(null,key_name_42101));\ngoog.object.set(obj,str_name_42103,f_42102);\n\n\nvar G__42105 \x3d cljs.core.next(seq__38646_42093__$1);\nvar G__42106 \x3d null;\nvar G__42107 \x3d (0);\nvar G__42108 \x3d (0);\nseq__38646_42079 \x3d G__42105;\nchunk__38647_42080 \x3d G__42106;\ncount__38648_42081 \x3d G__42107;\ni__38649_42082 \x3d G__42108;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn obj;\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IList}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ASeq}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.List \x3d (function (meta,first,rest,count,__hash){\nthis.meta \x3d meta;\nthis.first \x3d first;\nthis.rest \x3d rest;\nthis.count \x3d count;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 65937646;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 8192;\n});\n(cljs.core.List.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.List.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.List.prototype.indexOf \x3d (function() {\nvar G__42116 \x3d null;\nvar G__42116__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__42116__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42116 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42116__1.call(this,x);\ncase 2:\nreturn G__42116__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42116.cljs$core$IFn$_invoke$arity$1 \x3d G__42116__1;\nG__42116.cljs$core$IFn$_invoke$arity$2 \x3d G__42116__2;\nreturn G__42116;\n})()\n);\n\n(cljs.core.List.prototype.lastIndexOf \x3d (function() {\nvar G__42119 \x3d null;\nvar G__42119__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,self__.count);\n});\nvar G__42119__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42119 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42119__1.call(this,x);\ncase 2:\nreturn G__42119__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42119.cljs$core$IFn$_invoke$arity$1 \x3d G__42119__1;\nG__42119.cljs$core$IFn$_invoke$arity$2 \x3d G__42119__2;\nreturn G__42119;\n})()\n);\n\n(cljs.core.List.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.List.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.List(self__.meta,self__.first,self__.rest,self__.count,self__.__hash));\n}));\n\n(cljs.core.List.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.count \x3d\x3d\x3d (1))){\nreturn null;\n} else {\nreturn self__.rest;\n}\n}));\n\n(cljs.core.List.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.count;\n}));\n\n(cljs.core.List.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.first;\n}));\n\n(cljs.core.List.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ISeq$_rest$arity$1(null);\n}));\n\n(cljs.core.List.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.List.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.List.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.List.EMPTY,self__.meta);\n}));\n\n(cljs.core.List.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.List.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.List.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.first;\n}));\n\n(cljs.core.List.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.count \x3d\x3d\x3d (1))){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn self__.rest;\n}\n}));\n\n(cljs.core.List.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.List.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.List(new_meta,self__.first,self__.rest,self__.count,self__.__hash));\n}\n}));\n\n(cljs.core.List.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.List(self__.meta,o,coll__$1,(self__.count + (1)),null));\n}));\n\n(cljs.core.List.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22first\x22,\x22first\x22,996428481,null),new cljs.core.Symbol(null,\x22rest\x22,\x22rest\x22,398835108,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.List.cljs$lang$type \x3d true);\n\n(cljs.core.List.cljs$lang$ctorStr \x3d \x22cljs.core/List\x22);\n\n(cljs.core.List.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/List\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/List.\n */\ncljs.core.__GT_List \x3d (function cljs$core$__GT_List(meta,first,rest,count,__hash){\nreturn (new cljs.core.List(meta,first,rest,count,__hash));\n});\n\n/**\n * Returns true if x implements IList\n */\ncljs.core.list_QMARK_ \x3d (function cljs$core$list_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (33554432))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IList$)))){\nreturn true;\n} else {\nif((!x.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IList,x);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IList,x);\n}\n});\ngoog.object.set(cljs.core.List.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IList}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.EmptyList \x3d (function (meta){\nthis.meta \x3d meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 65937614;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 8192;\n});\n(cljs.core.EmptyList.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.EmptyList.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.EmptyList.prototype.indexOf \x3d (function() {\nvar G__42158 \x3d null;\nvar G__42158__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__42158__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42158 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42158__1.call(this,x);\ncase 2:\nreturn G__42158__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42158.cljs$core$IFn$_invoke$arity$1 \x3d G__42158__1;\nG__42158.cljs$core$IFn$_invoke$arity$2 \x3d G__42158__2;\nreturn G__42158;\n})()\n);\n\n(cljs.core.EmptyList.prototype.lastIndexOf \x3d (function() {\nvar G__42165 \x3d null;\nvar G__42165__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__42165__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42165 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42165__1.call(this,x);\ncase 2:\nreturn G__42165__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42165.cljs$core$IFn$_invoke$arity$1 \x3d G__42165__1;\nG__42165.cljs$core$IFn$_invoke$arity$2 \x3d G__42165__2;\nreturn G__42165;\n})()\n);\n\n(cljs.core.EmptyList.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.EmptyList(self__.meta));\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (0);\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nthrow (new Error(\x22Can\x27t pop empty list\x22));\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.empty_ordered_hash;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((cljs.core.list_QMARK_(other)) || (cljs.core.sequential_QMARK_(other)))){\nreturn (cljs.core.seq(other) \x3d\x3d null);\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.EmptyList(new_meta));\n}\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.List(self__.meta,o,null,(1),null));\n}));\n\n(cljs.core.EmptyList.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null)], null);\n}));\n\n(cljs.core.EmptyList.cljs$lang$type \x3d true);\n\n(cljs.core.EmptyList.cljs$lang$ctorStr \x3d \x22cljs.core/EmptyList\x22);\n\n(cljs.core.EmptyList.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/EmptyList\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/EmptyList.\n */\ncljs.core.__GT_EmptyList \x3d (function cljs$core$__GT_EmptyList(meta){\nreturn (new cljs.core.EmptyList(meta));\n});\n\n(cljs.core.List.EMPTY \x3d (new cljs.core.EmptyList(null)));\ngoog.object.set(cljs.core.EmptyList.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Returns true if coll satisfies? IReversible.\n */\ncljs.core.reversible_QMARK_ \x3d (function cljs$core$reversible_QMARK_(coll){\nif((!((coll \x3d\x3d null)))){\nif((((coll.cljs$lang$protocol_mask$partition0$ \x26 (134217728))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IReversible$)))){\nreturn true;\n} else {\nif((!coll.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IReversible,coll);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IReversible,coll);\n}\n});\n/**\n * Returns, in constant time, a seq of the items in rev (which\n *   can be a vector or sorted-map), in reverse order. If rev is empty returns nil\n */\ncljs.core.rseq \x3d (function cljs$core$rseq(rev){\nreturn cljs.core._rseq(rev);\n});\n/**\n * Returns a seq of the items in coll in reverse order. Not lazy.\n */\ncljs.core.reverse \x3d (function cljs$core$reverse(coll){\nif(cljs.core.reversible_QMARK_(coll)){\nvar or__4160__auto__ \x3d cljs.core.rseq(coll);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,cljs.core.List.EMPTY,coll);\n}\n});\n/**\n * Creates a new list containing the items.\n */\ncljs.core.list \x3d (function cljs$core$list(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___42271 \x3d arguments.length;\nvar i__4772__auto___42272 \x3d (0);\nwhile(true){\nif((i__4772__auto___42272 \x3c len__4771__auto___42271)){\nargs__4777__auto__.push((arguments[i__4772__auto___42272]));\n\nvar G__42274 \x3d (i__4772__auto___42272 + (1));\ni__4772__auto___42272 \x3d G__42274;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.list.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.list.cljs$core$IFn$_invoke$arity$variadic \x3d (function (xs){\nvar arr \x3d (((((xs instanceof cljs.core.IndexedSeq)) \x26\x26 ((xs.i \x3d\x3d\x3d (0)))))?xs.arr:(function (){var arr \x3d [];\nvar xs__$1 \x3d xs;\nwhile(true){\nif((!((xs__$1 \x3d\x3d null)))){\narr.push(cljs.core._first(xs__$1));\n\nvar G__42303 \x3d cljs.core._next(xs__$1);\nxs__$1 \x3d G__42303;\ncontinue;\n} else {\nreturn arr;\n}\nbreak;\n}\n})());\nvar i \x3d arr.length;\nvar r \x3d cljs.core.List.EMPTY;\nwhile(true){\nif((i \x3e (0))){\nvar G__42304 \x3d (i - (1));\nvar G__42305 \x3d cljs.core._conj(r,(arr[(i - (1))]));\ni \x3d G__42304;\nr \x3d G__42305;\ncontinue;\n} else {\nreturn r;\n}\nbreak;\n}\n}));\n\n(cljs.core.list.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.list.cljs$lang$applyTo \x3d (function (seq38664){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq38664));\n}));\n\n\n/**\n* @constructor\n * @implements {cljs.core.IList}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ASeq}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Cons \x3d (function (meta,first,rest,__hash){\nthis.meta \x3d meta;\nthis.first \x3d first;\nthis.rest \x3d rest;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 65929452;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 8192;\n});\n(cljs.core.Cons.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.Cons.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Cons.prototype.indexOf \x3d (function() {\nvar G__42308 \x3d null;\nvar G__42308__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__42308__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42308 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42308__1.call(this,x);\ncase 2:\nreturn G__42308__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42308.cljs$core$IFn$_invoke$arity$1 \x3d G__42308__1;\nG__42308.cljs$core$IFn$_invoke$arity$2 \x3d G__42308__2;\nreturn G__42308;\n})()\n);\n\n(cljs.core.Cons.prototype.lastIndexOf \x3d (function() {\nvar G__42312 \x3d null;\nvar G__42312__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__42312__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42312 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42312__1.call(this,x);\ncase 2:\nreturn G__42312__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42312.cljs$core$IFn$_invoke$arity$1 \x3d G__42312__1;\nG__42312.cljs$core$IFn$_invoke$arity$2 \x3d G__42312__2;\nreturn G__42312;\n})()\n);\n\n(cljs.core.Cons.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Cons.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.Cons(self__.meta,self__.first,self__.rest,self__.__hash));\n}));\n\n(cljs.core.Cons.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.rest \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.seq(self__.rest);\n}\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.Cons.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.first;\n}));\n\n(cljs.core.Cons.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.rest \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn self__.rest;\n}\n}));\n\n(cljs.core.Cons.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.Cons(new_meta,self__.first,self__.rest,self__.__hash));\n}\n}));\n\n(cljs.core.Cons.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.Cons(null,o,coll__$1,null));\n}));\n\n(cljs.core.Cons.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22first\x22,\x22first\x22,996428481,null),new cljs.core.Symbol(null,\x22rest\x22,\x22rest\x22,398835108,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Cons.cljs$lang$type \x3d true);\n\n(cljs.core.Cons.cljs$lang$ctorStr \x3d \x22cljs.core/Cons\x22);\n\n(cljs.core.Cons.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Cons\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Cons.\n */\ncljs.core.__GT_Cons \x3d (function cljs$core$__GT_Cons(meta,first,rest,__hash){\nreturn (new cljs.core.Cons(meta,first,rest,__hash));\n});\n\ngoog.object.set(cljs.core.Cons.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Returns a new seq where x is the first element and coll is the rest.\n */\ncljs.core.cons \x3d (function cljs$core$cons(x,coll){\nif((coll \x3d\x3d null)){\nreturn (new cljs.core.List(null,x,null,(1),null));\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISeq$))))?true:false):false)){\nreturn (new cljs.core.Cons(null,x,coll,null));\n} else {\nreturn (new cljs.core.Cons(null,x,cljs.core.seq(coll),null));\n\n}\n}\n});\ncljs.core.hash_keyword \x3d (function cljs$core$hash_keyword(k){\nreturn ((cljs.core.hash_symbol(k) + (2654435769)) | (0));\n});\ncljs.core.compare_keywords \x3d (function cljs$core$compare_keywords(a,b){\nif((a.fqn \x3d\x3d\x3d b.fqn)){\nreturn (0);\n} else {\nif(cljs.core.truth_(((cljs.core.not(a.ns))?b.ns:false))){\nreturn (-1);\n} else {\nif(cljs.core.truth_(a.ns)){\nif(cljs.core.not(b.ns)){\nreturn (1);\n} else {\nvar nsc \x3d goog.array.defaultCompare(a.ns,b.ns);\nif(((0) \x3d\x3d\x3d nsc)){\nreturn goog.array.defaultCompare(a.name,b.name);\n} else {\nreturn nsc;\n}\n}\n} else {\nreturn goog.array.defaultCompare(a.name,b.name);\n\n}\n}\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.INamed}\n * @implements {cljs.core.IPrintWithWriter}\n*/\ncljs.core.Keyword \x3d (function (ns,name,fqn,_hash){\nthis.ns \x3d ns;\nthis.name \x3d name;\nthis.fqn \x3d fqn;\nthis._hash \x3d _hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2153775105;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 4096;\n});\n(cljs.core.Keyword.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn [\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.fqn)].join(\x27\x27);\n}));\n\n(cljs.core.Keyword.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (_,other){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((other instanceof cljs.core.Keyword)){\nreturn (self__.fqn \x3d\x3d\x3d other.fqn);\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.Keyword.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__38667 \x3d (arguments.length - (1));\nswitch (G__38667) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.Keyword.prototype.apply \x3d (function (self__,args38666){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args38666)));\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar kw \x3d this;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(coll,kw);\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (coll,not_found){\nvar self__ \x3d this;\nvar kw \x3d this;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(coll,kw,not_found);\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar h__4273__auto__ \x3d self__._hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_keyword(this$__$1);\n(self__._hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$INamed$_name$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.name;\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$INamed$_namespace$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.ns;\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (o,writer,_){\nvar self__ \x3d this;\nvar o__$1 \x3d this;\nreturn cljs.core._write(writer,[\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.fqn)].join(\x27\x27));\n}));\n\n(cljs.core.Keyword.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null),new cljs.core.Symbol(null,\x22fqn\x22,\x22fqn\x22,-1749334463,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_hash\x22,\x22_hash\x22,-2130838312,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Keyword.cljs$lang$type \x3d true);\n\n(cljs.core.Keyword.cljs$lang$ctorStr \x3d \x22cljs.core/Keyword\x22);\n\n(cljs.core.Keyword.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Keyword\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Keyword.\n */\ncljs.core.__GT_Keyword \x3d (function cljs$core$__GT_Keyword(ns,name,fqn,_hash){\nreturn (new cljs.core.Keyword(ns,name,fqn,_hash));\n});\n\n/**\n * Return true if x is a Keyword\n */\ncljs.core.keyword_QMARK_ \x3d (function cljs$core$keyword_QMARK_(x){\nreturn (x instanceof cljs.core.Keyword);\n});\n/**\n * Efficient test to determine that two keywords are identical.\n */\ncljs.core.keyword_identical_QMARK_ \x3d (function cljs$core$keyword_identical_QMARK_(x,y){\nif((x \x3d\x3d\x3d y)){\nreturn true;\n} else {\nif((((x instanceof cljs.core.Keyword)) \x26\x26 ((y instanceof cljs.core.Keyword)))){\nreturn (x.fqn \x3d\x3d\x3d y.fqn);\n} else {\nreturn false;\n}\n}\n});\n/**\n * Efficient test to determine that two symbols are identical.\n */\ncljs.core.symbol_identical_QMARK_ \x3d (function cljs$core$symbol_identical_QMARK_(x,y){\nif((x \x3d\x3d\x3d y)){\nreturn true;\n} else {\nif((((x instanceof cljs.core.Symbol)) \x26\x26 ((y instanceof cljs.core.Symbol)))){\nreturn (x.str \x3d\x3d\x3d y.str);\n} else {\nreturn false;\n}\n}\n});\n/**\n * Returns the namespace String of a symbol or keyword, or nil if not present.\n */\ncljs.core.namespace \x3d (function cljs$core$namespace(x){\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition1$ \x26 (4096))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$INamed$))))?true:false):false)){\nreturn x.cljs$core$INamed$_namespace$arity$1(null);\n} else {\nthrow (new Error([\x22Doesn\x27t support namespace: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x)].join(\x27\x27)));\n}\n});\n/**\n * Return true if x is a symbol or keyword\n */\ncljs.core.ident_QMARK_ \x3d (function cljs$core$ident_QMARK_(x){\nreturn (((x instanceof cljs.core.Keyword)) || ((x instanceof cljs.core.Symbol)));\n});\n/**\n * Return true if x is a symbol or keyword without a namespace\n */\ncljs.core.simple_ident_QMARK_ \x3d (function cljs$core$simple_ident_QMARK_(x){\nreturn ((cljs.core.ident_QMARK_(x)) \x26\x26 ((cljs.core.namespace(x) \x3d\x3d null)));\n});\n/**\n * Return true if x is a symbol or keyword with a namespace\n */\ncljs.core.qualified_ident_QMARK_ \x3d (function cljs$core$qualified_ident_QMARK_(x){\nreturn cljs.core.boolean$(((cljs.core.ident_QMARK_(x))?(function (){var and__4149__auto__ \x3d cljs.core.namespace(x);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn true;\n} else {\nreturn and__4149__auto__;\n}\n})():false));\n});\n/**\n * Return true if x is a symbol without a namespace\n */\ncljs.core.simple_symbol_QMARK_ \x3d (function cljs$core$simple_symbol_QMARK_(x){\nreturn (((x instanceof cljs.core.Symbol)) \x26\x26 ((cljs.core.namespace(x) \x3d\x3d null)));\n});\n/**\n * Return true if x is a symbol with a namespace\n */\ncljs.core.qualified_symbol_QMARK_ \x3d (function cljs$core$qualified_symbol_QMARK_(x){\nreturn cljs.core.boolean$((((x instanceof cljs.core.Symbol))?(function (){var and__4149__auto__ \x3d cljs.core.namespace(x);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn true;\n} else {\nreturn and__4149__auto__;\n}\n})():false));\n});\n/**\n * Return true if x is a keyword without a namespace\n */\ncljs.core.simple_keyword_QMARK_ \x3d (function cljs$core$simple_keyword_QMARK_(x){\nreturn (((x instanceof cljs.core.Keyword)) \x26\x26 ((cljs.core.namespace(x) \x3d\x3d null)));\n});\n/**\n * Return true if x is a keyword with a namespace\n */\ncljs.core.qualified_keyword_QMARK_ \x3d (function cljs$core$qualified_keyword_QMARK_(x){\nreturn cljs.core.boolean$((((x instanceof cljs.core.Keyword))?(function (){var and__4149__auto__ \x3d cljs.core.namespace(x);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn true;\n} else {\nreturn and__4149__auto__;\n}\n})():false));\n});\n/**\n * Returns a Keyword with the given namespace and name.  Do not use :\n *   in the keyword strings, it will be added automatically.\n */\ncljs.core.keyword \x3d (function cljs$core$keyword(var_args){\nvar G__38670 \x3d arguments.length;\nswitch (G__38670) {\ncase 1:\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.keyword.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nif((name instanceof cljs.core.Keyword)){\nreturn name;\n} else {\nif((name instanceof cljs.core.Symbol)){\nreturn (new cljs.core.Keyword(cljs.core.namespace(name),(cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(name) : cljs.core.name.call(null,name)),name.str,null));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22/\x22,name)){\nreturn (new cljs.core.Keyword(null,name,name,null));\n} else {\nif(typeof name \x3d\x3d\x3d \x27string\x27){\nvar parts \x3d name.split(\x22/\x22);\nif((parts.length \x3d\x3d\x3d (2))){\nreturn (new cljs.core.Keyword((parts[(0)]),(parts[(1)]),name,null));\n} else {\nreturn (new cljs.core.Keyword(null,(parts[(0)]),name,null));\n}\n} else {\nreturn null;\n}\n}\n}\n}\n}));\n\n(cljs.core.keyword.cljs$core$IFn$_invoke$arity$2 \x3d (function (ns,name){\nvar ns__$1 \x3d (((ns instanceof cljs.core.Keyword))?(cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(ns) : cljs.core.name.call(null,ns)):(((ns instanceof cljs.core.Symbol))?(cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(ns) : cljs.core.name.call(null,ns)):ns\n));\nvar name__$1 \x3d (((name instanceof cljs.core.Keyword))?(cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(name) : cljs.core.name.call(null,name)):(((name instanceof cljs.core.Symbol))?(cljs.core.name.cljs$core$IFn$_invoke$arity$1 ? cljs.core.name.cljs$core$IFn$_invoke$arity$1(name) : cljs.core.name.call(null,name)):name\n));\nreturn (new cljs.core.Keyword(ns__$1,name__$1,[(cljs.core.truth_(ns__$1)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns__$1),\x22/\x22].join(\x27\x27):null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__$1)].join(\x27\x27),null));\n}));\n\n(cljs.core.keyword.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IPending}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.LazySeq \x3d (function (meta,fn,s,__hash){\nthis.meta \x3d meta;\nthis.fn \x3d fn;\nthis.s \x3d s;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1;\n});\n(cljs.core.LazySeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.LazySeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.LazySeq.prototype.sval \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nif((self__.fn \x3d\x3d null)){\nreturn self__.s;\n} else {\n(self__.s \x3d (self__.fn.cljs$core$IFn$_invoke$arity$0 ? self__.fn.cljs$core$IFn$_invoke$arity$0() : self__.fn.call(null)));\n\n(self__.fn \x3d null);\n\nreturn self__.s;\n}\n}));\n\n(cljs.core.LazySeq.prototype.indexOf \x3d (function() {\nvar G__42495 \x3d null;\nvar G__42495__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__42495__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42495 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42495__1.call(this,x);\ncase 2:\nreturn G__42495__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42495.cljs$core$IFn$_invoke$arity$1 \x3d G__42495__1;\nG__42495.cljs$core$IFn$_invoke$arity$2 \x3d G__42495__2;\nreturn G__42495;\n})()\n);\n\n(cljs.core.LazySeq.prototype.lastIndexOf \x3d (function() {\nvar G__42498 \x3d null;\nvar G__42498__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__42498__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42498 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42498__1.call(this,x);\ncase 2:\nreturn G__42498__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42498.cljs$core$IFn$_invoke$arity$1 \x3d G__42498__1;\nG__42498.cljs$core$IFn$_invoke$arity$2 \x3d G__42498__2;\nreturn G__42498;\n})()\n);\n\n(cljs.core.LazySeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\ncoll__$1.cljs$core$ISeqable$_seq$arity$1(null);\n\nif((self__.s \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.next(self__.s);\n}\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.List.EMPTY,self__.meta);\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IPending$_realized_QMARK_$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.not(self__.fn);\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\ncoll__$1.cljs$core$ISeqable$_seq$arity$1(null);\n\nif((self__.s \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.first(self__.s);\n}\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\ncoll__$1.cljs$core$ISeqable$_seq$arity$1(null);\n\nif((!((self__.s \x3d\x3d null)))){\nreturn cljs.core.rest(self__.s);\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\ncoll__$1.sval();\n\nif((self__.s \x3d\x3d null)){\nreturn null;\n} else {\nvar ls \x3d self__.s;\nwhile(true){\nif((ls instanceof cljs.core.LazySeq)){\nvar G__42524 \x3d ls.sval();\nls \x3d G__42524;\ncontinue;\n} else {\n(self__.s \x3d ls);\n\nreturn cljs.core.seq(self__.s);\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.LazySeq(new_meta,(function (){\nreturn coll__$1.cljs$core$ISeqable$_seq$arity$1(null);\n}),null,self__.__hash));\n}\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.LazySeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.LazySeq.cljs$lang$type \x3d true);\n\n(cljs.core.LazySeq.cljs$lang$ctorStr \x3d \x22cljs.core/LazySeq\x22);\n\n(cljs.core.LazySeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/LazySeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/LazySeq.\n */\ncljs.core.__GT_LazySeq \x3d (function cljs$core$__GT_LazySeq(meta,fn,s,__hash){\nreturn (new cljs.core.LazySeq(meta,fn,s,__hash));\n});\n\ngoog.object.set(cljs.core.LazySeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.ICounted}\n*/\ncljs.core.ChunkBuffer \x3d (function (buf,end){\nthis.buf \x3d buf;\nthis.end \x3d end;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.ChunkBuffer.prototype.add \x3d (function (o){\nvar self__ \x3d this;\nvar _ \x3d this;\n(self__.buf[self__.end] \x3d o);\n\nreturn (self__.end \x3d (self__.end + (1)));\n}));\n\n(cljs.core.ChunkBuffer.prototype.chunk \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d (new cljs.core.ArrayChunk(self__.buf,(0),self__.end));\n(self__.buf \x3d null);\n\nreturn ret;\n}));\n\n(cljs.core.ChunkBuffer.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.end;\n}));\n\n(cljs.core.ChunkBuffer.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ChunkBuffer.cljs$lang$type \x3d true);\n\n(cljs.core.ChunkBuffer.cljs$lang$ctorStr \x3d \x22cljs.core/ChunkBuffer\x22);\n\n(cljs.core.ChunkBuffer.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ChunkBuffer\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ChunkBuffer.\n */\ncljs.core.__GT_ChunkBuffer \x3d (function cljs$core$__GT_ChunkBuffer(buf,end){\nreturn (new cljs.core.ChunkBuffer(buf,end));\n});\n\ncljs.core.chunk_buffer \x3d (function cljs$core$chunk_buffer(capacity){\nreturn (new cljs.core.ChunkBuffer((new Array(capacity)),(0)));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.IChunk}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.ArrayChunk \x3d (function (arr,off,end){\nthis.arr \x3d arr;\nthis.off \x3d off;\nthis.end \x3d end;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 524306;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.ArrayChunk.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (self__.end - self__.off);\n}));\n\n(cljs.core.ArrayChunk.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (coll,i){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (self__.arr[(self__.off + i)]);\n}));\n\n(cljs.core.ArrayChunk.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (coll,i,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((i \x3e\x3d (0))) \x26\x26 ((i \x3c (self__.end - self__.off))))){\nreturn (self__.arr[(self__.off + i)]);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.ArrayChunk.prototype.cljs$core$IChunk$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ArrayChunk.prototype.cljs$core$IChunk$_drop_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.off \x3d\x3d\x3d self__.end)){\nthrow (new Error(\x22-drop-first of empty chunk\x22));\n} else {\nreturn (new cljs.core.ArrayChunk(self__.arr,(self__.off + (1)),self__.end));\n}\n}));\n\n(cljs.core.ArrayChunk.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$4(self__.arr,f,(self__.arr[self__.off]),(self__.off + (1)));\n}));\n\n(cljs.core.ArrayChunk.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.array_reduce.cljs$core$IFn$_invoke$arity$4(self__.arr,f,start,self__.off);\n}));\n\n(cljs.core.ArrayChunk.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.Symbol(null,\x22off\x22,\x22off\x22,-2047994980,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null);\n}));\n\n(cljs.core.ArrayChunk.cljs$lang$type \x3d true);\n\n(cljs.core.ArrayChunk.cljs$lang$ctorStr \x3d \x22cljs.core/ArrayChunk\x22);\n\n(cljs.core.ArrayChunk.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ArrayChunk\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ArrayChunk.\n */\ncljs.core.__GT_ArrayChunk \x3d (function cljs$core$__GT_ArrayChunk(arr,off,end){\nreturn (new cljs.core.ArrayChunk(arr,off,end));\n});\n\ncljs.core.array_chunk \x3d (function cljs$core$array_chunk(var_args){\nvar G__38672 \x3d arguments.length;\nswitch (G__38672) {\ncase 1:\nreturn cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$1 \x3d (function (arr){\nreturn (new cljs.core.ArrayChunk(arr,(0),arr.length));\n}));\n\n(cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$2 \x3d (function (arr,off){\nreturn (new cljs.core.ArrayChunk(arr,off,arr.length));\n}));\n\n(cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$3 \x3d (function (arr,off,end){\nreturn (new cljs.core.ArrayChunk(arr,off,end));\n}));\n\n(cljs.core.array_chunk.cljs$lang$maxFixedArity \x3d 3);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ASeq}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IChunkedNext}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IChunkedSeq}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.ChunkedCons \x3d (function (chunk,more,meta,__hash){\nthis.chunk \x3d chunk;\nthis.more \x3d more;\nthis.meta \x3d meta;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 31850732;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1536;\n});\n(cljs.core.ChunkedCons.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.ChunkedCons.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.ChunkedCons.prototype.indexOf \x3d (function() {\nvar G__42609 \x3d null;\nvar G__42609__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__42609__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42609 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42609__1.call(this,x);\ncase 2:\nreturn G__42609__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42609.cljs$core$IFn$_invoke$arity$1 \x3d G__42609__1;\nG__42609.cljs$core$IFn$_invoke$arity$2 \x3d G__42609__2;\nreturn G__42609;\n})()\n);\n\n(cljs.core.ChunkedCons.prototype.lastIndexOf \x3d (function() {\nvar G__42610 \x3d null;\nvar G__42610__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__42610__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__42610 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__42610__1.call(this,x);\ncase 2:\nreturn G__42610__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__42610.cljs$core$IFn$_invoke$arity$1 \x3d G__42610__1;\nG__42610.cljs$core$IFn$_invoke$arity$2 \x3d G__42610__2;\nreturn G__42610;\n})()\n);\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((cljs.core._count(self__.chunk) \x3e (1))){\nreturn (new cljs.core.ChunkedCons(cljs.core._drop_first(self__.chunk),self__.more,null,null));\n} else {\nif((self__.more \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core._seq(self__.more);\n}\n}\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._nth(self__.chunk,(0));\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((cljs.core._count(self__.chunk) \x3e (1))){\nreturn (new cljs.core.ChunkedCons(cljs.core._drop_first(self__.chunk),self__.more,null,null));\n} else {\nif((self__.more \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn self__.more;\n}\n}\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IChunkedSeq$_chunked_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.chunk;\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IChunkedSeq$_chunked_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.more \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn self__.more;\n}\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.ChunkedCons(self__.chunk,self__.more,new_meta,self__.__hash));\n}\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this$,o){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core.cons(o,this$__$1);\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IChunkedNext$_chunked_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.more \x3d\x3d null)){\nreturn null;\n} else {\nreturn self__.more;\n}\n}));\n\n(cljs.core.ChunkedCons.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22chunk\x22,\x22chunk\x22,449371907,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ChunkedCons.cljs$lang$type \x3d true);\n\n(cljs.core.ChunkedCons.cljs$lang$ctorStr \x3d \x22cljs.core/ChunkedCons\x22);\n\n(cljs.core.ChunkedCons.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ChunkedCons\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ChunkedCons.\n */\ncljs.core.__GT_ChunkedCons \x3d (function cljs$core$__GT_ChunkedCons(chunk,more,meta,__hash){\nreturn (new cljs.core.ChunkedCons(chunk,more,meta,__hash));\n});\n\ngoog.object.set(cljs.core.ChunkedCons.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.chunk_cons \x3d (function cljs$core$chunk_cons(chunk,rest){\nif((cljs.core._count(chunk) \x3d\x3d\x3d (0))){\nreturn rest;\n} else {\nreturn (new cljs.core.ChunkedCons(chunk,rest,null,null));\n}\n});\ncljs.core.chunk_append \x3d (function cljs$core$chunk_append(b,x){\nreturn b.add(x);\n});\ncljs.core.chunk \x3d (function cljs$core$chunk(b){\nreturn b.chunk();\n});\ncljs.core.chunk_first \x3d (function cljs$core$chunk_first(s){\nreturn cljs.core._chunked_first(s);\n});\ncljs.core.chunk_rest \x3d (function cljs$core$chunk_rest(s){\nreturn cljs.core._chunked_rest(s);\n});\ncljs.core.chunk_next \x3d (function cljs$core$chunk_next(s){\nif((((!((s \x3d\x3d null))))?(((((s.cljs$lang$protocol_mask$partition1$ \x26 (1024))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d s.cljs$core$IChunkedNext$))))?true:false):false)){\nreturn s.cljs$core$IChunkedNext$_chunked_next$arity$1(null);\n} else {\nreturn cljs.core.seq(cljs.core._chunked_rest(s));\n}\n});\n/**\n * Returns an array containing the contents of coll.\n */\ncljs.core.to_array \x3d (function cljs$core$to_array(coll){\nvar ary \x3d [];\nvar s \x3d cljs.core.seq(coll);\nwhile(true){\nif((!((s \x3d\x3d null)))){\nary.push(cljs.core.first(s));\n\nvar G__42656 \x3d cljs.core.next(s);\ns \x3d G__42656;\ncontinue;\n} else {\nreturn ary;\n}\nbreak;\n}\n});\n/**\n * Returns a (potentially-ragged) 2-dimensional array\n *   containing the contents of coll.\n */\ncljs.core.to_array_2d \x3d (function cljs$core$to_array_2d(coll){\nvar ret \x3d (new Array(cljs.core.count(coll)));\nvar i_42657 \x3d (0);\nvar xs_42658 \x3d cljs.core.seq(coll);\nwhile(true){\nif((xs_42658 \x3d\x3d null)){\n} else {\n(ret[i_42657] \x3d cljs.core.to_array(cljs.core.first(xs_42658)));\n\nvar G__42659 \x3d (i_42657 + (1));\nvar G__42660 \x3d cljs.core.next(xs_42658);\ni_42657 \x3d G__42659;\nxs_42658 \x3d G__42660;\ncontinue;\n}\nbreak;\n}\n\nreturn ret;\n});\n/**\n * Creates an array of ints. Does not coerce array, provided for compatibility\n *   with Clojure.\n */\ncljs.core.int_array \x3d (function cljs$core$int_array(var_args){\nvar G__38675 \x3d arguments.length;\nswitch (G__38675) {\ncase 1:\nreturn cljs.core.int_array.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.int_array.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.int_array.cljs$core$IFn$_invoke$arity$1 \x3d (function (size_or_seq){\nif(typeof size_or_seq \x3d\x3d\x3d \x27number\x27){\nreturn cljs.core.int_array.cljs$core$IFn$_invoke$arity$2(size_or_seq,null);\n} else {\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(size_or_seq);\n}\n}));\n\n(cljs.core.int_array.cljs$core$IFn$_invoke$arity$2 \x3d (function (size,init_val_or_seq){\nvar a \x3d (new Array(size));\nif(cljs.core.seq_QMARK_(init_val_or_seq)){\nvar s \x3d cljs.core.seq(init_val_or_seq);\nvar i \x3d (0);\nvar s__$1 \x3d s;\nwhile(true){\nif(((s__$1) \x26\x26 ((i \x3c size)))){\n(a[i] \x3d cljs.core.first(s__$1));\n\nvar G__42663 \x3d (i + (1));\nvar G__42664 \x3d cljs.core.next(s__$1);\ni \x3d G__42663;\ns__$1 \x3d G__42664;\ncontinue;\n} else {\nreturn a;\n}\nbreak;\n}\n} else {\nvar n__4648__auto___42667 \x3d size;\nvar i_42668 \x3d (0);\nwhile(true){\nif((i_42668 \x3c n__4648__auto___42667)){\n(a[i_42668] \x3d init_val_or_seq);\n\nvar G__42669 \x3d (i_42668 + (1));\ni_42668 \x3d G__42669;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn a;\n}\n}));\n\n(cljs.core.int_array.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Creates an array of longs. Does not coerce array, provided for compatibility\n *   with Clojure.\n */\ncljs.core.long_array \x3d (function cljs$core$long_array(var_args){\nvar G__38677 \x3d arguments.length;\nswitch (G__38677) {\ncase 1:\nreturn cljs.core.long_array.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.long_array.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.long_array.cljs$core$IFn$_invoke$arity$1 \x3d (function (size_or_seq){\nif(typeof size_or_seq \x3d\x3d\x3d \x27number\x27){\nreturn cljs.core.long_array.cljs$core$IFn$_invoke$arity$2(size_or_seq,null);\n} else {\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(size_or_seq);\n}\n}));\n\n(cljs.core.long_array.cljs$core$IFn$_invoke$arity$2 \x3d (function (size,init_val_or_seq){\nvar a \x3d (new Array(size));\nif(cljs.core.seq_QMARK_(init_val_or_seq)){\nvar s \x3d cljs.core.seq(init_val_or_seq);\nvar i \x3d (0);\nvar s__$1 \x3d s;\nwhile(true){\nif(((s__$1) \x26\x26 ((i \x3c size)))){\n(a[i] \x3d cljs.core.first(s__$1));\n\nvar G__42673 \x3d (i + (1));\nvar G__42674 \x3d cljs.core.next(s__$1);\ni \x3d G__42673;\ns__$1 \x3d G__42674;\ncontinue;\n} else {\nreturn a;\n}\nbreak;\n}\n} else {\nvar n__4648__auto___42675 \x3d size;\nvar i_42676 \x3d (0);\nwhile(true){\nif((i_42676 \x3c n__4648__auto___42675)){\n(a[i_42676] \x3d init_val_or_seq);\n\nvar G__42677 \x3d (i_42676 + (1));\ni_42676 \x3d G__42677;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn a;\n}\n}));\n\n(cljs.core.long_array.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Creates an array of doubles. Does not coerce array, provided for compatibility\n *   with Clojure.\n */\ncljs.core.double_array \x3d (function cljs$core$double_array(var_args){\nvar G__38679 \x3d arguments.length;\nswitch (G__38679) {\ncase 1:\nreturn cljs.core.double_array.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.double_array.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.double_array.cljs$core$IFn$_invoke$arity$1 \x3d (function (size_or_seq){\nif(typeof size_or_seq \x3d\x3d\x3d \x27number\x27){\nreturn cljs.core.double_array.cljs$core$IFn$_invoke$arity$2(size_or_seq,null);\n} else {\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(size_or_seq);\n}\n}));\n\n(cljs.core.double_array.cljs$core$IFn$_invoke$arity$2 \x3d (function (size,init_val_or_seq){\nvar a \x3d (new Array(size));\nif(cljs.core.seq_QMARK_(init_val_or_seq)){\nvar s \x3d cljs.core.seq(init_val_or_seq);\nvar i \x3d (0);\nvar s__$1 \x3d s;\nwhile(true){\nif(((s__$1) \x26\x26 ((i \x3c size)))){\n(a[i] \x3d cljs.core.first(s__$1));\n\nvar G__42681 \x3d (i + (1));\nvar G__42682 \x3d cljs.core.next(s__$1);\ni \x3d G__42681;\ns__$1 \x3d G__42682;\ncontinue;\n} else {\nreturn a;\n}\nbreak;\n}\n} else {\nvar n__4648__auto___42684 \x3d size;\nvar i_42685 \x3d (0);\nwhile(true){\nif((i_42685 \x3c n__4648__auto___42684)){\n(a[i_42685] \x3d init_val_or_seq);\n\nvar G__42687 \x3d (i_42685 + (1));\ni_42685 \x3d G__42687;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn a;\n}\n}));\n\n(cljs.core.double_array.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Creates an array of objects. Does not coerce array, provided for compatibility\n *   with Clojure.\n */\ncljs.core.object_array \x3d (function cljs$core$object_array(var_args){\nvar G__38681 \x3d arguments.length;\nswitch (G__38681) {\ncase 1:\nreturn cljs.core.object_array.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.object_array.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.object_array.cljs$core$IFn$_invoke$arity$1 \x3d (function (size_or_seq){\nif(typeof size_or_seq \x3d\x3d\x3d \x27number\x27){\nreturn cljs.core.object_array.cljs$core$IFn$_invoke$arity$2(size_or_seq,null);\n} else {\nreturn cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(size_or_seq);\n}\n}));\n\n(cljs.core.object_array.cljs$core$IFn$_invoke$arity$2 \x3d (function (size,init_val_or_seq){\nvar a \x3d (new Array(size));\nif(cljs.core.seq_QMARK_(init_val_or_seq)){\nvar s \x3d cljs.core.seq(init_val_or_seq);\nvar i \x3d (0);\nvar s__$1 \x3d s;\nwhile(true){\nif(((s__$1) \x26\x26 ((i \x3c size)))){\n(a[i] \x3d cljs.core.first(s__$1));\n\nvar G__42693 \x3d (i + (1));\nvar G__42694 \x3d cljs.core.next(s__$1);\ni \x3d G__42693;\ns__$1 \x3d G__42694;\ncontinue;\n} else {\nreturn a;\n}\nbreak;\n}\n} else {\nvar n__4648__auto___42695 \x3d size;\nvar i_42696 \x3d (0);\nwhile(true){\nif((i_42696 \x3c n__4648__auto___42695)){\n(a[i_42696] \x3d init_val_or_seq);\n\nvar G__42697 \x3d (i_42696 + (1));\ni_42696 \x3d G__42697;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn a;\n}\n}));\n\n(cljs.core.object_array.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * If coll is counted? returns its count, else will count at most the first n\n * elements of coll using its seq\n */\ncljs.core.bounded_count \x3d (function cljs$core$bounded_count(n,coll){\nif(cljs.core.counted_QMARK_(coll)){\nreturn cljs.core.count(coll);\n} else {\nvar i \x3d (0);\nvar s \x3d cljs.core.seq(coll);\nwhile(true){\nif((((!((s \x3d\x3d null)))) \x26\x26 ((i \x3c n)))){\nvar G__42698 \x3d (i + (1));\nvar G__42699 \x3d cljs.core.next(s);\ni \x3d G__42698;\ns \x3d G__42699;\ncontinue;\n} else {\nreturn i;\n}\nbreak;\n}\n}\n});\ncljs.core.spread \x3d (function cljs$core$spread(arglist){\nif((arglist \x3d\x3d null)){\nreturn null;\n} else {\nvar n \x3d cljs.core.next(arglist);\nif((n \x3d\x3d null)){\nreturn cljs.core.seq(cljs.core.first(arglist));\n} else {\nreturn cljs.core.cons(cljs.core.first(arglist),(cljs.core.spread.cljs$core$IFn$_invoke$arity$1 ? cljs.core.spread.cljs$core$IFn$_invoke$arity$1(n) : cljs.core.spread.call(null,n)));\n}\n}\n});\n/**\n * Returns a lazy seq representing the concatenation of the elements in the supplied colls.\n */\ncljs.core.concat \x3d (function cljs$core$concat(var_args){\nvar G__38686 \x3d arguments.length;\nswitch (G__38686) {\ncase 0:\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42706 \x3d arguments.length;\nvar i__4772__auto___42708 \x3d (0);\nwhile(true){\nif((i__4772__auto___42708 \x3c len__4771__auto___42706)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42708]));\n\nvar G__42709 \x3d (i__4772__auto___42708 + (1));\ni__4772__auto___42708 \x3d G__42709;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.concat.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn null;\n}),null,null));\n}));\n\n(cljs.core.concat.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn x;\n}),null,null));\n}));\n\n(cljs.core.concat.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s \x3d cljs.core.seq(x);\nif(s){\nif(cljs.core.chunked_seq_QMARK_(s)){\nreturn cljs.core.chunk_cons(cljs.core.chunk_first(s),cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.chunk_rest(s),y));\n} else {\nreturn cljs.core.cons(cljs.core.first(s),cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.rest(s),y));\n}\n} else {\nreturn y;\n}\n}),null,null));\n}));\n\n(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,zs){\nvar cat \x3d (function cljs$core$cat(xys,zs__$1){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar xys__$1 \x3d cljs.core.seq(xys);\nif(xys__$1){\nif(cljs.core.chunked_seq_QMARK_(xys__$1)){\nreturn cljs.core.chunk_cons(cljs.core.chunk_first(xys__$1),cljs$core$cat(cljs.core.chunk_rest(xys__$1),zs__$1));\n} else {\nreturn cljs.core.cons(cljs.core.first(xys__$1),cljs$core$cat(cljs.core.rest(xys__$1),zs__$1));\n}\n} else {\nif(cljs.core.truth_(zs__$1)){\nreturn cljs$core$cat(cljs.core.first(zs__$1),cljs.core.next(zs__$1));\n} else {\nreturn null;\n}\n}\n}),null,null));\n});\nreturn cat(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(x,y),zs);\n}));\n\n/** @this {Function} */\n(cljs.core.concat.cljs$lang$applyTo \x3d (function (seq38683){\nvar G__38684 \x3d cljs.core.first(seq38683);\nvar seq38683__$1 \x3d cljs.core.next(seq38683);\nvar G__38685 \x3d cljs.core.first(seq38683__$1);\nvar seq38683__$2 \x3d cljs.core.next(seq38683__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38684,G__38685,seq38683__$2);\n}));\n\n(cljs.core.concat.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Creates a new list containing the items prepended to the rest, the\n *   last of which will be treated as a sequence.\n */\ncljs.core.list_STAR_ \x3d (function cljs$core$list_STAR_(var_args){\nvar G__38693 \x3d arguments.length;\nswitch (G__38693) {\ncase 1:\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42727 \x3d arguments.length;\nvar i__4772__auto___42728 \x3d (0);\nwhile(true){\nif((i__4772__auto___42728 \x3c len__4771__auto___42727)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42728]));\n\nvar G__42729 \x3d (i__4772__auto___42728 + (1));\ni__4772__auto___42728 \x3d G__42729;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$1 \x3d (function (args){\nreturn cljs.core.seq(args);\n}));\n\n(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,args){\nreturn cljs.core.cons(a,args);\n}));\n\n(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,args){\nreturn cljs.core.cons(a,cljs.core.cons(b,args));\n}));\n\n(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,b,c,args){\nreturn cljs.core.cons(a,cljs.core.cons(b,cljs.core.cons(c,args)));\n}));\n\n(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (a,b,c,d,more){\nreturn cljs.core.cons(a,cljs.core.cons(b,cljs.core.cons(c,cljs.core.cons(d,cljs.core.spread(more)))));\n}));\n\n/** @this {Function} */\n(cljs.core.list_STAR_.cljs$lang$applyTo \x3d (function (seq38688){\nvar G__38689 \x3d cljs.core.first(seq38688);\nvar seq38688__$1 \x3d cljs.core.next(seq38688);\nvar G__38690 \x3d cljs.core.first(seq38688__$1);\nvar seq38688__$2 \x3d cljs.core.next(seq38688__$1);\nvar G__38691 \x3d cljs.core.first(seq38688__$2);\nvar seq38688__$3 \x3d cljs.core.next(seq38688__$2);\nvar G__38692 \x3d cljs.core.first(seq38688__$3);\nvar seq38688__$4 \x3d cljs.core.next(seq38688__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38689,G__38690,G__38691,G__38692,seq38688__$4);\n}));\n\n(cljs.core.list_STAR_.cljs$lang$maxFixedArity \x3d (4));\n\n/**\n * Returns a new, transient version of the collection, in constant time.\n */\ncljs.core.transient$ \x3d (function cljs$core$transient(coll){\nreturn cljs.core._as_transient(coll);\n});\n/**\n * Returns a new, persistent version of the transient collection, in\n *   constant time. The transient collection cannot be used after this\n *   call, any such use will throw an exception.\n */\ncljs.core.persistent_BANG_ \x3d (function cljs$core$persistent_BANG_(tcoll){\nreturn cljs.core._persistent_BANG_(tcoll);\n});\n/**\n * Adds val to the transient collection, and return tcoll. The \x27addition\x27\n *   may happen at different \x27places\x27 depending on the concrete type.\n */\ncljs.core.conj_BANG_ \x3d (function cljs$core$conj_BANG_(var_args){\nvar G__38698 \x3d arguments.length;\nswitch (G__38698) {\ncase 0:\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42740 \x3d arguments.length;\nvar i__4772__auto___42741 \x3d (0);\nwhile(true){\nif((i__4772__auto___42741 \x3c len__4771__auto___42740)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42741]));\n\nvar G__42743 \x3d (i__4772__auto___42741 + (1));\ni__4772__auto___42741 \x3d G__42743;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\n}));\n\n(cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$1 \x3d (function (tcoll){\nreturn tcoll;\n}));\n\n(cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (tcoll,val){\nreturn cljs.core._conj_BANG_(tcoll,val);\n}));\n\n(cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (tcoll,val,vals){\nwhile(true){\nvar ntcoll \x3d cljs.core._conj_BANG_(tcoll,val);\nif(cljs.core.truth_(vals)){\nvar G__42748 \x3d ntcoll;\nvar G__42749 \x3d cljs.core.first(vals);\nvar G__42750 \x3d cljs.core.next(vals);\ntcoll \x3d G__42748;\nval \x3d G__42749;\nvals \x3d G__42750;\ncontinue;\n} else {\nreturn ntcoll;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.conj_BANG_.cljs$lang$applyTo \x3d (function (seq38695){\nvar G__38696 \x3d cljs.core.first(seq38695);\nvar seq38695__$1 \x3d cljs.core.next(seq38695);\nvar G__38697 \x3d cljs.core.first(seq38695__$1);\nvar seq38695__$2 \x3d cljs.core.next(seq38695__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38696,G__38697,seq38695__$2);\n}));\n\n(cljs.core.conj_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * When applied to a transient map, adds mapping of key(s) to\n *   val(s). When applied to a transient vector, sets the val at index.\n *   Note - index must be \x3c\x3d (count vector). Returns coll.\n */\ncljs.core.assoc_BANG_ \x3d (function cljs$core$assoc_BANG_(var_args){\nvar G__38704 \x3d arguments.length;\nswitch (G__38704) {\ncase 3:\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42765 \x3d arguments.length;\nvar i__4772__auto___42766 \x3d (0);\nwhile(true){\nif((i__4772__auto___42766 \x3c len__4771__auto___42765)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42766]));\n\nvar G__42767 \x3d (i__4772__auto___42766 + (1));\ni__4772__auto___42766 \x3d G__42767;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (tcoll,key,val){\nreturn cljs.core._assoc_BANG_(tcoll,key,val);\n}));\n\n(cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (tcoll,key,val,kvs){\nwhile(true){\nvar ntcoll \x3d cljs.core._assoc_BANG_(tcoll,key,val);\nif(cljs.core.truth_(kvs)){\nvar G__42782 \x3d ntcoll;\nvar G__42783 \x3d cljs.core.first(kvs);\nvar G__42784 \x3d cljs.core.second(kvs);\nvar G__42785 \x3d cljs.core.nnext(kvs);\ntcoll \x3d G__42782;\nkey \x3d G__42783;\nval \x3d G__42784;\nkvs \x3d G__42785;\ncontinue;\n} else {\nreturn ntcoll;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.assoc_BANG_.cljs$lang$applyTo \x3d (function (seq38700){\nvar G__38701 \x3d cljs.core.first(seq38700);\nvar seq38700__$1 \x3d cljs.core.next(seq38700);\nvar G__38702 \x3d cljs.core.first(seq38700__$1);\nvar seq38700__$2 \x3d cljs.core.next(seq38700__$1);\nvar G__38703 \x3d cljs.core.first(seq38700__$2);\nvar seq38700__$3 \x3d cljs.core.next(seq38700__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38701,G__38702,G__38703,seq38700__$3);\n}));\n\n(cljs.core.assoc_BANG_.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Returns a transient map that doesn\x27t contain a mapping for key(s).\n */\ncljs.core.dissoc_BANG_ \x3d (function cljs$core$dissoc_BANG_(var_args){\nvar G__38709 \x3d arguments.length;\nswitch (G__38709) {\ncase 2:\nreturn cljs.core.dissoc_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42793 \x3d arguments.length;\nvar i__4772__auto___42794 \x3d (0);\nwhile(true){\nif((i__4772__auto___42794 \x3c len__4771__auto___42793)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42794]));\n\nvar G__42800 \x3d (i__4772__auto___42794 + (1));\ni__4772__auto___42794 \x3d G__42800;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.dissoc_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.dissoc_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (tcoll,key){\nreturn cljs.core._dissoc_BANG_(tcoll,key);\n}));\n\n(cljs.core.dissoc_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (tcoll,key,ks){\nwhile(true){\nvar ntcoll \x3d cljs.core._dissoc_BANG_(tcoll,key);\nif(cljs.core.truth_(ks)){\nvar G__42811 \x3d ntcoll;\nvar G__42812 \x3d cljs.core.first(ks);\nvar G__42813 \x3d cljs.core.next(ks);\ntcoll \x3d G__42811;\nkey \x3d G__42812;\nks \x3d G__42813;\ncontinue;\n} else {\nreturn ntcoll;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.dissoc_BANG_.cljs$lang$applyTo \x3d (function (seq38706){\nvar G__38707 \x3d cljs.core.first(seq38706);\nvar seq38706__$1 \x3d cljs.core.next(seq38706);\nvar G__38708 \x3d cljs.core.first(seq38706__$1);\nvar seq38706__$2 \x3d cljs.core.next(seq38706__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38707,G__38708,seq38706__$2);\n}));\n\n(cljs.core.dissoc_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Removes the last item from a transient vector. If\n *   the collection is empty, throws an exception. Returns tcoll\n */\ncljs.core.pop_BANG_ \x3d (function cljs$core$pop_BANG_(tcoll){\nreturn cljs.core._pop_BANG_(tcoll);\n});\n/**\n * disj[oin]. Returns a transient set of the same (hashed/sorted) type, that\n *   does not contain key(s).\n */\ncljs.core.disj_BANG_ \x3d (function cljs$core$disj_BANG_(var_args){\nvar G__38714 \x3d arguments.length;\nswitch (G__38714) {\ncase 2:\nreturn cljs.core.disj_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42821 \x3d arguments.length;\nvar i__4772__auto___42823 \x3d (0);\nwhile(true){\nif((i__4772__auto___42823 \x3c len__4771__auto___42821)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42823]));\n\nvar G__42824 \x3d (i__4772__auto___42823 + (1));\ni__4772__auto___42823 \x3d G__42824;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.disj_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.disj_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (tcoll,val){\nreturn cljs.core._disjoin_BANG_(tcoll,val);\n}));\n\n(cljs.core.disj_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (tcoll,val,vals){\nwhile(true){\nvar ntcoll \x3d cljs.core._disjoin_BANG_(tcoll,val);\nif(cljs.core.truth_(vals)){\nvar G__42834 \x3d ntcoll;\nvar G__42835 \x3d cljs.core.first(vals);\nvar G__42836 \x3d cljs.core.next(vals);\ntcoll \x3d G__42834;\nval \x3d G__42835;\nvals \x3d G__42836;\ncontinue;\n} else {\nreturn ntcoll;\n}\nbreak;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.disj_BANG_.cljs$lang$applyTo \x3d (function (seq38711){\nvar G__38712 \x3d cljs.core.first(seq38711);\nvar seq38711__$1 \x3d cljs.core.next(seq38711);\nvar G__38713 \x3d cljs.core.first(seq38711__$1);\nvar seq38711__$2 \x3d cljs.core.next(seq38711__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38712,G__38713,seq38711__$2);\n}));\n\n(cljs.core.disj_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n\ncljs.core.apply_to \x3d (function cljs$core$apply_to(f,argc,args){\nvar args__$1 \x3d cljs.core.seq(args);\nif((argc \x3d\x3d\x3d (0))){\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n} else {\nvar a267 \x3d cljs.core._first(args__$1);\nvar args__$2 \x3d cljs.core._rest(args__$1);\nif((argc \x3d\x3d\x3d (1))){\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(a267) : f.call(null,a267));\n} else {\nvar b268 \x3d cljs.core._first(args__$2);\nvar args__$3 \x3d cljs.core._rest(args__$2);\nif((argc \x3d\x3d\x3d (2))){\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(a267,b268) : f.call(null,a267,b268));\n} else {\nvar c269 \x3d cljs.core._first(args__$3);\nvar args__$4 \x3d cljs.core._rest(args__$3);\nif((argc \x3d\x3d\x3d (3))){\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(a267,b268,c269) : f.call(null,a267,b268,c269));\n} else {\nvar d270 \x3d cljs.core._first(args__$4);\nvar args__$5 \x3d cljs.core._rest(args__$4);\nif((argc \x3d\x3d\x3d (4))){\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(a267,b268,c269,d270) : f.call(null,a267,b268,c269,d270));\n} else {\nvar e271 \x3d cljs.core._first(args__$5);\nvar args__$6 \x3d cljs.core._rest(args__$5);\nif((argc \x3d\x3d\x3d (5))){\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(a267,b268,c269,d270,e271) : f.call(null,a267,b268,c269,d270,e271));\n} else {\nvar f272 \x3d cljs.core._first(args__$6);\nvar args__$7 \x3d cljs.core._rest(args__$6);\nif((argc \x3d\x3d\x3d (6))){\nreturn (f.cljs$core$IFn$_invoke$arity$6 ? f.cljs$core$IFn$_invoke$arity$6(a267,b268,c269,d270,e271,f272) : f.call(null,a267,b268,c269,d270,e271,f272));\n} else {\nvar g273 \x3d cljs.core._first(args__$7);\nvar args__$8 \x3d cljs.core._rest(args__$7);\nif((argc \x3d\x3d\x3d (7))){\nreturn (f.cljs$core$IFn$_invoke$arity$7 ? f.cljs$core$IFn$_invoke$arity$7(a267,b268,c269,d270,e271,f272,g273) : f.call(null,a267,b268,c269,d270,e271,f272,g273));\n} else {\nvar h274 \x3d cljs.core._first(args__$8);\nvar args__$9 \x3d cljs.core._rest(args__$8);\nif((argc \x3d\x3d\x3d (8))){\nreturn (f.cljs$core$IFn$_invoke$arity$8 ? f.cljs$core$IFn$_invoke$arity$8(a267,b268,c269,d270,e271,f272,g273,h274) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274));\n} else {\nvar i275 \x3d cljs.core._first(args__$9);\nvar args__$10 \x3d cljs.core._rest(args__$9);\nif((argc \x3d\x3d\x3d (9))){\nreturn (f.cljs$core$IFn$_invoke$arity$9 ? f.cljs$core$IFn$_invoke$arity$9(a267,b268,c269,d270,e271,f272,g273,h274,i275) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275));\n} else {\nvar j276 \x3d cljs.core._first(args__$10);\nvar args__$11 \x3d cljs.core._rest(args__$10);\nif((argc \x3d\x3d\x3d (10))){\nreturn (f.cljs$core$IFn$_invoke$arity$10 ? f.cljs$core$IFn$_invoke$arity$10(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276));\n} else {\nvar k277 \x3d cljs.core._first(args__$11);\nvar args__$12 \x3d cljs.core._rest(args__$11);\nif((argc \x3d\x3d\x3d (11))){\nreturn (f.cljs$core$IFn$_invoke$arity$11 ? f.cljs$core$IFn$_invoke$arity$11(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277));\n} else {\nvar l278 \x3d cljs.core._first(args__$12);\nvar args__$13 \x3d cljs.core._rest(args__$12);\nif((argc \x3d\x3d\x3d (12))){\nreturn (f.cljs$core$IFn$_invoke$arity$12 ? f.cljs$core$IFn$_invoke$arity$12(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278));\n} else {\nvar m279 \x3d cljs.core._first(args__$13);\nvar args__$14 \x3d cljs.core._rest(args__$13);\nif((argc \x3d\x3d\x3d (13))){\nreturn (f.cljs$core$IFn$_invoke$arity$13 ? f.cljs$core$IFn$_invoke$arity$13(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279));\n} else {\nvar n280 \x3d cljs.core._first(args__$14);\nvar args__$15 \x3d cljs.core._rest(args__$14);\nif((argc \x3d\x3d\x3d (14))){\nreturn (f.cljs$core$IFn$_invoke$arity$14 ? f.cljs$core$IFn$_invoke$arity$14(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280));\n} else {\nvar o281 \x3d cljs.core._first(args__$15);\nvar args__$16 \x3d cljs.core._rest(args__$15);\nif((argc \x3d\x3d\x3d (15))){\nreturn (f.cljs$core$IFn$_invoke$arity$15 ? f.cljs$core$IFn$_invoke$arity$15(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281));\n} else {\nvar p282 \x3d cljs.core._first(args__$16);\nvar args__$17 \x3d cljs.core._rest(args__$16);\nif((argc \x3d\x3d\x3d (16))){\nreturn (f.cljs$core$IFn$_invoke$arity$16 ? f.cljs$core$IFn$_invoke$arity$16(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282));\n} else {\nvar q283 \x3d cljs.core._first(args__$17);\nvar args__$18 \x3d cljs.core._rest(args__$17);\nif((argc \x3d\x3d\x3d (17))){\nreturn (f.cljs$core$IFn$_invoke$arity$17 ? f.cljs$core$IFn$_invoke$arity$17(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283));\n} else {\nvar r284 \x3d cljs.core._first(args__$18);\nvar args__$19 \x3d cljs.core._rest(args__$18);\nif((argc \x3d\x3d\x3d (18))){\nreturn (f.cljs$core$IFn$_invoke$arity$18 ? f.cljs$core$IFn$_invoke$arity$18(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283,r284) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283,r284));\n} else {\nvar s285 \x3d cljs.core._first(args__$19);\nvar args__$20 \x3d cljs.core._rest(args__$19);\nif((argc \x3d\x3d\x3d (19))){\nreturn (f.cljs$core$IFn$_invoke$arity$19 ? f.cljs$core$IFn$_invoke$arity$19(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283,r284,s285) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283,r284,s285));\n} else {\nvar t286 \x3d cljs.core._first(args__$20);\nvar args__$21 \x3d cljs.core._rest(args__$20);\nif((argc \x3d\x3d\x3d (20))){\nreturn (f.cljs$core$IFn$_invoke$arity$20 ? f.cljs$core$IFn$_invoke$arity$20(a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283,r284,s285,t286) : f.call(null,a267,b268,c269,d270,e271,f272,g273,h274,i275,j276,k277,l278,m279,n280,o281,p282,q283,r284,s285,t286));\n} else {\nthrow (new Error(\x22Only up to 20 arguments supported on functions\x22));\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\n\n/**\n * Internal. DO NOT USE! Next without the nil? check.\n */\ncljs.core.next_STAR_ \x3d (function cljs$core$next_STAR_(coll){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (128))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$INext$))))?true:false):false)){\nreturn coll.cljs$core$INext$_next$arity$1(null);\n} else {\nreturn cljs.core.seq(cljs.core.rest(coll));\n}\n});\n/**\n * Internal. DO NOT USE!\n *   Assumes args was already called with seq beforehand!\n */\ncljs.core.apply_to_simple \x3d (function cljs$core$apply_to_simple(var_args){\nvar G__38717 \x3d arguments.length;\nswitch (G__38717) {\ncase 2:\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,args){\nif((args \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$0){\nreturn f.cljs$core$IFn$_invoke$arity$0();\n} else {\nreturn f.call(f);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$3(f,cljs.core._first(args),cljs.core.next_STAR_(args));\n}\n}));\n\n(cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,a0,args){\nif((args \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$1){\nreturn f.cljs$core$IFn$_invoke$arity$1(a0);\n} else {\nreturn f.call(f,a0);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$4(f,a0,cljs.core._first(args),cljs.core.next_STAR_(args));\n}\n}));\n\n(cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$4 \x3d (function (f,a0,a1,args){\nif((args \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$2){\nreturn f.cljs$core$IFn$_invoke$arity$2(a0,a1);\n} else {\nreturn f.call(f,a0,a1);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$5(f,a0,a1,cljs.core._first(args),cljs.core.next_STAR_(args));\n}\n}));\n\n(cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$5 \x3d (function (f,a0,a1,a2,args){\nif((args \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$3){\nreturn f.cljs$core$IFn$_invoke$arity$3(a0,a1,a2);\n} else {\nreturn f.call(f,a0,a1,a2);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$6(f,a0,a1,a2,cljs.core._first(args),cljs.core.next_STAR_(args));\n}\n}));\n\n(cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$6 \x3d (function (f,a0,a1,a2,a3,args){\nif((args \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$4){\nreturn f.cljs$core$IFn$_invoke$arity$4(a0,a1,a2,a3);\n} else {\nreturn f.call(f,a0,a1,a2,a3);\n}\n} else {\nvar a4 \x3d cljs.core._first(args);\nvar next_4 \x3d cljs.core.next(args);\nif((next_4 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$5){\nreturn f.cljs$core$IFn$_invoke$arity$5(a0,a1,a2,a3,a4);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4);\n}\n} else {\nvar a5 \x3d cljs.core._first(next_4);\nvar next_5 \x3d cljs.core.next(next_4);\nif((next_5 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$6){\nreturn f.cljs$core$IFn$_invoke$arity$6(a0,a1,a2,a3,a4,a5);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5);\n}\n} else {\nvar a6 \x3d cljs.core._first(next_5);\nvar next_6 \x3d cljs.core.next(next_5);\nif((next_6 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$7){\nreturn f.cljs$core$IFn$_invoke$arity$7(a0,a1,a2,a3,a4,a5,a6);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6);\n}\n} else {\nvar a7 \x3d cljs.core._first(next_6);\nvar next_7 \x3d cljs.core.next(next_6);\nif((next_7 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$8){\nreturn f.cljs$core$IFn$_invoke$arity$8(a0,a1,a2,a3,a4,a5,a6,a7);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7);\n}\n} else {\nvar a8 \x3d cljs.core._first(next_7);\nvar next_8 \x3d cljs.core.next(next_7);\nif((next_8 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$9){\nreturn f.cljs$core$IFn$_invoke$arity$9(a0,a1,a2,a3,a4,a5,a6,a7,a8);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8);\n}\n} else {\nvar a9 \x3d cljs.core._first(next_8);\nvar next_9 \x3d cljs.core.next(next_8);\nif((next_9 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$10){\nreturn f.cljs$core$IFn$_invoke$arity$10(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9);\n}\n} else {\nvar a10 \x3d cljs.core._first(next_9);\nvar next_10 \x3d cljs.core.next(next_9);\nif((next_10 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$11){\nreturn f.cljs$core$IFn$_invoke$arity$11(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10);\n}\n} else {\nvar a11 \x3d cljs.core._first(next_10);\nvar next_11 \x3d cljs.core.next(next_10);\nif((next_11 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$12){\nreturn f.cljs$core$IFn$_invoke$arity$12(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);\n}\n} else {\nvar a12 \x3d cljs.core._first(next_11);\nvar next_12 \x3d cljs.core.next(next_11);\nif((next_12 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$13){\nreturn f.cljs$core$IFn$_invoke$arity$13(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12);\n}\n} else {\nvar a13 \x3d cljs.core._first(next_12);\nvar next_13 \x3d cljs.core.next(next_12);\nif((next_13 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$14){\nreturn f.cljs$core$IFn$_invoke$arity$14(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13);\n}\n} else {\nvar a14 \x3d cljs.core._first(next_13);\nvar next_14 \x3d cljs.core.next(next_13);\nif((next_14 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$15){\nreturn f.cljs$core$IFn$_invoke$arity$15(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14);\n}\n} else {\nvar a15 \x3d cljs.core._first(next_14);\nvar next_15 \x3d cljs.core.next(next_14);\nif((next_15 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$16){\nreturn f.cljs$core$IFn$_invoke$arity$16(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15);\n}\n} else {\nvar a16 \x3d cljs.core._first(next_15);\nvar next_16 \x3d cljs.core.next(next_15);\nif((next_16 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$17){\nreturn f.cljs$core$IFn$_invoke$arity$17(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16);\n}\n} else {\nvar a17 \x3d cljs.core._first(next_16);\nvar next_17 \x3d cljs.core.next(next_16);\nif((next_17 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$18){\nreturn f.cljs$core$IFn$_invoke$arity$18(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17);\n}\n} else {\nvar a18 \x3d cljs.core._first(next_17);\nvar next_18 \x3d cljs.core.next(next_17);\nif((next_18 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$19){\nreturn f.cljs$core$IFn$_invoke$arity$19(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18);\n}\n} else {\nvar a19 \x3d cljs.core._first(next_18);\nvar next_19 \x3d cljs.core.next(next_18);\nif((next_19 \x3d\x3d null)){\nif(f.cljs$core$IFn$_invoke$arity$20){\nreturn f.cljs$core$IFn$_invoke$arity$20(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19);\n} else {\nreturn f.call(f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19);\n}\n} else {\nvar arr__4696__auto__ \x3d [a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19];\nvar s__4697__auto___43111 \x3d next_19;\nwhile(true){\nif(s__4697__auto___43111){\narr__4696__auto__.push(cljs.core._first(s__4697__auto___43111));\n\nvar G__43112 \x3d cljs.core.next(s__4697__auto___43111);\ns__4697__auto___43111 \x3d G__43112;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn f.apply(f,arr__4696__auto__);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}));\n\n(cljs.core.apply_to_simple.cljs$lang$maxFixedArity \x3d 6);\n\n/**\n * Applies fn f to the argument list formed by prepending intervening arguments to args.\n */\ncljs.core.apply \x3d (function cljs$core$apply(var_args){\nvar G__38725 \x3d arguments.length;\nswitch (G__38725) {\ncase 2:\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43124 \x3d arguments.length;\nvar i__4772__auto___43125 \x3d (0);\nwhile(true){\nif((i__4772__auto___43125 \x3c len__4771__auto___43124)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43125]));\n\nvar G__43127 \x3d (i__4772__auto___43125 + (1));\ni__4772__auto___43125 \x3d G__43127;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((5)),(0),null));\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.apply.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,args){\nif(f.cljs$lang$applyTo){\nvar fixed_arity \x3d f.cljs$lang$maxFixedArity;\nvar bc \x3d cljs.core.bounded_count((fixed_arity + (1)),args);\nif((bc \x3c\x3d fixed_arity)){\nreturn cljs.core.apply_to(f,bc,args);\n} else {\nreturn f.cljs$lang$applyTo(args);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$2(f,cljs.core.seq(args));\n}\n}));\n\n(cljs.core.apply.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,x,args){\nif(f.cljs$lang$applyTo){\nvar arglist \x3d cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2(x,args);\nvar fixed_arity \x3d f.cljs$lang$maxFixedArity;\nvar bc \x3d (cljs.core.bounded_count(fixed_arity,args) + (1));\nif((bc \x3c\x3d fixed_arity)){\nreturn cljs.core.apply_to(f,bc,arglist);\n} else {\nreturn f.cljs$lang$applyTo(arglist);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$3(f,x,cljs.core.seq(args));\n}\n}));\n\n(cljs.core.apply.cljs$core$IFn$_invoke$arity$4 \x3d (function (f,x,y,args){\nif(f.cljs$lang$applyTo){\nvar arglist \x3d cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3(x,y,args);\nvar fixed_arity \x3d f.cljs$lang$maxFixedArity;\nvar bc \x3d ((2) + cljs.core.bounded_count((fixed_arity - (1)),args));\nif((bc \x3c\x3d fixed_arity)){\nreturn cljs.core.apply_to(f,bc,arglist);\n} else {\nreturn f.cljs$lang$applyTo(arglist);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$4(f,x,y,cljs.core.seq(args));\n}\n}));\n\n(cljs.core.apply.cljs$core$IFn$_invoke$arity$5 \x3d (function (f,x,y,z,args){\nif(f.cljs$lang$applyTo){\nvar arglist \x3d cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4(x,y,z,args);\nvar fixed_arity \x3d f.cljs$lang$maxFixedArity;\nvar bc \x3d ((3) + cljs.core.bounded_count((fixed_arity - (2)),args));\nif((bc \x3c\x3d fixed_arity)){\nreturn cljs.core.apply_to(f,bc,arglist);\n} else {\nreturn f.cljs$lang$applyTo(arglist);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$5(f,x,y,z,cljs.core.seq(args));\n}\n}));\n\n(cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,a,b,c,d,args){\nif(f.cljs$lang$applyTo){\nvar spread_args \x3d cljs.core.spread(args);\nvar arglist \x3d cljs.core.cons(a,cljs.core.cons(b,cljs.core.cons(c,cljs.core.cons(d,spread_args))));\nvar fixed_arity \x3d f.cljs$lang$maxFixedArity;\nvar bc \x3d ((4) + cljs.core.bounded_count((fixed_arity - (3)),spread_args));\nif((bc \x3c\x3d fixed_arity)){\nreturn cljs.core.apply_to(f,bc,arglist);\n} else {\nreturn f.cljs$lang$applyTo(arglist);\n}\n} else {\nreturn cljs.core.apply_to_simple.cljs$core$IFn$_invoke$arity$6(f,a,b,c,d,cljs.core.spread(args));\n}\n}));\n\n/** @this {Function} */\n(cljs.core.apply.cljs$lang$applyTo \x3d (function (seq38719){\nvar G__38720 \x3d cljs.core.first(seq38719);\nvar seq38719__$1 \x3d cljs.core.next(seq38719);\nvar G__38721 \x3d cljs.core.first(seq38719__$1);\nvar seq38719__$2 \x3d cljs.core.next(seq38719__$1);\nvar G__38722 \x3d cljs.core.first(seq38719__$2);\nvar seq38719__$3 \x3d cljs.core.next(seq38719__$2);\nvar G__38723 \x3d cljs.core.first(seq38719__$3);\nvar seq38719__$4 \x3d cljs.core.next(seq38719__$3);\nvar G__38724 \x3d cljs.core.first(seq38719__$4);\nvar seq38719__$5 \x3d cljs.core.next(seq38719__$4);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38720,G__38721,G__38722,G__38723,G__38724,seq38719__$5);\n}));\n\n(cljs.core.apply.cljs$lang$maxFixedArity \x3d (5));\n\ncljs.core.__destructure_map \x3d (function cljs$core$__destructure_map(x){\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (64))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ISeq$))))?true:false):false)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,x);\n} else {\nreturn x;\n}\n});\n/**\n * Returns an object of the same type and value as obj, with\n *   (apply f (meta obj) args) as its metadata.\n */\ncljs.core.vary_meta \x3d (function cljs$core$vary_meta(var_args){\nvar G__38735 \x3d arguments.length;\nswitch (G__38735) {\ncase 2:\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43153 \x3d arguments.length;\nvar i__4772__auto___43154 \x3d (0);\nwhile(true){\nif((i__4772__auto___43154 \x3c len__4771__auto___43153)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43154]));\n\nvar G__43155 \x3d (i__4772__auto___43154 + (1));\ni__4772__auto___43154 \x3d G__43155;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((6)),(0),null));\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2 \x3d (function (obj,f){\nreturn cljs.core.with_meta(obj,(function (){var G__38736 \x3d cljs.core.meta(obj);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38736) : f.call(null,G__38736));\n})());\n}));\n\n(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$3 \x3d (function (obj,f,a){\nreturn cljs.core.with_meta(obj,(function (){var G__38737 \x3d cljs.core.meta(obj);\nvar G__38738 \x3d a;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38737,G__38738) : f.call(null,G__38737,G__38738));\n})());\n}));\n\n(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$4 \x3d (function (obj,f,a,b){\nreturn cljs.core.with_meta(obj,(function (){var G__38739 \x3d cljs.core.meta(obj);\nvar G__38740 \x3d a;\nvar G__38741 \x3d b;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38739,G__38740,G__38741) : f.call(null,G__38739,G__38740,G__38741));\n})());\n}));\n\n(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$5 \x3d (function (obj,f,a,b,c){\nreturn cljs.core.with_meta(obj,(function (){var G__38742 \x3d cljs.core.meta(obj);\nvar G__38743 \x3d a;\nvar G__38744 \x3d b;\nvar G__38745 \x3d c;\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(G__38742,G__38743,G__38744,G__38745) : f.call(null,G__38742,G__38743,G__38744,G__38745));\n})());\n}));\n\n(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$6 \x3d (function (obj,f,a,b,c,d){\nreturn cljs.core.with_meta(obj,(function (){var G__38746 \x3d cljs.core.meta(obj);\nvar G__38747 \x3d a;\nvar G__38748 \x3d b;\nvar G__38749 \x3d c;\nvar G__38750 \x3d d;\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(G__38746,G__38747,G__38748,G__38749,G__38750) : f.call(null,G__38746,G__38747,G__38748,G__38749,G__38750));\n})());\n}));\n\n(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$variadic \x3d (function (obj,f,a,b,c,d,args){\nreturn cljs.core.with_meta(obj,cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(f,cljs.core.meta(obj),a,b,c,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([d,args], 0)));\n}));\n\n/** @this {Function} */\n(cljs.core.vary_meta.cljs$lang$applyTo \x3d (function (seq38728){\nvar G__38729 \x3d cljs.core.first(seq38728);\nvar seq38728__$1 \x3d cljs.core.next(seq38728);\nvar G__38730 \x3d cljs.core.first(seq38728__$1);\nvar seq38728__$2 \x3d cljs.core.next(seq38728__$1);\nvar G__38731 \x3d cljs.core.first(seq38728__$2);\nvar seq38728__$3 \x3d cljs.core.next(seq38728__$2);\nvar G__38732 \x3d cljs.core.first(seq38728__$3);\nvar seq38728__$4 \x3d cljs.core.next(seq38728__$3);\nvar G__38733 \x3d cljs.core.first(seq38728__$4);\nvar seq38728__$5 \x3d cljs.core.next(seq38728__$4);\nvar G__38734 \x3d cljs.core.first(seq38728__$5);\nvar seq38728__$6 \x3d cljs.core.next(seq38728__$5);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38729,G__38730,G__38731,G__38732,G__38733,G__38734,seq38728__$6);\n}));\n\n(cljs.core.vary_meta.cljs$lang$maxFixedArity \x3d (6));\n\n/**\n * Same as (not (\x3d obj1 obj2))\n */\ncljs.core.not_EQ_ \x3d (function cljs$core$not_EQ_(var_args){\nvar G__38755 \x3d arguments.length;\nswitch (G__38755) {\ncase 1:\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43171 \x3d arguments.length;\nvar i__4772__auto___43172 \x3d (0);\nwhile(true){\nif((i__4772__auto___43172 \x3c len__4771__auto___43171)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43172]));\n\nvar G__43173 \x3d (i__4772__auto___43172 + (1));\ni__4772__auto___43172 \x3d G__43173;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn false;\n}));\n\n(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,y){\nreturn (!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,y)));\n}));\n\n(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,y,more){\nreturn cljs.core.not(cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core._EQ_,x,y,more));\n}));\n\n/** @this {Function} */\n(cljs.core.not_EQ_.cljs$lang$applyTo \x3d (function (seq38752){\nvar G__38753 \x3d cljs.core.first(seq38752);\nvar seq38752__$1 \x3d cljs.core.next(seq38752);\nvar G__38754 \x3d cljs.core.first(seq38752__$1);\nvar seq38752__$2 \x3d cljs.core.next(seq38752__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38753,G__38754,seq38752__$2);\n}));\n\n(cljs.core.not_EQ_.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * If coll is empty, returns nil, else coll\n */\ncljs.core.not_empty \x3d (function cljs$core$not_empty(coll){\nif(cljs.core.seq(coll)){\nreturn coll;\n} else {\nreturn null;\n}\n});\ncljs.core.nil_iter \x3d (function cljs$core$nil_iter(){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.t_cljs$core38756 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.t_cljs$core38756 \x3d (function (meta38757){\nthis.meta38757 \x3d meta38757;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.t_cljs$core38756.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_38758,meta38757__$1){\nvar self__ \x3d this;\nvar _38758__$1 \x3d this;\nreturn (new cljs.core.t_cljs$core38756(meta38757__$1));\n}));\n\n(cljs.core.t_cljs$core38756.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_38758){\nvar self__ \x3d this;\nvar _38758__$1 \x3d this;\nreturn self__.meta38757;\n}));\n\n(cljs.core.t_cljs$core38756.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn false;\n}));\n\n(cljs.core.t_cljs$core38756.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22No such element\x22));\n}));\n\n(cljs.core.t_cljs$core38756.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.t_cljs$core38756.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta38757\x22,\x22meta38757\x22,1669608638,null)], null);\n}));\n\n(cljs.core.t_cljs$core38756.cljs$lang$type \x3d true);\n\n(cljs.core.t_cljs$core38756.cljs$lang$ctorStr \x3d \x22cljs.core/t_cljs$core38756\x22);\n\n(cljs.core.t_cljs$core38756.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/t_cljs$core38756\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/t_cljs$core38756.\n */\ncljs.core.__GT_t_cljs$core38756 \x3d (function cljs$core$nil_iter_$___GT_t_cljs$core38756(meta38757){\nreturn (new cljs.core.t_cljs$core38756(meta38757));\n});\n\n}\n\nreturn (new cljs.core.t_cljs$core38756(cljs.core.PersistentArrayMap.EMPTY));\n});\n\n/**\n* @constructor\n*/\ncljs.core.StringIter \x3d (function (s,i){\nthis.s \x3d s;\nthis.i \x3d i;\n});\n(cljs.core.StringIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.i \x3c self__.s.length);\n}));\n\n(cljs.core.StringIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d self__.s.charAt(self__.i);\n(self__.i \x3d (self__.i + (1)));\n\nreturn ret;\n}));\n\n(cljs.core.StringIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.StringIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.StringIter.cljs$lang$type \x3d true);\n\n(cljs.core.StringIter.cljs$lang$ctorStr \x3d \x22cljs.core/StringIter\x22);\n\n(cljs.core.StringIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/StringIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/StringIter.\n */\ncljs.core.__GT_StringIter \x3d (function cljs$core$__GT_StringIter(s,i){\nreturn (new cljs.core.StringIter(s,i));\n});\n\ncljs.core.string_iter \x3d (function cljs$core$string_iter(x){\nreturn (new cljs.core.StringIter(x,(0)));\n});\n\n/**\n* @constructor\n*/\ncljs.core.ArrayIter \x3d (function (arr,i){\nthis.arr \x3d arr;\nthis.i \x3d i;\n});\n(cljs.core.ArrayIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.i \x3c self__.arr.length);\n}));\n\n(cljs.core.ArrayIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d (self__.arr[self__.i]);\n(self__.i \x3d (self__.i + (1)));\n\nreturn ret;\n}));\n\n(cljs.core.ArrayIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.ArrayIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ArrayIter.cljs$lang$type \x3d true);\n\n(cljs.core.ArrayIter.cljs$lang$ctorStr \x3d \x22cljs.core/ArrayIter\x22);\n\n(cljs.core.ArrayIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ArrayIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ArrayIter.\n */\ncljs.core.__GT_ArrayIter \x3d (function cljs$core$__GT_ArrayIter(arr,i){\nreturn (new cljs.core.ArrayIter(arr,i));\n});\n\ncljs.core.array_iter \x3d (function cljs$core$array_iter(x){\nreturn (new cljs.core.ArrayIter(x,(0)));\n});\ncljs.core.INIT \x3d ({});\ncljs.core.START \x3d ({});\n\n/**\n* @constructor\n*/\ncljs.core.SeqIter \x3d (function (_seq,_next){\nthis._seq \x3d _seq;\nthis._next \x3d _next;\n});\n(cljs.core.SeqIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((self__._seq \x3d\x3d\x3d cljs.core.INIT)){\n(self__._seq \x3d cljs.core.START);\n\n(self__._next \x3d cljs.core.seq(self__._next));\n} else {\nif((self__._seq \x3d\x3d\x3d self__._next)){\n(self__._next \x3d cljs.core.next(self__._seq));\n} else {\n}\n}\n\nreturn (!((self__._next \x3d\x3d null)));\n}));\n\n(cljs.core.SeqIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((!(this$.hasNext()))){\nthrow (new Error(\x22No such element\x22));\n} else {\n(self__._seq \x3d self__._next);\n\nreturn cljs.core.first(self__._next);\n}\n}));\n\n(cljs.core.SeqIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.SeqIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22_seq\x22,\x22_seq\x22,-449557847,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_next\x22,\x22_next\x22,101877036,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.SeqIter.cljs$lang$type \x3d true);\n\n(cljs.core.SeqIter.cljs$lang$ctorStr \x3d \x22cljs.core/SeqIter\x22);\n\n(cljs.core.SeqIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/SeqIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/SeqIter.\n */\ncljs.core.__GT_SeqIter \x3d (function cljs$core$__GT_SeqIter(_seq,_next){\nreturn (new cljs.core.SeqIter(_seq,_next));\n});\n\ncljs.core.seq_iter \x3d (function cljs$core$seq_iter(coll){\nreturn (new cljs.core.SeqIter(cljs.core.INIT,coll));\n});\ncljs.core.iter \x3d (function cljs$core$iter(coll){\nif(cljs.core.iterable_QMARK_(coll)){\nreturn cljs.core._iterator(coll);\n} else {\nif((coll \x3d\x3d null)){\nreturn cljs.core.nil_iter();\n} else {\nif(typeof coll \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.string_iter(coll);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nreturn cljs.core.array_iter(coll);\n} else {\nif(cljs.core.seqable_QMARK_(coll)){\nreturn cljs.core.seq_iter(coll);\n} else {\nthrow (new Error([\x22Cannot create iterator from \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(coll)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.Many \x3d (function (vals){\nthis.vals \x3d vals;\n});\n(cljs.core.Many.prototype.add \x3d (function (o){\nvar self__ \x3d this;\nvar this$ \x3d this;\nself__.vals.push(o);\n\nreturn this$;\n}));\n\n(cljs.core.Many.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn self__.vals.shift();\n}));\n\n(cljs.core.Many.prototype.isEmpty \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn (self__.vals.length \x3d\x3d\x3d (0));\n}));\n\n(cljs.core.Many.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn [\x22Many: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.vals)].join(\x27\x27);\n}));\n\n(cljs.core.Many.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22vals\x22,\x22vals\x22,-1886377036,null)], null);\n}));\n\n(cljs.core.Many.cljs$lang$type \x3d true);\n\n(cljs.core.Many.cljs$lang$ctorStr \x3d \x22cljs.core/Many\x22);\n\n(cljs.core.Many.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Many\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Many.\n */\ncljs.core.__GT_Many \x3d (function cljs$core$__GT_Many(vals){\nreturn (new cljs.core.Many(vals));\n});\n\ncljs.core.NONE \x3d ({});\n\n/**\n* @constructor\n*/\ncljs.core.Single \x3d (function (val){\nthis.val \x3d val;\n});\n(cljs.core.Single.prototype.add \x3d (function (o){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((self__.val \x3d\x3d\x3d cljs.core.NONE)){\n(self__.val \x3d o);\n\nreturn this$;\n} else {\nreturn (new cljs.core.Many([self__.val,o]));\n}\n}));\n\n(cljs.core.Single.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((self__.val \x3d\x3d\x3d cljs.core.NONE)){\nthrow (new Error(\x22Removing object from empty buffer\x22));\n} else {\nvar ret \x3d self__.val;\n(self__.val \x3d cljs.core.NONE);\n\nreturn ret;\n}\n}));\n\n(cljs.core.Single.prototype.isEmpty \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn (self__.val \x3d\x3d\x3d cljs.core.NONE);\n}));\n\n(cljs.core.Single.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn [\x22Single: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.val)].join(\x27\x27);\n}));\n\n(cljs.core.Single.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Single.cljs$lang$type \x3d true);\n\n(cljs.core.Single.cljs$lang$ctorStr \x3d \x22cljs.core/Single\x22);\n\n(cljs.core.Single.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Single\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Single.\n */\ncljs.core.__GT_Single \x3d (function cljs$core$__GT_Single(val){\nreturn (new cljs.core.Single(val));\n});\n\n\n/**\n* @constructor\n*/\ncljs.core.Empty \x3d (function (){\n});\n(cljs.core.Empty.prototype.add \x3d (function (o){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn (new cljs.core.Single(o));\n}));\n\n(cljs.core.Empty.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nthrow (new Error(\x22Removing object from empty buffer\x22));\n}));\n\n(cljs.core.Empty.prototype.isEmpty \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(cljs.core.Empty.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn \x22Empty\x22;\n}));\n\n(cljs.core.Empty.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cljs.core.Empty.cljs$lang$type \x3d true);\n\n(cljs.core.Empty.cljs$lang$ctorStr \x3d \x22cljs.core/Empty\x22);\n\n(cljs.core.Empty.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Empty\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Empty.\n */\ncljs.core.__GT_Empty \x3d (function cljs$core$__GT_Empty(){\nreturn (new cljs.core.Empty());\n});\n\ncljs.core.EMPTY \x3d (new cljs.core.Empty());\n\n/**\n* @constructor\n*/\ncljs.core.MultiIterator \x3d (function (iters){\nthis.iters \x3d iters;\n});\n(cljs.core.MultiIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar iters__$1 \x3d cljs.core.seq(self__.iters);\nwhile(true){\nif((!((iters__$1 \x3d\x3d null)))){\nvar iter \x3d cljs.core.first(iters__$1);\nif((!(iter.hasNext()))){\nreturn false;\n} else {\nvar G__43218 \x3d cljs.core.next(iters__$1);\niters__$1 \x3d G__43218;\ncontinue;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n}));\n\n(cljs.core.MultiIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar nexts \x3d [];\nvar n__4648__auto___43225 \x3d self__.iters.length;\nvar i_43226 \x3d (0);\nwhile(true){\nif((i_43226 \x3c n__4648__auto___43225)){\n(nexts[i_43226] \x3d (self__.iters[i_43226]).next());\n\nvar G__43228 \x3d (i_43226 + (1));\ni_43226 \x3d G__43228;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(nexts,(0));\n}));\n\n(cljs.core.MultiIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iters\x22,\x22iters\x22,719353031,null)], null);\n}));\n\n(cljs.core.MultiIterator.cljs$lang$type \x3d true);\n\n(cljs.core.MultiIterator.cljs$lang$ctorStr \x3d \x22cljs.core/MultiIterator\x22);\n\n(cljs.core.MultiIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/MultiIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/MultiIterator.\n */\ncljs.core.__GT_MultiIterator \x3d (function cljs$core$__GT_MultiIterator(iters){\nreturn (new cljs.core.MultiIterator(iters));\n});\n\ncljs.core.chunkIteratorSeq \x3d (function cljs$core$chunkIteratorSeq(iter){\nreturn (new cljs.core.LazySeq(null,(function (){\nif(iter.hasNext()){\nvar arr \x3d [];\nvar n \x3d (0);\nwhile(true){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d iter.hasNext();\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (n \x3c (32));\n} else {\nreturn and__4149__auto__;\n}\n})())){\n(arr[n] \x3d iter.next());\n\nvar G__43242 \x3d (n + (1));\nn \x3d G__43242;\ncontinue;\n} else {\nreturn cljs.core.chunk_cons(cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$3(arr,(0),n),(cljs.core.chunkIteratorSeq.cljs$core$IFn$_invoke$arity$1 ? cljs.core.chunkIteratorSeq.cljs$core$IFn$_invoke$arity$1(iter) : cljs.core.chunkIteratorSeq.call(null,iter)));\n}\nbreak;\n}\n} else {\nreturn null;\n}\n}),null,null));\n});\n\n/**\n* @constructor\n*/\ncljs.core.TransformerIterator \x3d (function (buffer,_next,completed,xf,sourceIter,multi){\nthis.buffer \x3d buffer;\nthis._next \x3d _next;\nthis.completed \x3d completed;\nthis.xf \x3d xf;\nthis.sourceIter \x3d sourceIter;\nthis.multi \x3d multi;\n});\n(cljs.core.TransformerIterator.prototype.step \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((!((self__._next \x3d\x3d\x3d cljs.core.NONE)))){\nreturn true;\n} else {\nwhile(true){\nif((self__._next \x3d\x3d\x3d cljs.core.NONE)){\nif(self__.buffer.isEmpty()){\nif(self__.completed){\nreturn false;\n} else {\nif(self__.sourceIter.hasNext()){\nvar iter \x3d ((self__.multi)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(self__.xf,cljs.core.cons(null,self__.sourceIter.next())):(function (){var G__38759 \x3d null;\nvar G__38760 \x3d self__.sourceIter.next();\nreturn (self__.xf.cljs$core$IFn$_invoke$arity$2 ? self__.xf.cljs$core$IFn$_invoke$arity$2(G__38759,G__38760) : self__.xf.call(null,G__38759,G__38760));\n})());\nif(cljs.core.reduced_QMARK_(iter)){\n(self__.xf.cljs$core$IFn$_invoke$arity$1 ? self__.xf.cljs$core$IFn$_invoke$arity$1(null) : self__.xf.call(null,null));\n\n(self__.completed \x3d true);\n} else {\n}\n\ncontinue;\n} else {\n(self__.xf.cljs$core$IFn$_invoke$arity$1 ? self__.xf.cljs$core$IFn$_invoke$arity$1(null) : self__.xf.call(null,null));\n\n(self__.completed \x3d true);\n\ncontinue;\n}\n}\n} else {\n(self__._next \x3d self__.buffer.remove());\n\ncontinue;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.TransformerIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.step();\n}));\n\n(cljs.core.TransformerIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif(this$.hasNext()){\nvar ret \x3d self__._next;\n(self__._next \x3d cljs.core.NONE);\n\nreturn ret;\n} else {\nthrow (new Error(\x22No such element\x22));\n}\n}));\n\n(cljs.core.TransformerIterator.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.TransformerIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22buffer\x22,\x22buffer\x22,-2037140571,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_next\x22,\x22_next\x22,101877036,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22completed\x22,\x22completed\x22,1154475024,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22xf\x22,\x22xf\x22,2042434515,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22sourceIter\x22,\x22sourceIter\x22,1068220306,null),new cljs.core.Symbol(null,\x22multi\x22,\x22multi\x22,1450238522,null)], null);\n}));\n\n(cljs.core.TransformerIterator.cljs$lang$type \x3d true);\n\n(cljs.core.TransformerIterator.cljs$lang$ctorStr \x3d \x22cljs.core/TransformerIterator\x22);\n\n(cljs.core.TransformerIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/TransformerIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/TransformerIterator.\n */\ncljs.core.__GT_TransformerIterator \x3d (function cljs$core$__GT_TransformerIterator(buffer,_next,completed,xf,sourceIter,multi){\nreturn (new cljs.core.TransformerIterator(buffer,_next,completed,xf,sourceIter,multi));\n});\n\ngoog.object.set(cljs.core.TransformerIterator.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.transformer_iterator \x3d (function cljs$core$transformer_iterator(xform,sourceIter,multi){\nvar iterator \x3d (new cljs.core.TransformerIterator(cljs.core.EMPTY,cljs.core.NONE,false,null,sourceIter,multi));\n(iterator.xf \x3d (function (){var G__38761 \x3d (function() {\nvar G__43257 \x3d null;\nvar G__43257__0 \x3d (function (){\nreturn null;\n});\nvar G__43257__1 \x3d (function (acc){\nreturn acc;\n});\nvar G__43257__2 \x3d (function (acc,o){\n(iterator.buffer \x3d iterator.buffer.add(o));\n\nreturn acc;\n});\nG__43257 \x3d function(acc,o){\nswitch(arguments.length){\ncase 0:\nreturn G__43257__0.call(this);\ncase 1:\nreturn G__43257__1.call(this,acc);\ncase 2:\nreturn G__43257__2.call(this,acc,o);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43257.cljs$core$IFn$_invoke$arity$0 \x3d G__43257__0;\nG__43257.cljs$core$IFn$_invoke$arity$1 \x3d G__43257__1;\nG__43257.cljs$core$IFn$_invoke$arity$2 \x3d G__43257__2;\nreturn G__43257;\n})()\n;\nreturn (xform.cljs$core$IFn$_invoke$arity$1 ? xform.cljs$core$IFn$_invoke$arity$1(G__38761) : xform.call(null,G__38761));\n})());\n\nreturn iterator;\n});\n(cljs.core.TransformerIterator.create \x3d (function (xform,source){\nreturn cljs.core.transformer_iterator(xform,source,false);\n}));\n(cljs.core.TransformerIterator.createMulti \x3d (function (xform,sources){\nreturn cljs.core.transformer_iterator(xform,(new cljs.core.MultiIterator(cljs.core.to_array(sources))),true);\n}));\n/**\n * Coerces coll to a (possibly empty) sequence, if it is not already\n *   one. Will not force a lazy seq. (sequence nil) yields (), When a\n *   transducer is supplied, returns a lazy sequence of applications of\n *   the transform to the items in coll(s), i.e. to the set of first\n *   items of each coll, followed by the set of second\n *   items in each coll, until any one of the colls is exhausted.  Any\n *   remaining items in other colls are ignored. The transform should accept\n *   number-of-colls arguments\n */\ncljs.core.sequence \x3d (function cljs$core$sequence(var_args){\nvar G__38766 \x3d arguments.length;\nswitch (G__38766) {\ncase 1:\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43262 \x3d arguments.length;\nvar i__4772__auto___43263 \x3d (0);\nwhile(true){\nif((i__4772__auto___43263 \x3c len__4771__auto___43262)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43263]));\n\nvar G__43264 \x3d (i__4772__auto___43263 + (1));\ni__4772__auto___43263 \x3d G__43264;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nif(cljs.core.seq_QMARK_(coll)){\nreturn coll;\n} else {\nvar or__4160__auto__ \x3d cljs.core.seq(coll);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}\n}));\n\n(cljs.core.sequence.cljs$core$IFn$_invoke$arity$2 \x3d (function (xform,coll){\nvar or__4160__auto__ \x3d cljs.core.chunkIteratorSeq(cljs.core.TransformerIterator.create(xform,cljs.core.iter(coll)));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.sequence.cljs$core$IFn$_invoke$arity$variadic \x3d (function (xform,coll,colls){\nvar or__4160__auto__ \x3d cljs.core.chunkIteratorSeq(cljs.core.TransformerIterator.createMulti(xform,(function (){var G__38769 \x3d cljs.core.iter;\nvar G__38770 \x3d cljs.core.cons(coll,colls);\nreturn (cljs.core.map.cljs$core$IFn$_invoke$arity$2 ? cljs.core.map.cljs$core$IFn$_invoke$arity$2(G__38769,G__38770) : cljs.core.map.call(null,G__38769,G__38770));\n})()));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n/** @this {Function} */\n(cljs.core.sequence.cljs$lang$applyTo \x3d (function (seq38763){\nvar G__38764 \x3d cljs.core.first(seq38763);\nvar seq38763__$1 \x3d cljs.core.next(seq38763);\nvar G__38765 \x3d cljs.core.first(seq38763__$1);\nvar seq38763__$2 \x3d cljs.core.next(seq38763__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38764,G__38765,seq38763__$2);\n}));\n\n(cljs.core.sequence.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns true if (pred x) is logical true for every x in coll, else\n *   false.\n */\ncljs.core.every_QMARK_ \x3d (function cljs$core$every_QMARK_(pred,coll){\nwhile(true){\nif((cljs.core.seq(coll) \x3d\x3d null)){\nreturn true;\n} else {\nif(cljs.core.truth_((function (){var G__38771 \x3d cljs.core.first(coll);\nreturn (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(G__38771) : pred.call(null,G__38771));\n})())){\nvar G__43295 \x3d pred;\nvar G__43296 \x3d cljs.core.next(coll);\npred \x3d G__43295;\ncoll \x3d G__43296;\ncontinue;\n} else {\nreturn false;\n\n}\n}\nbreak;\n}\n});\n/**\n * Returns false if (pred x) is logical true for every x in\n *   coll, else true.\n */\ncljs.core.not_every_QMARK_ \x3d (function cljs$core$not_every_QMARK_(pred,coll){\nreturn (!(cljs.core.every_QMARK_(pred,coll)));\n});\n/**\n * Returns the first logical true value of (pred x) for any x in coll,\n *   else nil.  One common idiom is to use a set as pred, for example\n *   this will return :fred if :fred is in the sequence, otherwise nil:\n *   (some #{:fred} coll)\n */\ncljs.core.some \x3d (function cljs$core$some(pred,coll){\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nvar or__4160__auto__ \x3d (function (){var G__38773 \x3d cljs.core.first(s);\nreturn (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(G__38773) : pred.call(null,G__38773));\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar G__43305 \x3d pred;\nvar G__43306 \x3d cljs.core.next(s);\npred \x3d G__43305;\ncoll \x3d G__43306;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\n/**\n * Returns false if (pred x) is logical true for any x in coll,\n *   else true.\n */\ncljs.core.not_any_QMARK_ \x3d (function cljs$core$not_any_QMARK_(pred,coll){\nreturn cljs.core.not(cljs.core.some(pred,coll));\n});\n/**\n * Returns true if n is even, throws an exception if n is not an integer\n */\ncljs.core.even_QMARK_ \x3d (function cljs$core$even_QMARK_(n){\nif(cljs.core.integer_QMARK_(n)){\nreturn ((n \x26 (1)) \x3d\x3d\x3d (0));\n} else {\nthrow (new Error([\x22Argument must be an integer: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n)].join(\x27\x27)));\n}\n});\n/**\n * Returns true if n is odd, throws an exception if n is not an integer\n */\ncljs.core.odd_QMARK_ \x3d (function cljs$core$odd_QMARK_(n){\nreturn (!(cljs.core.even_QMARK_(n)));\n});\n/**\n * Takes a fn f and returns a fn that takes the same arguments as f,\n *   has the same effects, if any, and returns the opposite truth value.\n */\ncljs.core.complement \x3d (function cljs$core$complement(f){\nreturn (function() {\nvar G__43311 \x3d null;\nvar G__43311__0 \x3d (function (){\nreturn cljs.core.not((f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null)));\n});\nvar G__43311__1 \x3d (function (x){\nreturn cljs.core.not((f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x)));\n});\nvar G__43311__2 \x3d (function (x,y){\nreturn cljs.core.not((f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y)));\n});\nvar G__43311__3 \x3d (function() { \nvar G__43319__delegate \x3d function (x,y,zs){\nreturn cljs.core.not(cljs.core.apply.cljs$core$IFn$_invoke$arity$4(f,x,y,zs));\n};\nvar G__43319 \x3d function (x,y,var_args){\nvar zs \x3d null;\nif (arguments.length \x3e 2) {\nvar G__43324__i \x3d 0, G__43324__a \x3d new Array(arguments.length -  2);\nwhile (G__43324__i \x3c G__43324__a.length) {G__43324__a[G__43324__i] \x3d arguments[G__43324__i + 2]; ++G__43324__i;}\n  zs \x3d new cljs.core.IndexedSeq(G__43324__a,0,null);\n} \nreturn G__43319__delegate.call(this,x,y,zs);};\nG__43319.cljs$lang$maxFixedArity \x3d 2;\nG__43319.cljs$lang$applyTo \x3d (function (arglist__43328){\nvar x \x3d cljs.core.first(arglist__43328);\narglist__43328 \x3d cljs.core.next(arglist__43328);\nvar y \x3d cljs.core.first(arglist__43328);\nvar zs \x3d cljs.core.rest(arglist__43328);\nreturn G__43319__delegate(x,y,zs);\n});\nG__43319.cljs$core$IFn$_invoke$arity$variadic \x3d G__43319__delegate;\nreturn G__43319;\n})()\n;\nG__43311 \x3d function(x,y,var_args){\nvar zs \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__43311__0.call(this);\ncase 1:\nreturn G__43311__1.call(this,x);\ncase 2:\nreturn G__43311__2.call(this,x,y);\ndefault:\nvar G__43343 \x3d null;\nif (arguments.length \x3e 2) {\nvar G__43348__i \x3d 0, G__43348__a \x3d new Array(arguments.length -  2);\nwhile (G__43348__i \x3c G__43348__a.length) {G__43348__a[G__43348__i] \x3d arguments[G__43348__i + 2]; ++G__43348__i;}\nG__43343 \x3d new cljs.core.IndexedSeq(G__43348__a,0,null);\n}\nreturn G__43311__3.cljs$core$IFn$_invoke$arity$variadic(x,y, G__43343);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43311.cljs$lang$maxFixedArity \x3d 2;\nG__43311.cljs$lang$applyTo \x3d G__43311__3.cljs$lang$applyTo;\nG__43311.cljs$core$IFn$_invoke$arity$0 \x3d G__43311__0;\nG__43311.cljs$core$IFn$_invoke$arity$1 \x3d G__43311__1;\nG__43311.cljs$core$IFn$_invoke$arity$2 \x3d G__43311__2;\nG__43311.cljs$core$IFn$_invoke$arity$variadic \x3d G__43311__3.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43311;\n})()\n});\n/**\n * Returns a function that takes any number of arguments and returns x.\n */\ncljs.core.constantly \x3d (function cljs$core$constantly(x){\nreturn (function() { \nvar G__43357__delegate \x3d function (args){\nreturn x;\n};\nvar G__43357 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__43358__i \x3d 0, G__43358__a \x3d new Array(arguments.length -  0);\nwhile (G__43358__i \x3c G__43358__a.length) {G__43358__a[G__43358__i] \x3d arguments[G__43358__i + 0]; ++G__43358__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43358__a,0,null);\n} \nreturn G__43357__delegate.call(this,args);};\nG__43357.cljs$lang$maxFixedArity \x3d 0;\nG__43357.cljs$lang$applyTo \x3d (function (arglist__43359){\nvar args \x3d cljs.core.seq(arglist__43359);\nreturn G__43357__delegate(args);\n});\nG__43357.cljs$core$IFn$_invoke$arity$variadic \x3d G__43357__delegate;\nreturn G__43357;\n})()\n;\n});\n/**\n * Takes a set of functions and returns a fn that is the composition\n *   of those fns.  The returned fn takes a variable number of args,\n *   applies the rightmost of fns to the args, the next\n *   fn (right-to-left) to the result, etc.\n */\ncljs.core.comp \x3d (function cljs$core$comp(var_args){\nvar G__38779 \x3d arguments.length;\nswitch (G__38779) {\ncase 0:\nreturn cljs.core.comp.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.comp.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.comp.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.comp.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43378 \x3d arguments.length;\nvar i__4772__auto___43383 \x3d (0);\nwhile(true){\nif((i__4772__auto___43383 \x3c len__4771__auto___43378)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43383]));\n\nvar G__43384 \x3d (i__4772__auto___43383 + (1));\ni__4772__auto___43383 \x3d G__43384;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.comp.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.comp.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.identity;\n}));\n\n(cljs.core.comp.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn f;\n}));\n\n(cljs.core.comp.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,g){\nreturn (function() {\nvar G__43387 \x3d null;\nvar G__43387__0 \x3d (function (){\nvar G__38780 \x3d (g.cljs$core$IFn$_invoke$arity$0 ? g.cljs$core$IFn$_invoke$arity$0() : g.call(null));\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38780) : f.call(null,G__38780));\n});\nvar G__43387__1 \x3d (function (x){\nvar G__38781 \x3d (g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(x) : g.call(null,x));\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38781) : f.call(null,G__38781));\n});\nvar G__43387__2 \x3d (function (x,y){\nvar G__38782 \x3d (g.cljs$core$IFn$_invoke$arity$2 ? g.cljs$core$IFn$_invoke$arity$2(x,y) : g.call(null,x,y));\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38782) : f.call(null,G__38782));\n});\nvar G__43387__3 \x3d (function (x,y,z){\nvar G__38783 \x3d (g.cljs$core$IFn$_invoke$arity$3 ? g.cljs$core$IFn$_invoke$arity$3(x,y,z) : g.call(null,x,y,z));\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38783) : f.call(null,G__38783));\n});\nvar G__43387__4 \x3d (function() { \nvar G__43390__delegate \x3d function (x,y,z,args){\nvar G__38784 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$5(g,x,y,z,args);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38784) : f.call(null,G__38784));\n};\nvar G__43390 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43393__i \x3d 0, G__43393__a \x3d new Array(arguments.length -  3);\nwhile (G__43393__i \x3c G__43393__a.length) {G__43393__a[G__43393__i] \x3d arguments[G__43393__i + 3]; ++G__43393__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43393__a,0,null);\n} \nreturn G__43390__delegate.call(this,x,y,z,args);};\nG__43390.cljs$lang$maxFixedArity \x3d 3;\nG__43390.cljs$lang$applyTo \x3d (function (arglist__43394){\nvar x \x3d cljs.core.first(arglist__43394);\narglist__43394 \x3d cljs.core.next(arglist__43394);\nvar y \x3d cljs.core.first(arglist__43394);\narglist__43394 \x3d cljs.core.next(arglist__43394);\nvar z \x3d cljs.core.first(arglist__43394);\nvar args \x3d cljs.core.rest(arglist__43394);\nreturn G__43390__delegate(x,y,z,args);\n});\nG__43390.cljs$core$IFn$_invoke$arity$variadic \x3d G__43390__delegate;\nreturn G__43390;\n})()\n;\nG__43387 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__43387__0.call(this);\ncase 1:\nreturn G__43387__1.call(this,x);\ncase 2:\nreturn G__43387__2.call(this,x,y);\ncase 3:\nreturn G__43387__3.call(this,x,y,z);\ndefault:\nvar G__43396 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43397__i \x3d 0, G__43397__a \x3d new Array(arguments.length -  3);\nwhile (G__43397__i \x3c G__43397__a.length) {G__43397__a[G__43397__i] \x3d arguments[G__43397__i + 3]; ++G__43397__i;}\nG__43396 \x3d new cljs.core.IndexedSeq(G__43397__a,0,null);\n}\nreturn G__43387__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43396);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43387.cljs$lang$maxFixedArity \x3d 3;\nG__43387.cljs$lang$applyTo \x3d G__43387__4.cljs$lang$applyTo;\nG__43387.cljs$core$IFn$_invoke$arity$0 \x3d G__43387__0;\nG__43387.cljs$core$IFn$_invoke$arity$1 \x3d G__43387__1;\nG__43387.cljs$core$IFn$_invoke$arity$2 \x3d G__43387__2;\nG__43387.cljs$core$IFn$_invoke$arity$3 \x3d G__43387__3;\nG__43387.cljs$core$IFn$_invoke$arity$variadic \x3d G__43387__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43387;\n})()\n}));\n\n(cljs.core.comp.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,g,h){\nreturn (function() {\nvar G__43399 \x3d null;\nvar G__43399__0 \x3d (function (){\nvar G__38785 \x3d (function (){var G__38786 \x3d (h.cljs$core$IFn$_invoke$arity$0 ? h.cljs$core$IFn$_invoke$arity$0() : h.call(null));\nreturn (g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(G__38786) : g.call(null,G__38786));\n})();\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38785) : f.call(null,G__38785));\n});\nvar G__43399__1 \x3d (function (x){\nvar G__38787 \x3d (function (){var G__38788 \x3d (h.cljs$core$IFn$_invoke$arity$1 ? h.cljs$core$IFn$_invoke$arity$1(x) : h.call(null,x));\nreturn (g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(G__38788) : g.call(null,G__38788));\n})();\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38787) : f.call(null,G__38787));\n});\nvar G__43399__2 \x3d (function (x,y){\nvar G__38789 \x3d (function (){var G__38790 \x3d (h.cljs$core$IFn$_invoke$arity$2 ? h.cljs$core$IFn$_invoke$arity$2(x,y) : h.call(null,x,y));\nreturn (g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(G__38790) : g.call(null,G__38790));\n})();\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38789) : f.call(null,G__38789));\n});\nvar G__43399__3 \x3d (function (x,y,z){\nvar G__38791 \x3d (function (){var G__38792 \x3d (h.cljs$core$IFn$_invoke$arity$3 ? h.cljs$core$IFn$_invoke$arity$3(x,y,z) : h.call(null,x,y,z));\nreturn (g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(G__38792) : g.call(null,G__38792));\n})();\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38791) : f.call(null,G__38791));\n});\nvar G__43399__4 \x3d (function() { \nvar G__43411__delegate \x3d function (x,y,z,args){\nvar G__38793 \x3d (function (){var G__38794 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$5(h,x,y,z,args);\nreturn (g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(G__38794) : g.call(null,G__38794));\n})();\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38793) : f.call(null,G__38793));\n};\nvar G__43411 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43418__i \x3d 0, G__43418__a \x3d new Array(arguments.length -  3);\nwhile (G__43418__i \x3c G__43418__a.length) {G__43418__a[G__43418__i] \x3d arguments[G__43418__i + 3]; ++G__43418__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43418__a,0,null);\n} \nreturn G__43411__delegate.call(this,x,y,z,args);};\nG__43411.cljs$lang$maxFixedArity \x3d 3;\nG__43411.cljs$lang$applyTo \x3d (function (arglist__43419){\nvar x \x3d cljs.core.first(arglist__43419);\narglist__43419 \x3d cljs.core.next(arglist__43419);\nvar y \x3d cljs.core.first(arglist__43419);\narglist__43419 \x3d cljs.core.next(arglist__43419);\nvar z \x3d cljs.core.first(arglist__43419);\nvar args \x3d cljs.core.rest(arglist__43419);\nreturn G__43411__delegate(x,y,z,args);\n});\nG__43411.cljs$core$IFn$_invoke$arity$variadic \x3d G__43411__delegate;\nreturn G__43411;\n})()\n;\nG__43399 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__43399__0.call(this);\ncase 1:\nreturn G__43399__1.call(this,x);\ncase 2:\nreturn G__43399__2.call(this,x,y);\ncase 3:\nreturn G__43399__3.call(this,x,y,z);\ndefault:\nvar G__43421 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43422__i \x3d 0, G__43422__a \x3d new Array(arguments.length -  3);\nwhile (G__43422__i \x3c G__43422__a.length) {G__43422__a[G__43422__i] \x3d arguments[G__43422__i + 3]; ++G__43422__i;}\nG__43421 \x3d new cljs.core.IndexedSeq(G__43422__a,0,null);\n}\nreturn G__43399__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43421);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43399.cljs$lang$maxFixedArity \x3d 3;\nG__43399.cljs$lang$applyTo \x3d G__43399__4.cljs$lang$applyTo;\nG__43399.cljs$core$IFn$_invoke$arity$0 \x3d G__43399__0;\nG__43399.cljs$core$IFn$_invoke$arity$1 \x3d G__43399__1;\nG__43399.cljs$core$IFn$_invoke$arity$2 \x3d G__43399__2;\nG__43399.cljs$core$IFn$_invoke$arity$3 \x3d G__43399__3;\nG__43399.cljs$core$IFn$_invoke$arity$variadic \x3d G__43399__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43399;\n})()\n}));\n\n(cljs.core.comp.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f1,f2,f3,fs){\nvar fs__$1 \x3d cljs.core.reverse(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4(f1,f2,f3,fs));\nreturn (function() { \nvar G__43425__delegate \x3d function (args){\nvar ret \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.first(fs__$1),args);\nvar fs__$2 \x3d cljs.core.next(fs__$1);\nwhile(true){\nif(fs__$2){\nvar G__43427 \x3d (function (){var fexpr__38795 \x3d cljs.core.first(fs__$2);\nreturn (fexpr__38795.cljs$core$IFn$_invoke$arity$1 ? fexpr__38795.cljs$core$IFn$_invoke$arity$1(ret) : fexpr__38795.call(null,ret));\n})();\nvar G__43428 \x3d cljs.core.next(fs__$2);\nret \x3d G__43427;\nfs__$2 \x3d G__43428;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n};\nvar G__43425 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__43431__i \x3d 0, G__43431__a \x3d new Array(arguments.length -  0);\nwhile (G__43431__i \x3c G__43431__a.length) {G__43431__a[G__43431__i] \x3d arguments[G__43431__i + 0]; ++G__43431__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43431__a,0,null);\n} \nreturn G__43425__delegate.call(this,args);};\nG__43425.cljs$lang$maxFixedArity \x3d 0;\nG__43425.cljs$lang$applyTo \x3d (function (arglist__43433){\nvar args \x3d cljs.core.seq(arglist__43433);\nreturn G__43425__delegate(args);\n});\nG__43425.cljs$core$IFn$_invoke$arity$variadic \x3d G__43425__delegate;\nreturn G__43425;\n})()\n;\n}));\n\n/** @this {Function} */\n(cljs.core.comp.cljs$lang$applyTo \x3d (function (seq38775){\nvar G__38776 \x3d cljs.core.first(seq38775);\nvar seq38775__$1 \x3d cljs.core.next(seq38775);\nvar G__38777 \x3d cljs.core.first(seq38775__$1);\nvar seq38775__$2 \x3d cljs.core.next(seq38775__$1);\nvar G__38778 \x3d cljs.core.first(seq38775__$2);\nvar seq38775__$3 \x3d cljs.core.next(seq38775__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38776,G__38777,G__38778,seq38775__$3);\n}));\n\n(cljs.core.comp.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Takes a function f and fewer than the normal arguments to f, and\n *   returns a fn that takes a variable number of additional args. When\n *   called, the returned function calls f with args + additional args.\n */\ncljs.core.partial \x3d (function cljs$core$partial(var_args){\nvar G__38802 \x3d arguments.length;\nswitch (G__38802) {\ncase 1:\nreturn cljs.core.partial.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.partial.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.partial.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.partial.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43439 \x3d arguments.length;\nvar i__4772__auto___43440 \x3d (0);\nwhile(true){\nif((i__4772__auto___43440 \x3c len__4771__auto___43439)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43440]));\n\nvar G__43442 \x3d (i__4772__auto___43440 + (1));\ni__4772__auto___43440 \x3d G__43442;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn cljs.core.partial.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.partial.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn f;\n}));\n\n(cljs.core.partial.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,arg1){\nreturn (function() {\nvar G__43452 \x3d null;\nvar G__43452__0 \x3d (function (){\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(arg1) : f.call(null,arg1));\n});\nvar G__43452__1 \x3d (function (x){\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(arg1,x) : f.call(null,arg1,x));\n});\nvar G__43452__2 \x3d (function (x,y){\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(arg1,x,y) : f.call(null,arg1,x,y));\n});\nvar G__43452__3 \x3d (function (x,y,z){\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(arg1,x,y,z) : f.call(null,arg1,x,y,z));\n});\nvar G__43452__4 \x3d (function() { \nvar G__43462__delegate \x3d function (x,y,z,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(f,arg1,x,y,z,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([args], 0));\n};\nvar G__43462 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43467__i \x3d 0, G__43467__a \x3d new Array(arguments.length -  3);\nwhile (G__43467__i \x3c G__43467__a.length) {G__43467__a[G__43467__i] \x3d arguments[G__43467__i + 3]; ++G__43467__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43467__a,0,null);\n} \nreturn G__43462__delegate.call(this,x,y,z,args);};\nG__43462.cljs$lang$maxFixedArity \x3d 3;\nG__43462.cljs$lang$applyTo \x3d (function (arglist__43468){\nvar x \x3d cljs.core.first(arglist__43468);\narglist__43468 \x3d cljs.core.next(arglist__43468);\nvar y \x3d cljs.core.first(arglist__43468);\narglist__43468 \x3d cljs.core.next(arglist__43468);\nvar z \x3d cljs.core.first(arglist__43468);\nvar args \x3d cljs.core.rest(arglist__43468);\nreturn G__43462__delegate(x,y,z,args);\n});\nG__43462.cljs$core$IFn$_invoke$arity$variadic \x3d G__43462__delegate;\nreturn G__43462;\n})()\n;\nG__43452 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__43452__0.call(this);\ncase 1:\nreturn G__43452__1.call(this,x);\ncase 2:\nreturn G__43452__2.call(this,x,y);\ncase 3:\nreturn G__43452__3.call(this,x,y,z);\ndefault:\nvar G__43469 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43471__i \x3d 0, G__43471__a \x3d new Array(arguments.length -  3);\nwhile (G__43471__i \x3c G__43471__a.length) {G__43471__a[G__43471__i] \x3d arguments[G__43471__i + 3]; ++G__43471__i;}\nG__43469 \x3d new cljs.core.IndexedSeq(G__43471__a,0,null);\n}\nreturn G__43452__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43469);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43452.cljs$lang$maxFixedArity \x3d 3;\nG__43452.cljs$lang$applyTo \x3d G__43452__4.cljs$lang$applyTo;\nG__43452.cljs$core$IFn$_invoke$arity$0 \x3d G__43452__0;\nG__43452.cljs$core$IFn$_invoke$arity$1 \x3d G__43452__1;\nG__43452.cljs$core$IFn$_invoke$arity$2 \x3d G__43452__2;\nG__43452.cljs$core$IFn$_invoke$arity$3 \x3d G__43452__3;\nG__43452.cljs$core$IFn$_invoke$arity$variadic \x3d G__43452__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43452;\n})()\n}));\n\n(cljs.core.partial.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,arg1,arg2){\nreturn (function() {\nvar G__43476 \x3d null;\nvar G__43476__0 \x3d (function (){\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(arg1,arg2) : f.call(null,arg1,arg2));\n});\nvar G__43476__1 \x3d (function (x){\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(arg1,arg2,x) : f.call(null,arg1,arg2,x));\n});\nvar G__43476__2 \x3d (function (x,y){\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(arg1,arg2,x,y) : f.call(null,arg1,arg2,x,y));\n});\nvar G__43476__3 \x3d (function (x,y,z){\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(arg1,arg2,x,y,z) : f.call(null,arg1,arg2,x,y,z));\n});\nvar G__43476__4 \x3d (function() { \nvar G__43484__delegate \x3d function (x,y,z,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(f,arg1,arg2,x,y,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([z,args], 0));\n};\nvar G__43484 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43489__i \x3d 0, G__43489__a \x3d new Array(arguments.length -  3);\nwhile (G__43489__i \x3c G__43489__a.length) {G__43489__a[G__43489__i] \x3d arguments[G__43489__i + 3]; ++G__43489__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43489__a,0,null);\n} \nreturn G__43484__delegate.call(this,x,y,z,args);};\nG__43484.cljs$lang$maxFixedArity \x3d 3;\nG__43484.cljs$lang$applyTo \x3d (function (arglist__43490){\nvar x \x3d cljs.core.first(arglist__43490);\narglist__43490 \x3d cljs.core.next(arglist__43490);\nvar y \x3d cljs.core.first(arglist__43490);\narglist__43490 \x3d cljs.core.next(arglist__43490);\nvar z \x3d cljs.core.first(arglist__43490);\nvar args \x3d cljs.core.rest(arglist__43490);\nreturn G__43484__delegate(x,y,z,args);\n});\nG__43484.cljs$core$IFn$_invoke$arity$variadic \x3d G__43484__delegate;\nreturn G__43484;\n})()\n;\nG__43476 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__43476__0.call(this);\ncase 1:\nreturn G__43476__1.call(this,x);\ncase 2:\nreturn G__43476__2.call(this,x,y);\ncase 3:\nreturn G__43476__3.call(this,x,y,z);\ndefault:\nvar G__43492 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43493__i \x3d 0, G__43493__a \x3d new Array(arguments.length -  3);\nwhile (G__43493__i \x3c G__43493__a.length) {G__43493__a[G__43493__i] \x3d arguments[G__43493__i + 3]; ++G__43493__i;}\nG__43492 \x3d new cljs.core.IndexedSeq(G__43493__a,0,null);\n}\nreturn G__43476__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43492);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43476.cljs$lang$maxFixedArity \x3d 3;\nG__43476.cljs$lang$applyTo \x3d G__43476__4.cljs$lang$applyTo;\nG__43476.cljs$core$IFn$_invoke$arity$0 \x3d G__43476__0;\nG__43476.cljs$core$IFn$_invoke$arity$1 \x3d G__43476__1;\nG__43476.cljs$core$IFn$_invoke$arity$2 \x3d G__43476__2;\nG__43476.cljs$core$IFn$_invoke$arity$3 \x3d G__43476__3;\nG__43476.cljs$core$IFn$_invoke$arity$variadic \x3d G__43476__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43476;\n})()\n}));\n\n(cljs.core.partial.cljs$core$IFn$_invoke$arity$4 \x3d (function (f,arg1,arg2,arg3){\nreturn (function() {\nvar G__43495 \x3d null;\nvar G__43495__0 \x3d (function (){\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(arg1,arg2,arg3) : f.call(null,arg1,arg2,arg3));\n});\nvar G__43495__1 \x3d (function (x){\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(arg1,arg2,arg3,x) : f.call(null,arg1,arg2,arg3,x));\n});\nvar G__43495__2 \x3d (function (x,y){\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(arg1,arg2,arg3,x,y) : f.call(null,arg1,arg2,arg3,x,y));\n});\nvar G__43495__3 \x3d (function (x,y,z){\nreturn (f.cljs$core$IFn$_invoke$arity$6 ? f.cljs$core$IFn$_invoke$arity$6(arg1,arg2,arg3,x,y,z) : f.call(null,arg1,arg2,arg3,x,y,z));\n});\nvar G__43495__4 \x3d (function() { \nvar G__43500__delegate \x3d function (x,y,z,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(f,arg1,arg2,arg3,x,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([y,z,args], 0));\n};\nvar G__43500 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43501__i \x3d 0, G__43501__a \x3d new Array(arguments.length -  3);\nwhile (G__43501__i \x3c G__43501__a.length) {G__43501__a[G__43501__i] \x3d arguments[G__43501__i + 3]; ++G__43501__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43501__a,0,null);\n} \nreturn G__43500__delegate.call(this,x,y,z,args);};\nG__43500.cljs$lang$maxFixedArity \x3d 3;\nG__43500.cljs$lang$applyTo \x3d (function (arglist__43503){\nvar x \x3d cljs.core.first(arglist__43503);\narglist__43503 \x3d cljs.core.next(arglist__43503);\nvar y \x3d cljs.core.first(arglist__43503);\narglist__43503 \x3d cljs.core.next(arglist__43503);\nvar z \x3d cljs.core.first(arglist__43503);\nvar args \x3d cljs.core.rest(arglist__43503);\nreturn G__43500__delegate(x,y,z,args);\n});\nG__43500.cljs$core$IFn$_invoke$arity$variadic \x3d G__43500__delegate;\nreturn G__43500;\n})()\n;\nG__43495 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__43495__0.call(this);\ncase 1:\nreturn G__43495__1.call(this,x);\ncase 2:\nreturn G__43495__2.call(this,x,y);\ncase 3:\nreturn G__43495__3.call(this,x,y,z);\ndefault:\nvar G__43504 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43505__i \x3d 0, G__43505__a \x3d new Array(arguments.length -  3);\nwhile (G__43505__i \x3c G__43505__a.length) {G__43505__a[G__43505__i] \x3d arguments[G__43505__i + 3]; ++G__43505__i;}\nG__43504 \x3d new cljs.core.IndexedSeq(G__43505__a,0,null);\n}\nreturn G__43495__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43504);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43495.cljs$lang$maxFixedArity \x3d 3;\nG__43495.cljs$lang$applyTo \x3d G__43495__4.cljs$lang$applyTo;\nG__43495.cljs$core$IFn$_invoke$arity$0 \x3d G__43495__0;\nG__43495.cljs$core$IFn$_invoke$arity$1 \x3d G__43495__1;\nG__43495.cljs$core$IFn$_invoke$arity$2 \x3d G__43495__2;\nG__43495.cljs$core$IFn$_invoke$arity$3 \x3d G__43495__3;\nG__43495.cljs$core$IFn$_invoke$arity$variadic \x3d G__43495__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43495;\n})()\n}));\n\n(cljs.core.partial.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,arg1,arg2,arg3,more){\nreturn (function() { \nvar G__43507__delegate \x3d function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,arg1,arg2,arg3,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(more,args));\n};\nvar G__43507 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__43511__i \x3d 0, G__43511__a \x3d new Array(arguments.length -  0);\nwhile (G__43511__i \x3c G__43511__a.length) {G__43511__a[G__43511__i] \x3d arguments[G__43511__i + 0]; ++G__43511__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43511__a,0,null);\n} \nreturn G__43507__delegate.call(this,args);};\nG__43507.cljs$lang$maxFixedArity \x3d 0;\nG__43507.cljs$lang$applyTo \x3d (function (arglist__43512){\nvar args \x3d cljs.core.seq(arglist__43512);\nreturn G__43507__delegate(args);\n});\nG__43507.cljs$core$IFn$_invoke$arity$variadic \x3d G__43507__delegate;\nreturn G__43507;\n})()\n;\n}));\n\n/** @this {Function} */\n(cljs.core.partial.cljs$lang$applyTo \x3d (function (seq38797){\nvar G__38798 \x3d cljs.core.first(seq38797);\nvar seq38797__$1 \x3d cljs.core.next(seq38797);\nvar G__38799 \x3d cljs.core.first(seq38797__$1);\nvar seq38797__$2 \x3d cljs.core.next(seq38797__$1);\nvar G__38800 \x3d cljs.core.first(seq38797__$2);\nvar seq38797__$3 \x3d cljs.core.next(seq38797__$2);\nvar G__38801 \x3d cljs.core.first(seq38797__$3);\nvar seq38797__$4 \x3d cljs.core.next(seq38797__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38798,G__38799,G__38800,G__38801,seq38797__$4);\n}));\n\n(cljs.core.partial.cljs$lang$maxFixedArity \x3d (4));\n\n/**\n * Takes a function f, and returns a function that calls f, replacing\n *   a nil first argument to f with the supplied value x. Higher arity\n *   versions can replace arguments in the second and third\n *   positions (y, z). Note that the function f can take any number of\n *   arguments, not just the one(s) being nil-patched.\n */\ncljs.core.fnil \x3d (function cljs$core$fnil(var_args){\nvar G__38804 \x3d arguments.length;\nswitch (G__38804) {\ncase 2:\nreturn cljs.core.fnil.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.fnil.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.fnil.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.fnil.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,x){\nreturn (function() {\nvar G__43529 \x3d null;\nvar G__43529__1 \x3d (function (a){\nvar G__38805 \x3d (((a \x3d\x3d null))?x:a);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38805) : f.call(null,G__38805));\n});\nvar G__43529__2 \x3d (function (a,b){\nvar G__38806 \x3d (((a \x3d\x3d null))?x:a);\nvar G__38807 \x3d b;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38806,G__38807) : f.call(null,G__38806,G__38807));\n});\nvar G__43529__3 \x3d (function (a,b,c){\nvar G__38808 \x3d (((a \x3d\x3d null))?x:a);\nvar G__38809 \x3d b;\nvar G__38810 \x3d c;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38808,G__38809,G__38810) : f.call(null,G__38808,G__38809,G__38810));\n});\nvar G__43529__4 \x3d (function() { \nvar G__43540__delegate \x3d function (a,b,c,ds){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,(((a \x3d\x3d null))?x:a),b,c,ds);\n};\nvar G__43540 \x3d function (a,b,c,var_args){\nvar ds \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43543__i \x3d 0, G__43543__a \x3d new Array(arguments.length -  3);\nwhile (G__43543__i \x3c G__43543__a.length) {G__43543__a[G__43543__i] \x3d arguments[G__43543__i + 3]; ++G__43543__i;}\n  ds \x3d new cljs.core.IndexedSeq(G__43543__a,0,null);\n} \nreturn G__43540__delegate.call(this,a,b,c,ds);};\nG__43540.cljs$lang$maxFixedArity \x3d 3;\nG__43540.cljs$lang$applyTo \x3d (function (arglist__43544){\nvar a \x3d cljs.core.first(arglist__43544);\narglist__43544 \x3d cljs.core.next(arglist__43544);\nvar b \x3d cljs.core.first(arglist__43544);\narglist__43544 \x3d cljs.core.next(arglist__43544);\nvar c \x3d cljs.core.first(arglist__43544);\nvar ds \x3d cljs.core.rest(arglist__43544);\nreturn G__43540__delegate(a,b,c,ds);\n});\nG__43540.cljs$core$IFn$_invoke$arity$variadic \x3d G__43540__delegate;\nreturn G__43540;\n})()\n;\nG__43529 \x3d function(a,b,c,var_args){\nvar ds \x3d var_args;\nswitch(arguments.length){\ncase 1:\nreturn G__43529__1.call(this,a);\ncase 2:\nreturn G__43529__2.call(this,a,b);\ncase 3:\nreturn G__43529__3.call(this,a,b,c);\ndefault:\nvar G__43545 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43546__i \x3d 0, G__43546__a \x3d new Array(arguments.length -  3);\nwhile (G__43546__i \x3c G__43546__a.length) {G__43546__a[G__43546__i] \x3d arguments[G__43546__i + 3]; ++G__43546__i;}\nG__43545 \x3d new cljs.core.IndexedSeq(G__43546__a,0,null);\n}\nreturn G__43529__4.cljs$core$IFn$_invoke$arity$variadic(a,b,c, G__43545);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43529.cljs$lang$maxFixedArity \x3d 3;\nG__43529.cljs$lang$applyTo \x3d G__43529__4.cljs$lang$applyTo;\nG__43529.cljs$core$IFn$_invoke$arity$1 \x3d G__43529__1;\nG__43529.cljs$core$IFn$_invoke$arity$2 \x3d G__43529__2;\nG__43529.cljs$core$IFn$_invoke$arity$3 \x3d G__43529__3;\nG__43529.cljs$core$IFn$_invoke$arity$variadic \x3d G__43529__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43529;\n})()\n}));\n\n(cljs.core.fnil.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,x,y){\nreturn (function() {\nvar G__43548 \x3d null;\nvar G__43548__2 \x3d (function (a,b){\nvar G__38811 \x3d (((a \x3d\x3d null))?x:a);\nvar G__38812 \x3d (((b \x3d\x3d null))?y:b);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38811,G__38812) : f.call(null,G__38811,G__38812));\n});\nvar G__43548__3 \x3d (function (a,b,c){\nvar G__38813 \x3d (((a \x3d\x3d null))?x:a);\nvar G__38814 \x3d (((b \x3d\x3d null))?y:b);\nvar G__38815 \x3d c;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38813,G__38814,G__38815) : f.call(null,G__38813,G__38814,G__38815));\n});\nvar G__43548__4 \x3d (function() { \nvar G__43552__delegate \x3d function (a,b,c,ds){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,(((a \x3d\x3d null))?x:a),(((b \x3d\x3d null))?y:b),c,ds);\n};\nvar G__43552 \x3d function (a,b,c,var_args){\nvar ds \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43558__i \x3d 0, G__43558__a \x3d new Array(arguments.length -  3);\nwhile (G__43558__i \x3c G__43558__a.length) {G__43558__a[G__43558__i] \x3d arguments[G__43558__i + 3]; ++G__43558__i;}\n  ds \x3d new cljs.core.IndexedSeq(G__43558__a,0,null);\n} \nreturn G__43552__delegate.call(this,a,b,c,ds);};\nG__43552.cljs$lang$maxFixedArity \x3d 3;\nG__43552.cljs$lang$applyTo \x3d (function (arglist__43559){\nvar a \x3d cljs.core.first(arglist__43559);\narglist__43559 \x3d cljs.core.next(arglist__43559);\nvar b \x3d cljs.core.first(arglist__43559);\narglist__43559 \x3d cljs.core.next(arglist__43559);\nvar c \x3d cljs.core.first(arglist__43559);\nvar ds \x3d cljs.core.rest(arglist__43559);\nreturn G__43552__delegate(a,b,c,ds);\n});\nG__43552.cljs$core$IFn$_invoke$arity$variadic \x3d G__43552__delegate;\nreturn G__43552;\n})()\n;\nG__43548 \x3d function(a,b,c,var_args){\nvar ds \x3d var_args;\nswitch(arguments.length){\ncase 2:\nreturn G__43548__2.call(this,a,b);\ncase 3:\nreturn G__43548__3.call(this,a,b,c);\ndefault:\nvar G__43561 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43562__i \x3d 0, G__43562__a \x3d new Array(arguments.length -  3);\nwhile (G__43562__i \x3c G__43562__a.length) {G__43562__a[G__43562__i] \x3d arguments[G__43562__i + 3]; ++G__43562__i;}\nG__43561 \x3d new cljs.core.IndexedSeq(G__43562__a,0,null);\n}\nreturn G__43548__4.cljs$core$IFn$_invoke$arity$variadic(a,b,c, G__43561);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43548.cljs$lang$maxFixedArity \x3d 3;\nG__43548.cljs$lang$applyTo \x3d G__43548__4.cljs$lang$applyTo;\nG__43548.cljs$core$IFn$_invoke$arity$2 \x3d G__43548__2;\nG__43548.cljs$core$IFn$_invoke$arity$3 \x3d G__43548__3;\nG__43548.cljs$core$IFn$_invoke$arity$variadic \x3d G__43548__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43548;\n})()\n}));\n\n(cljs.core.fnil.cljs$core$IFn$_invoke$arity$4 \x3d (function (f,x,y,z){\nreturn (function() {\nvar G__43567 \x3d null;\nvar G__43567__2 \x3d (function (a,b){\nvar G__38816 \x3d (((a \x3d\x3d null))?x:a);\nvar G__38817 \x3d (((b \x3d\x3d null))?y:b);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38816,G__38817) : f.call(null,G__38816,G__38817));\n});\nvar G__43567__3 \x3d (function (a,b,c){\nvar G__38818 \x3d (((a \x3d\x3d null))?x:a);\nvar G__38819 \x3d (((b \x3d\x3d null))?y:b);\nvar G__38820 \x3d (((c \x3d\x3d null))?z:c);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38818,G__38819,G__38820) : f.call(null,G__38818,G__38819,G__38820));\n});\nvar G__43567__4 \x3d (function() { \nvar G__43575__delegate \x3d function (a,b,c,ds){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,(((a \x3d\x3d null))?x:a),(((b \x3d\x3d null))?y:b),(((c \x3d\x3d null))?z:c),ds);\n};\nvar G__43575 \x3d function (a,b,c,var_args){\nvar ds \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43589__i \x3d 0, G__43589__a \x3d new Array(arguments.length -  3);\nwhile (G__43589__i \x3c G__43589__a.length) {G__43589__a[G__43589__i] \x3d arguments[G__43589__i + 3]; ++G__43589__i;}\n  ds \x3d new cljs.core.IndexedSeq(G__43589__a,0,null);\n} \nreturn G__43575__delegate.call(this,a,b,c,ds);};\nG__43575.cljs$lang$maxFixedArity \x3d 3;\nG__43575.cljs$lang$applyTo \x3d (function (arglist__43590){\nvar a \x3d cljs.core.first(arglist__43590);\narglist__43590 \x3d cljs.core.next(arglist__43590);\nvar b \x3d cljs.core.first(arglist__43590);\narglist__43590 \x3d cljs.core.next(arglist__43590);\nvar c \x3d cljs.core.first(arglist__43590);\nvar ds \x3d cljs.core.rest(arglist__43590);\nreturn G__43575__delegate(a,b,c,ds);\n});\nG__43575.cljs$core$IFn$_invoke$arity$variadic \x3d G__43575__delegate;\nreturn G__43575;\n})()\n;\nG__43567 \x3d function(a,b,c,var_args){\nvar ds \x3d var_args;\nswitch(arguments.length){\ncase 2:\nreturn G__43567__2.call(this,a,b);\ncase 3:\nreturn G__43567__3.call(this,a,b,c);\ndefault:\nvar G__43591 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43592__i \x3d 0, G__43592__a \x3d new Array(arguments.length -  3);\nwhile (G__43592__i \x3c G__43592__a.length) {G__43592__a[G__43592__i] \x3d arguments[G__43592__i + 3]; ++G__43592__i;}\nG__43591 \x3d new cljs.core.IndexedSeq(G__43592__a,0,null);\n}\nreturn G__43567__4.cljs$core$IFn$_invoke$arity$variadic(a,b,c, G__43591);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43567.cljs$lang$maxFixedArity \x3d 3;\nG__43567.cljs$lang$applyTo \x3d G__43567__4.cljs$lang$applyTo;\nG__43567.cljs$core$IFn$_invoke$arity$2 \x3d G__43567__2;\nG__43567.cljs$core$IFn$_invoke$arity$3 \x3d G__43567__3;\nG__43567.cljs$core$IFn$_invoke$arity$variadic \x3d G__43567__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__43567;\n})()\n}));\n\n(cljs.core.fnil.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Returns a lazy sequence consisting of the result of applying f to 0\n *   and the first item of coll, followed by applying f to 1 and the second\n *   item in coll, etc, until coll is exhausted. Thus function f should\n *   accept 2 arguments, index and item. Returns a stateful transducer when\n *   no collection is provided.\n */\ncljs.core.map_indexed \x3d (function cljs$core$map_indexed(var_args){\nvar G__38822 \x3d arguments.length;\nswitch (G__38822) {\ncase 1:\nreturn cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (function (rf){\nvar i \x3d (cljs.core.volatile_BANG_.cljs$core$IFn$_invoke$arity$1 ? cljs.core.volatile_BANG_.cljs$core$IFn$_invoke$arity$1((-1)) : cljs.core.volatile_BANG_.call(null,(-1)));\nreturn (function() {\nvar G__43598 \x3d null;\nvar G__43598__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__43598__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__43598__2 \x3d (function (result,input){\nvar G__38823 \x3d result;\nvar G__38824 \x3d (function (){var G__38825 \x3d cljs.core._vreset_BANG_(i,(cljs.core._deref(i) + (1)));\nvar G__38826 \x3d input;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38825,G__38826) : f.call(null,G__38825,G__38826));\n})();\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(G__38823,G__38824) : rf.call(null,G__38823,G__38824));\n});\nG__43598 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__43598__0.call(this);\ncase 1:\nreturn G__43598__1.call(this,result);\ncase 2:\nreturn G__43598__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43598.cljs$core$IFn$_invoke$arity$0 \x3d G__43598__0;\nG__43598.cljs$core$IFn$_invoke$arity$1 \x3d G__43598__1;\nG__43598.cljs$core$IFn$_invoke$arity$2 \x3d G__43598__2;\nreturn G__43598;\n})()\n});\n}));\n\n(cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nvar mapi \x3d (function cljs$core$mapi(idx,coll__$1){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll__$1);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s)){\nvar c \x3d cljs.core.chunk_first(s);\nvar size \x3d cljs.core.count(c);\nvar b \x3d cljs.core.chunk_buffer(size);\nvar n__4648__auto___43605 \x3d size;\nvar i_43606 \x3d (0);\nwhile(true){\nif((i_43606 \x3c n__4648__auto___43605)){\ncljs.core.chunk_append(b,(function (){var G__38831 \x3d (idx + i_43606);\nvar G__38832 \x3d cljs.core._nth(c,i_43606);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38831,G__38832) : f.call(null,G__38831,G__38832));\n})());\n\nvar G__43609 \x3d (i_43606 + (1));\ni_43606 \x3d G__43609;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core.chunk_cons(cljs.core.chunk(b),cljs$core$mapi((idx + size),cljs.core.chunk_rest(s)));\n} else {\nreturn cljs.core.cons((function (){var G__38833 \x3d idx;\nvar G__38834 \x3d cljs.core.first(s);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38833,G__38834) : f.call(null,G__38833,G__38834));\n})(),cljs$core$mapi((idx + (1)),cljs.core.rest(s)));\n}\n} else {\nreturn null;\n}\n}),null,null));\n});\nreturn mapi((0),coll);\n}));\n\n(cljs.core.map_indexed.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a lazy sequence of the non-nil results of (f item). Note,\n *   this means false return values will be included.  f must be free of\n *   side-effects.  Returns a transducer when no collection is provided.\n */\ncljs.core.keep \x3d (function cljs$core$keep(var_args){\nvar G__38836 \x3d arguments.length;\nswitch (G__38836) {\ncase 1:\nreturn cljs.core.keep.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.keep.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.keep.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (function (rf){\nreturn (function() {\nvar G__43616 \x3d null;\nvar G__43616__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__43616__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__43616__2 \x3d (function (result,input){\nvar v \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(input) : f.call(null,input));\nif((v \x3d\x3d null)){\nreturn result;\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,v) : rf.call(null,result,v));\n}\n});\nG__43616 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__43616__0.call(this);\ncase 1:\nreturn G__43616__1.call(this,result);\ncase 2:\nreturn G__43616__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43616.cljs$core$IFn$_invoke$arity$0 \x3d G__43616__0;\nG__43616.cljs$core$IFn$_invoke$arity$1 \x3d G__43616__1;\nG__43616.cljs$core$IFn$_invoke$arity$2 \x3d G__43616__2;\nreturn G__43616;\n})()\n});\n}));\n\n(cljs.core.keep.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s)){\nvar c \x3d cljs.core.chunk_first(s);\nvar size \x3d cljs.core.count(c);\nvar b \x3d cljs.core.chunk_buffer(size);\nvar n__4648__auto___43626 \x3d size;\nvar i_43627 \x3d (0);\nwhile(true){\nif((i_43627 \x3c n__4648__auto___43626)){\nvar x_43632 \x3d (function (){var G__38837 \x3d cljs.core._nth(c,i_43627);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38837) : f.call(null,G__38837));\n})();\nif((x_43632 \x3d\x3d null)){\n} else {\ncljs.core.chunk_append(b,x_43632);\n}\n\nvar G__43634 \x3d (i_43627 + (1));\ni_43627 \x3d G__43634;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core.chunk_cons(cljs.core.chunk(b),cljs.core.keep.cljs$core$IFn$_invoke$arity$2(f,cljs.core.chunk_rest(s)));\n} else {\nvar x \x3d (function (){var G__38838 \x3d cljs.core.first(s);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38838) : f.call(null,G__38838));\n})();\nif((x \x3d\x3d null)){\nreturn cljs.core.keep.cljs$core$IFn$_invoke$arity$2(f,cljs.core.rest(s));\n} else {\nreturn cljs.core.cons(x,cljs.core.keep.cljs$core$IFn$_invoke$arity$2(f,cljs.core.rest(s)));\n}\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.keep.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IWatchable}\n * @implements {cljs.core.IAtom}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IDeref}\n*/\ncljs.core.Atom \x3d (function (state,meta,validator,watches){\nthis.state \x3d state;\nthis.meta \x3d meta;\nthis.validator \x3d validator;\nthis.watches \x3d watches;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 16386;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 6455296;\n});\n(cljs.core.Atom.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (o,other){\nvar self__ \x3d this;\nvar o__$1 \x3d this;\nreturn (o__$1 \x3d\x3d\x3d other);\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.state;\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IWatchable$_notify_watches$arity$3 \x3d (function (this$,oldval,newval){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar seq__38839 \x3d cljs.core.seq(self__.watches);\nvar chunk__38840 \x3d null;\nvar count__38841 \x3d (0);\nvar i__38842 \x3d (0);\nwhile(true){\nif((i__38842 \x3c count__38841)){\nvar vec__38849 \x3d chunk__38840.cljs$core$IIndexed$_nth$arity$2(null,i__38842);\nvar key \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38849,(0),null);\nvar f \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38849,(1),null);\n(f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(key,this$__$1,oldval,newval) : f.call(null,key,this$__$1,oldval,newval));\n\n\nvar G__43657 \x3d seq__38839;\nvar G__43658 \x3d chunk__38840;\nvar G__43659 \x3d count__38841;\nvar G__43660 \x3d (i__38842 + (1));\nseq__38839 \x3d G__43657;\nchunk__38840 \x3d G__43658;\ncount__38841 \x3d G__43659;\ni__38842 \x3d G__43660;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__38839);\nif(temp__5753__auto__){\nvar seq__38839__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__38839__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__38839__$1);\nvar G__43662 \x3d cljs.core.chunk_rest(seq__38839__$1);\nvar G__43663 \x3d c__4591__auto__;\nvar G__43664 \x3d cljs.core.count(c__4591__auto__);\nvar G__43665 \x3d (0);\nseq__38839 \x3d G__43662;\nchunk__38840 \x3d G__43663;\ncount__38841 \x3d G__43664;\ni__38842 \x3d G__43665;\ncontinue;\n} else {\nvar vec__38852 \x3d cljs.core.first(seq__38839__$1);\nvar key \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38852,(0),null);\nvar f \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__38852,(1),null);\n(f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(key,this$__$1,oldval,newval) : f.call(null,key,this$__$1,oldval,newval));\n\n\nvar G__43670 \x3d cljs.core.next(seq__38839__$1);\nvar G__43671 \x3d null;\nvar G__43672 \x3d (0);\nvar G__43673 \x3d (0);\nseq__38839 \x3d G__43670;\nchunk__38840 \x3d G__43671;\ncount__38841 \x3d G__43672;\ni__38842 \x3d G__43673;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IWatchable$_add_watch$arity$3 \x3d (function (this$,key,f){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\n(this$__$1.watches \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.watches,key,f));\n\nreturn this$__$1;\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IWatchable$_remove_watch$arity$2 \x3d (function (this$,key){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (this$__$1.watches \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.watches,key));\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn goog.getUid(this$__$1);\n}));\n\n(cljs.core.Atom.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22state\x22,\x22state\x22,-348086572,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22validator\x22,\x22validator\x22,-325659154,null),new cljs.core.Symbol(null,\x22watches\x22,\x22watches\x22,1367433992,null)], null);\n}));\n\n(cljs.core.Atom.cljs$lang$type \x3d true);\n\n(cljs.core.Atom.cljs$lang$ctorStr \x3d \x22cljs.core/Atom\x22);\n\n(cljs.core.Atom.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Atom\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Atom.\n */\ncljs.core.__GT_Atom \x3d (function cljs$core$__GT_Atom(state,meta,validator,watches){\nreturn (new cljs.core.Atom(state,meta,validator,watches));\n});\n\n/**\n * Creates and returns an Atom with an initial value of x and zero or\n *   more options (in any order):\n * \n *   :meta metadata-map\n * \n *   :validator validate-fn\n * \n *   If metadata-map is supplied, it will become the metadata on the\n *   atom. validate-fn must be nil or a side-effect-free fn of one\n *   argument, which will be passed the intended new state on any state\n *   change. If the new state is unacceptable, the validate-fn should\n *   return false or throw an Error.  If either of these error conditions\n *   occur, then the value of the atom will not change.\n */\ncljs.core.atom \x3d (function cljs$core$atom(var_args){\nvar G__38858 \x3d arguments.length;\nswitch (G__38858) {\ncase 1:\nreturn cljs.core.atom.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43682 \x3d arguments.length;\nvar i__4772__auto___43684 \x3d (0);\nwhile(true){\nif((i__4772__auto___43684 \x3c len__4771__auto___43682)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43684]));\n\nvar G__43686 \x3d (i__4772__auto___43684 + (1));\ni__4772__auto___43684 \x3d G__43686;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((1)),(0),null));\nreturn cljs.core.atom.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.atom.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn (new cljs.core.Atom(x,null,null,null));\n}));\n\n(cljs.core.atom.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,p__38859){\nvar map__38860 \x3d p__38859;\nvar map__38860__$1 \x3d cljs.core.__destructure_map(map__38860);\nvar meta \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38860__$1,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964));\nvar validator \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38860__$1,new cljs.core.Keyword(null,\x22validator\x22,\x22validator\x22,-1966190681));\nreturn (new cljs.core.Atom(x,meta,validator,null));\n}));\n\n/** @this {Function} */\n(cljs.core.atom.cljs$lang$applyTo \x3d (function (seq38856){\nvar G__38857 \x3d cljs.core.first(seq38856);\nvar seq38856__$1 \x3d cljs.core.next(seq38856);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38857,seq38856__$1);\n}));\n\n(cljs.core.atom.cljs$lang$maxFixedArity \x3d (1));\n\n/**\n * Sets the value of atom to newval without regard for the\n *   current value. Returns new-value.\n */\ncljs.core.reset_BANG_ \x3d (function cljs$core$reset_BANG_(a,new_value){\nif((a instanceof cljs.core.Atom)){\nvar validate \x3d a.validator;\nif((validate \x3d\x3d null)){\n} else {\nif(cljs.core.truth_((validate.cljs$core$IFn$_invoke$arity$1 ? validate.cljs$core$IFn$_invoke$arity$1(new_value) : validate.call(null,new_value)))){\n} else {\nthrow (new Error(\x22Validator rejected reference state\x22));\n}\n}\n\nvar old_value \x3d a.state;\n(a.state \x3d new_value);\n\nif((a.watches \x3d\x3d null)){\n} else {\na.cljs$core$IWatchable$_notify_watches$arity$3(null,old_value,new_value);\n}\n\nreturn new_value;\n} else {\nreturn cljs.core._reset_BANG_(a,new_value);\n}\n});\n/**\n * Sets the value of atom to newval. Returns [old new], the value of the\n * atom before and after the reset.\n */\ncljs.core.reset_vals_BANG_ \x3d (function cljs$core$reset_vals_BANG_(a,new_value){\nvar validate \x3d a.validator;\nif((validate \x3d\x3d null)){\n} else {\nif(cljs.core.truth_((validate.cljs$core$IFn$_invoke$arity$1 ? validate.cljs$core$IFn$_invoke$arity$1(new_value) : validate.call(null,new_value)))){\n} else {\nthrow (new Error(\x22Validator rejected reference state\x22));\n}\n}\n\nvar old_value \x3d a.state;\n(a.state \x3d new_value);\n\nif((a.watches \x3d\x3d null)){\n} else {\ncljs.core._notify_watches(a,old_value,new_value);\n}\n\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [old_value,new_value], null);\n});\n/**\n * Atomically swaps the value of atom to be:\n *   (apply f current-value-of-atom args). Note that f may be called\n *   multiple times, and thus should be free of side effects.  Returns\n *   the value that was swapped in.\n */\ncljs.core.swap_BANG_ \x3d (function cljs$core$swap_BANG_(var_args){\nvar G__38867 \x3d arguments.length;\nswitch (G__38867) {\ncase 2:\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43711 \x3d arguments.length;\nvar i__4772__auto___43712 \x3d (0);\nwhile(true){\nif((i__4772__auto___43712 \x3c len__4771__auto___43711)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43712]));\n\nvar G__43716 \x3d (i__4772__auto___43712 + (1));\ni__4772__auto___43712 \x3d G__43716;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,f){\nif((a instanceof cljs.core.Atom)){\nreturn cljs.core.reset_BANG_(a,(function (){var G__38868 \x3d a.state;\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38868) : f.call(null,G__38868));\n})());\n} else {\nreturn cljs.core._swap_BANG_(a,f);\n}\n}));\n\n(cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,f,x){\nif((a instanceof cljs.core.Atom)){\nreturn cljs.core.reset_BANG_(a,(function (){var G__38869 \x3d a.state;\nvar G__38870 \x3d x;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38869,G__38870) : f.call(null,G__38869,G__38870));\n})());\n} else {\nreturn cljs.core._swap_BANG_(a,f,x);\n}\n}));\n\n(cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,f,x,y){\nif((a instanceof cljs.core.Atom)){\nreturn cljs.core.reset_BANG_(a,(function (){var G__38871 \x3d a.state;\nvar G__38872 \x3d x;\nvar G__38873 \x3d y;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38871,G__38872,G__38873) : f.call(null,G__38871,G__38872,G__38873));\n})());\n} else {\nreturn cljs.core._swap_BANG_(a,f,x,y);\n}\n}));\n\n(cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (a,f,x,y,more){\nif((a instanceof cljs.core.Atom)){\nreturn cljs.core.reset_BANG_(a,cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,a.state,x,y,more));\n} else {\nreturn cljs.core._swap_BANG_(a,f,x,y,more);\n}\n}));\n\n/** @this {Function} */\n(cljs.core.swap_BANG_.cljs$lang$applyTo \x3d (function (seq38862){\nvar G__38863 \x3d cljs.core.first(seq38862);\nvar seq38862__$1 \x3d cljs.core.next(seq38862);\nvar G__38864 \x3d cljs.core.first(seq38862__$1);\nvar seq38862__$2 \x3d cljs.core.next(seq38862__$1);\nvar G__38865 \x3d cljs.core.first(seq38862__$2);\nvar seq38862__$3 \x3d cljs.core.next(seq38862__$2);\nvar G__38866 \x3d cljs.core.first(seq38862__$3);\nvar seq38862__$4 \x3d cljs.core.next(seq38862__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38863,G__38864,G__38865,G__38866,seq38862__$4);\n}));\n\n(cljs.core.swap_BANG_.cljs$lang$maxFixedArity \x3d (4));\n\n/**\n * Atomically swaps the value of atom to be:\n *   (apply f current-value-of-atom args). Note that f may be called\n *   multiple times, and thus should be free of side effects.\n *   Returns [old new], the value of the atom before and after the swap.\n */\ncljs.core.swap_vals_BANG_ \x3d (function cljs$core$swap_vals_BANG_(var_args){\nvar G__38880 \x3d arguments.length;\nswitch (G__38880) {\ncase 2:\nreturn cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43750 \x3d arguments.length;\nvar i__4772__auto___43751 \x3d (0);\nwhile(true){\nif((i__4772__auto___43751 \x3c len__4771__auto___43750)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43751]));\n\nvar G__43753 \x3d (i__4772__auto___43751 + (1));\ni__4772__auto___43751 \x3d G__43753;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,f){\nreturn cljs.core.reset_vals_BANG_(a,(function (){var G__38881 \x3d a.state;\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38881) : f.call(null,G__38881));\n})());\n}));\n\n(cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,f,x){\nreturn cljs.core.reset_vals_BANG_(a,(function (){var G__38882 \x3d a.state;\nvar G__38883 \x3d x;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38882,G__38883) : f.call(null,G__38882,G__38883));\n})());\n}));\n\n(cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,f,x,y){\nreturn cljs.core.reset_vals_BANG_(a,(function (){var G__38884 \x3d a.state;\nvar G__38885 \x3d x;\nvar G__38886 \x3d y;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38884,G__38885,G__38886) : f.call(null,G__38884,G__38885,G__38886));\n})());\n}));\n\n(cljs.core.swap_vals_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (a,f,x,y,more){\nreturn cljs.core.reset_vals_BANG_(a,cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,a.state,x,y,more));\n}));\n\n/** @this {Function} */\n(cljs.core.swap_vals_BANG_.cljs$lang$applyTo \x3d (function (seq38875){\nvar G__38876 \x3d cljs.core.first(seq38875);\nvar seq38875__$1 \x3d cljs.core.next(seq38875);\nvar G__38877 \x3d cljs.core.first(seq38875__$1);\nvar seq38875__$2 \x3d cljs.core.next(seq38875__$1);\nvar G__38878 \x3d cljs.core.first(seq38875__$2);\nvar seq38875__$3 \x3d cljs.core.next(seq38875__$2);\nvar G__38879 \x3d cljs.core.first(seq38875__$3);\nvar seq38875__$4 \x3d cljs.core.next(seq38875__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38876,G__38877,G__38878,G__38879,seq38875__$4);\n}));\n\n(cljs.core.swap_vals_BANG_.cljs$lang$maxFixedArity \x3d (4));\n\n/**\n * Atomically sets the value of atom to newval if and only if the\n *   current value of the atom is equal to oldval. Returns true if\n *   set happened, else false.\n */\ncljs.core.compare_and_set_BANG_ \x3d (function cljs$core$compare_and_set_BANG_(a,oldval,newval){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(a.cljs$core$IDeref$_deref$arity$1(null),oldval)){\ncljs.core.reset_BANG_(a,newval);\n\nreturn true;\n} else {\nreturn false;\n}\n});\n/**\n * Sets the validator-fn for an atom. validator-fn must be nil or a\n *   side-effect-free fn of one argument, which will be passed the intended\n *   new state on any state change. If the new state is unacceptable, the\n *   validator-fn should return false or throw an Error. If the current state\n *   is not acceptable to the new validator, an Error will be thrown and the\n *   validator will not be changed.\n */\ncljs.core.set_validator_BANG_ \x3d (function cljs$core$set_validator_BANG_(iref,val){\nif((((!((val \x3d\x3d null)))) \x26\x26 (cljs.core.not((function (){var G__38888 \x3d cljs.core._deref(iref);\nreturn (val.cljs$core$IFn$_invoke$arity$1 ? val.cljs$core$IFn$_invoke$arity$1(G__38888) : val.call(null,G__38888));\n})())))){\nthrow (new Error(\x22Validator rejected reference state\x22));\n} else {\n}\n\nreturn (iref.validator \x3d val);\n});\n/**\n * Gets the validator-fn for a var/ref/agent/atom.\n */\ncljs.core.get_validator \x3d (function cljs$core$get_validator(iref){\nreturn iref.validator;\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IVolatile}\n * @implements {cljs.core.IDeref}\n*/\ncljs.core.Volatile \x3d (function (state){\nthis.state \x3d state;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32768;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.Volatile.prototype.cljs$core$IVolatile$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Volatile.prototype.cljs$core$IVolatile$_vreset_BANG_$arity$2 \x3d (function (_,new_state){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (self__.state \x3d new_state);\n}));\n\n(cljs.core.Volatile.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.state;\n}));\n\n(cljs.core.Volatile.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22state\x22,\x22state\x22,-348086572,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Volatile.cljs$lang$type \x3d true);\n\n(cljs.core.Volatile.cljs$lang$ctorStr \x3d \x22cljs.core/Volatile\x22);\n\n(cljs.core.Volatile.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Volatile\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Volatile.\n */\ncljs.core.__GT_Volatile \x3d (function cljs$core$__GT_Volatile(state){\nreturn (new cljs.core.Volatile(state));\n});\n\n/**\n * Creates and returns a Volatile with an initial value of val.\n */\ncljs.core.volatile_BANG_ \x3d (function cljs$core$volatile_BANG_(val){\nreturn (new cljs.core.Volatile(val));\n});\n/**\n * Returns true if x is a volatile.\n */\ncljs.core.volatile_QMARK_ \x3d (function cljs$core$volatile_QMARK_(x){\nreturn (x instanceof cljs.core.Volatile);\n});\n/**\n * Sets the value of volatile to newval without regard for the\n * current value. Returns newval.\n */\ncljs.core.vreset_BANG_ \x3d (function cljs$core$vreset_BANG_(vol,newval){\nreturn cljs.core._vreset_BANG_(vol,newval);\n});\n/**\n * Returns a lazy sequence of the non-nil results of (f index item). Note,\n *   this means false return values will be included.  f must be free of\n *   side-effects.  Returns a stateful transducer when no collection is\n *   provided.\n */\ncljs.core.keep_indexed \x3d (function cljs$core$keep_indexed(var_args){\nvar G__38890 \x3d arguments.length;\nswitch (G__38890) {\ncase 1:\nreturn cljs.core.keep_indexed.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.keep_indexed.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.keep_indexed.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (function (rf){\nvar ia \x3d cljs.core.volatile_BANG_((-1));\nreturn (function() {\nvar G__43789 \x3d null;\nvar G__43789__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__43789__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__43789__2 \x3d (function (result,input){\nvar i \x3d ia.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,(ia.cljs$core$IDeref$_deref$arity$1(null) + (1)));\nvar v \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(i,input) : f.call(null,i,input));\nif((v \x3d\x3d null)){\nreturn result;\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,v) : rf.call(null,result,v));\n}\n});\nG__43789 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__43789__0.call(this);\ncase 1:\nreturn G__43789__1.call(this,result);\ncase 2:\nreturn G__43789__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__43789.cljs$core$IFn$_invoke$arity$0 \x3d G__43789__0;\nG__43789.cljs$core$IFn$_invoke$arity$1 \x3d G__43789__1;\nG__43789.cljs$core$IFn$_invoke$arity$2 \x3d G__43789__2;\nreturn G__43789;\n})()\n});\n}));\n\n(cljs.core.keep_indexed.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nvar keepi \x3d (function cljs$core$keepi(idx,coll__$1){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll__$1);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s)){\nvar c \x3d cljs.core.chunk_first(s);\nvar size \x3d cljs.core.count(c);\nvar b \x3d cljs.core.chunk_buffer(size);\nvar n__4648__auto___43801 \x3d size;\nvar i_43802 \x3d (0);\nwhile(true){\nif((i_43802 \x3c n__4648__auto___43801)){\nvar x_43803 \x3d (function (){var G__38895 \x3d (idx + i_43802);\nvar G__38896 \x3d cljs.core._nth(c,i_43802);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38895,G__38896) : f.call(null,G__38895,G__38896));\n})();\nif((x_43803 \x3d\x3d null)){\n} else {\ncljs.core.chunk_append(b,x_43803);\n}\n\nvar G__43807 \x3d (i_43802 + (1));\ni_43802 \x3d G__43807;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core.chunk_cons(cljs.core.chunk(b),cljs$core$keepi((idx + size),cljs.core.chunk_rest(s)));\n} else {\nvar x \x3d (function (){var G__38897 \x3d idx;\nvar G__38898 \x3d cljs.core.first(s);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38897,G__38898) : f.call(null,G__38897,G__38898));\n})();\nif((x \x3d\x3d null)){\nreturn cljs$core$keepi((idx + (1)),cljs.core.rest(s));\n} else {\nreturn cljs.core.cons(x,cljs$core$keepi((idx + (1)),cljs.core.rest(s)));\n}\n}\n} else {\nreturn null;\n}\n}),null,null));\n});\nreturn keepi((0),coll);\n}));\n\n(cljs.core.keep_indexed.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Takes a set of predicates and returns a function f that returns true if all of its\n *   composing predicates return a logical true value against all of its arguments, else it returns\n *   false. Note that f is short-circuiting in that it will stop execution on the first\n *   argument that triggers a logical false result against the original predicates.\n */\ncljs.core.every_pred \x3d (function cljs$core$every_pred(var_args){\nvar G__38910 \x3d arguments.length;\nswitch (G__38910) {\ncase 1:\nreturn cljs.core.every_pred.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.every_pred.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.every_pred.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43812 \x3d arguments.length;\nvar i__4772__auto___43813 \x3d (0);\nwhile(true){\nif((i__4772__auto___43813 \x3c len__4771__auto___43812)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43813]));\n\nvar G__43815 \x3d (i__4772__auto___43813 + (1));\ni__4772__auto___43813 \x3d G__43815;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.every_pred.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.every_pred.cljs$core$IFn$_invoke$arity$1 \x3d (function (p){\nreturn (function() {\nvar cljs$core$ep1 \x3d null;\nvar cljs$core$ep1__0 \x3d (function (){\nreturn true;\n});\nvar cljs$core$ep1__1 \x3d (function (x){\nreturn cljs.core.boolean$((p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(x) : p.call(null,x)));\n});\nvar cljs$core$ep1__2 \x3d (function (x,y){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(x) : p.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(y) : p.call(null,y));\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep1__3 \x3d (function (x,y,z){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(x) : p.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(y) : p.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(z) : p.call(null,z));\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep1__4 \x3d (function() { \nvar G__43816__delegate \x3d function (x,y,z,args){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d cljs$core$ep1.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.every_QMARK_(p,args);\n} else {\nreturn and__4149__auto__;\n}\n})());\n};\nvar G__43816 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43818__i \x3d 0, G__43818__a \x3d new Array(arguments.length -  3);\nwhile (G__43818__i \x3c G__43818__a.length) {G__43818__a[G__43818__i] \x3d arguments[G__43818__i + 3]; ++G__43818__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43818__a,0,null);\n} \nreturn G__43816__delegate.call(this,x,y,z,args);};\nG__43816.cljs$lang$maxFixedArity \x3d 3;\nG__43816.cljs$lang$applyTo \x3d (function (arglist__43819){\nvar x \x3d cljs.core.first(arglist__43819);\narglist__43819 \x3d cljs.core.next(arglist__43819);\nvar y \x3d cljs.core.first(arglist__43819);\narglist__43819 \x3d cljs.core.next(arglist__43819);\nvar z \x3d cljs.core.first(arglist__43819);\nvar args \x3d cljs.core.rest(arglist__43819);\nreturn G__43816__delegate(x,y,z,args);\n});\nG__43816.cljs$core$IFn$_invoke$arity$variadic \x3d G__43816__delegate;\nreturn G__43816;\n})()\n;\ncljs$core$ep1 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$ep1__0.call(this);\ncase 1:\nreturn cljs$core$ep1__1.call(this,x);\ncase 2:\nreturn cljs$core$ep1__2.call(this,x,y);\ncase 3:\nreturn cljs$core$ep1__3.call(this,x,y,z);\ndefault:\nvar G__43821 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43822__i \x3d 0, G__43822__a \x3d new Array(arguments.length -  3);\nwhile (G__43822__i \x3c G__43822__a.length) {G__43822__a[G__43822__i] \x3d arguments[G__43822__i + 3]; ++G__43822__i;}\nG__43821 \x3d new cljs.core.IndexedSeq(G__43822__a,0,null);\n}\nreturn cljs$core$ep1__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43821);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$ep1.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$ep1.cljs$lang$applyTo \x3d cljs$core$ep1__4.cljs$lang$applyTo;\ncljs$core$ep1.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$ep1__0;\ncljs$core$ep1.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$ep1__1;\ncljs$core$ep1.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$ep1__2;\ncljs$core$ep1.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$ep1__3;\ncljs$core$ep1.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$ep1__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$ep1;\n})()\n}));\n\n(cljs.core.every_pred.cljs$core$IFn$_invoke$arity$2 \x3d (function (p1,p2){\nreturn (function() {\nvar cljs$core$ep2 \x3d null;\nvar cljs$core$ep2__0 \x3d (function (){\nreturn true;\n});\nvar cljs$core$ep2__1 \x3d (function (x){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep2__2 \x3d (function (x,y){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$2)){\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep2__3 \x3d (function (x,y,z){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(z) : p1.call(null,z));\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$4)){\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(z) : p2.call(null,z));\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep2__4 \x3d (function() { \nvar G__43827__delegate \x3d function (x,y,z,args){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d cljs$core$ep2.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.every_QMARK_((function (p1__38899_SHARP_){\nvar and__4149__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(p1__38899_SHARP_) : p1.call(null,p1__38899_SHARP_));\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(p1__38899_SHARP_) : p2.call(null,p1__38899_SHARP_));\n} else {\nreturn and__4149__auto____$1;\n}\n}),args);\n} else {\nreturn and__4149__auto__;\n}\n})());\n};\nvar G__43827 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43828__i \x3d 0, G__43828__a \x3d new Array(arguments.length -  3);\nwhile (G__43828__i \x3c G__43828__a.length) {G__43828__a[G__43828__i] \x3d arguments[G__43828__i + 3]; ++G__43828__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43828__a,0,null);\n} \nreturn G__43827__delegate.call(this,x,y,z,args);};\nG__43827.cljs$lang$maxFixedArity \x3d 3;\nG__43827.cljs$lang$applyTo \x3d (function (arglist__43830){\nvar x \x3d cljs.core.first(arglist__43830);\narglist__43830 \x3d cljs.core.next(arglist__43830);\nvar y \x3d cljs.core.first(arglist__43830);\narglist__43830 \x3d cljs.core.next(arglist__43830);\nvar z \x3d cljs.core.first(arglist__43830);\nvar args \x3d cljs.core.rest(arglist__43830);\nreturn G__43827__delegate(x,y,z,args);\n});\nG__43827.cljs$core$IFn$_invoke$arity$variadic \x3d G__43827__delegate;\nreturn G__43827;\n})()\n;\ncljs$core$ep2 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$ep2__0.call(this);\ncase 1:\nreturn cljs$core$ep2__1.call(this,x);\ncase 2:\nreturn cljs$core$ep2__2.call(this,x,y);\ncase 3:\nreturn cljs$core$ep2__3.call(this,x,y,z);\ndefault:\nvar G__43838 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43840__i \x3d 0, G__43840__a \x3d new Array(arguments.length -  3);\nwhile (G__43840__i \x3c G__43840__a.length) {G__43840__a[G__43840__i] \x3d arguments[G__43840__i + 3]; ++G__43840__i;}\nG__43838 \x3d new cljs.core.IndexedSeq(G__43840__a,0,null);\n}\nreturn cljs$core$ep2__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43838);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$ep2.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$ep2.cljs$lang$applyTo \x3d cljs$core$ep2__4.cljs$lang$applyTo;\ncljs$core$ep2.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$ep2__0;\ncljs$core$ep2.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$ep2__1;\ncljs$core$ep2.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$ep2__2;\ncljs$core$ep2.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$ep2__3;\ncljs$core$ep2.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$ep2__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$ep2;\n})()\n}));\n\n(cljs.core.every_pred.cljs$core$IFn$_invoke$arity$3 \x3d (function (p1,p2,p3){\nreturn (function() {\nvar cljs$core$ep3 \x3d null;\nvar cljs$core$ep3__0 \x3d (function (){\nreturn true;\n});\nvar cljs$core$ep3__1 \x3d (function (x){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(x) : p3.call(null,x));\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep3__2 \x3d (function (x,y){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(x) : p3.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$4)){\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(y) : p3.call(null,y));\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep3__3 \x3d (function (x,y,z){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(x) : p3.call(null,x));\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(y) : p3.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(z) : p1.call(null,z));\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(z) : p2.call(null,z));\nif(cljs.core.truth_(and__4149__auto____$7)){\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(z) : p3.call(null,z));\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})());\n});\nvar cljs$core$ep3__4 \x3d (function() { \nvar G__43879__delegate \x3d function (x,y,z,args){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d cljs$core$ep3.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.every_QMARK_((function (p1__38900_SHARP_){\nvar and__4149__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(p1__38900_SHARP_) : p1.call(null,p1__38900_SHARP_));\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(p1__38900_SHARP_) : p2.call(null,p1__38900_SHARP_));\nif(cljs.core.truth_(and__4149__auto____$2)){\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(p1__38900_SHARP_) : p3.call(null,p1__38900_SHARP_));\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n}),args);\n} else {\nreturn and__4149__auto__;\n}\n})());\n};\nvar G__43879 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43884__i \x3d 0, G__43884__a \x3d new Array(arguments.length -  3);\nwhile (G__43884__i \x3c G__43884__a.length) {G__43884__a[G__43884__i] \x3d arguments[G__43884__i + 3]; ++G__43884__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43884__a,0,null);\n} \nreturn G__43879__delegate.call(this,x,y,z,args);};\nG__43879.cljs$lang$maxFixedArity \x3d 3;\nG__43879.cljs$lang$applyTo \x3d (function (arglist__43885){\nvar x \x3d cljs.core.first(arglist__43885);\narglist__43885 \x3d cljs.core.next(arglist__43885);\nvar y \x3d cljs.core.first(arglist__43885);\narglist__43885 \x3d cljs.core.next(arglist__43885);\nvar z \x3d cljs.core.first(arglist__43885);\nvar args \x3d cljs.core.rest(arglist__43885);\nreturn G__43879__delegate(x,y,z,args);\n});\nG__43879.cljs$core$IFn$_invoke$arity$variadic \x3d G__43879__delegate;\nreturn G__43879;\n})()\n;\ncljs$core$ep3 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$ep3__0.call(this);\ncase 1:\nreturn cljs$core$ep3__1.call(this,x);\ncase 2:\nreturn cljs$core$ep3__2.call(this,x,y);\ncase 3:\nreturn cljs$core$ep3__3.call(this,x,y,z);\ndefault:\nvar G__43899 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43901__i \x3d 0, G__43901__a \x3d new Array(arguments.length -  3);\nwhile (G__43901__i \x3c G__43901__a.length) {G__43901__a[G__43901__i] \x3d arguments[G__43901__i + 3]; ++G__43901__i;}\nG__43899 \x3d new cljs.core.IndexedSeq(G__43901__a,0,null);\n}\nreturn cljs$core$ep3__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43899);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$ep3.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$ep3.cljs$lang$applyTo \x3d cljs$core$ep3__4.cljs$lang$applyTo;\ncljs$core$ep3.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$ep3__0;\ncljs$core$ep3.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$ep3__1;\ncljs$core$ep3.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$ep3__2;\ncljs$core$ep3.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$ep3__3;\ncljs$core$ep3.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$ep3__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$ep3;\n})()\n}));\n\n(cljs.core.every_pred.cljs$core$IFn$_invoke$arity$variadic \x3d (function (p1,p2,p3,ps){\nvar ps__$1 \x3d cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4(p1,p2,p3,ps);\nreturn (function() {\nvar cljs$core$epn \x3d null;\nvar cljs$core$epn__0 \x3d (function (){\nreturn true;\n});\nvar cljs$core$epn__1 \x3d (function (x){\nreturn cljs.core.every_QMARK_((function (p1__38901_SHARP_){\nreturn (p1__38901_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38901_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p1__38901_SHARP_.call(null,x));\n}),ps__$1);\n});\nvar cljs$core$epn__2 \x3d (function (x,y){\nreturn cljs.core.every_QMARK_((function (p1__38902_SHARP_){\nvar and__4149__auto__ \x3d (p1__38902_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38902_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p1__38902_SHARP_.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (p1__38902_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38902_SHARP_.cljs$core$IFn$_invoke$arity$1(y) : p1__38902_SHARP_.call(null,y));\n} else {\nreturn and__4149__auto__;\n}\n}),ps__$1);\n});\nvar cljs$core$epn__3 \x3d (function (x,y,z){\nreturn cljs.core.every_QMARK_((function (p1__38903_SHARP_){\nvar and__4149__auto__ \x3d (p1__38903_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38903_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p1__38903_SHARP_.call(null,x));\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d (p1__38903_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38903_SHARP_.cljs$core$IFn$_invoke$arity$1(y) : p1__38903_SHARP_.call(null,y));\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn (p1__38903_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38903_SHARP_.cljs$core$IFn$_invoke$arity$1(z) : p1__38903_SHARP_.call(null,z));\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),ps__$1);\n});\nvar cljs$core$epn__4 \x3d (function() { \nvar G__43909__delegate \x3d function (x,y,z,args){\nreturn cljs.core.boolean$((function (){var and__4149__auto__ \x3d cljs$core$epn.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.every_QMARK_((function (p1__38904_SHARP_){\nreturn cljs.core.every_QMARK_(p1__38904_SHARP_,args);\n}),ps__$1);\n} else {\nreturn and__4149__auto__;\n}\n})());\n};\nvar G__43909 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43912__i \x3d 0, G__43912__a \x3d new Array(arguments.length -  3);\nwhile (G__43912__i \x3c G__43912__a.length) {G__43912__a[G__43912__i] \x3d arguments[G__43912__i + 3]; ++G__43912__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43912__a,0,null);\n} \nreturn G__43909__delegate.call(this,x,y,z,args);};\nG__43909.cljs$lang$maxFixedArity \x3d 3;\nG__43909.cljs$lang$applyTo \x3d (function (arglist__43913){\nvar x \x3d cljs.core.first(arglist__43913);\narglist__43913 \x3d cljs.core.next(arglist__43913);\nvar y \x3d cljs.core.first(arglist__43913);\narglist__43913 \x3d cljs.core.next(arglist__43913);\nvar z \x3d cljs.core.first(arglist__43913);\nvar args \x3d cljs.core.rest(arglist__43913);\nreturn G__43909__delegate(x,y,z,args);\n});\nG__43909.cljs$core$IFn$_invoke$arity$variadic \x3d G__43909__delegate;\nreturn G__43909;\n})()\n;\ncljs$core$epn \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$epn__0.call(this);\ncase 1:\nreturn cljs$core$epn__1.call(this,x);\ncase 2:\nreturn cljs$core$epn__2.call(this,x,y);\ncase 3:\nreturn cljs$core$epn__3.call(this,x,y,z);\ndefault:\nvar G__43919 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43920__i \x3d 0, G__43920__a \x3d new Array(arguments.length -  3);\nwhile (G__43920__i \x3c G__43920__a.length) {G__43920__a[G__43920__i] \x3d arguments[G__43920__i + 3]; ++G__43920__i;}\nG__43919 \x3d new cljs.core.IndexedSeq(G__43920__a,0,null);\n}\nreturn cljs$core$epn__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43919);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$epn.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$epn.cljs$lang$applyTo \x3d cljs$core$epn__4.cljs$lang$applyTo;\ncljs$core$epn.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$epn__0;\ncljs$core$epn.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$epn__1;\ncljs$core$epn.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$epn__2;\ncljs$core$epn.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$epn__3;\ncljs$core$epn.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$epn__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$epn;\n})()\n}));\n\n/** @this {Function} */\n(cljs.core.every_pred.cljs$lang$applyTo \x3d (function (seq38906){\nvar G__38907 \x3d cljs.core.first(seq38906);\nvar seq38906__$1 \x3d cljs.core.next(seq38906);\nvar G__38908 \x3d cljs.core.first(seq38906__$1);\nvar seq38906__$2 \x3d cljs.core.next(seq38906__$1);\nvar G__38909 \x3d cljs.core.first(seq38906__$2);\nvar seq38906__$3 \x3d cljs.core.next(seq38906__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38907,G__38908,G__38909,seq38906__$3);\n}));\n\n(cljs.core.every_pred.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Takes a set of predicates and returns a function f that returns the first logical true value\n *   returned by one of its composing predicates against any of its arguments, else it returns\n *   logical false. Note that f is short-circuiting in that it will stop execution on the first\n *   argument that triggers a logical true result against the original predicates.\n */\ncljs.core.some_fn \x3d (function cljs$core$some_fn(var_args){\nvar G__38922 \x3d arguments.length;\nswitch (G__38922) {\ncase 1:\nreturn cljs.core.some_fn.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.some_fn.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.some_fn.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___43927 \x3d arguments.length;\nvar i__4772__auto___43928 \x3d (0);\nwhile(true){\nif((i__4772__auto___43928 \x3c len__4771__auto___43927)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___43928]));\n\nvar G__43930 \x3d (i__4772__auto___43928 + (1));\ni__4772__auto___43928 \x3d G__43930;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.some_fn.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.some_fn.cljs$core$IFn$_invoke$arity$1 \x3d (function (p){\nreturn (function() {\nvar cljs$core$sp1 \x3d null;\nvar cljs$core$sp1__0 \x3d (function (){\nreturn null;\n});\nvar cljs$core$sp1__1 \x3d (function (x){\nreturn (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(x) : p.call(null,x));\n});\nvar cljs$core$sp1__2 \x3d (function (x,y){\nvar or__4160__auto__ \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(x) : p.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(y) : p.call(null,y));\n}\n});\nvar cljs$core$sp1__3 \x3d (function (x,y,z){\nvar or__4160__auto__ \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(x) : p.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(y) : p.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(z) : p.call(null,z));\n}\n}\n});\nvar cljs$core$sp1__4 \x3d (function() { \nvar G__43960__delegate \x3d function (x,y,z,args){\nvar or__4160__auto__ \x3d cljs$core$sp1.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.some(p,args);\n}\n};\nvar G__43960 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43962__i \x3d 0, G__43962__a \x3d new Array(arguments.length -  3);\nwhile (G__43962__i \x3c G__43962__a.length) {G__43962__a[G__43962__i] \x3d arguments[G__43962__i + 3]; ++G__43962__i;}\n  args \x3d new cljs.core.IndexedSeq(G__43962__a,0,null);\n} \nreturn G__43960__delegate.call(this,x,y,z,args);};\nG__43960.cljs$lang$maxFixedArity \x3d 3;\nG__43960.cljs$lang$applyTo \x3d (function (arglist__43972){\nvar x \x3d cljs.core.first(arglist__43972);\narglist__43972 \x3d cljs.core.next(arglist__43972);\nvar y \x3d cljs.core.first(arglist__43972);\narglist__43972 \x3d cljs.core.next(arglist__43972);\nvar z \x3d cljs.core.first(arglist__43972);\nvar args \x3d cljs.core.rest(arglist__43972);\nreturn G__43960__delegate(x,y,z,args);\n});\nG__43960.cljs$core$IFn$_invoke$arity$variadic \x3d G__43960__delegate;\nreturn G__43960;\n})()\n;\ncljs$core$sp1 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$sp1__0.call(this);\ncase 1:\nreturn cljs$core$sp1__1.call(this,x);\ncase 2:\nreturn cljs$core$sp1__2.call(this,x,y);\ncase 3:\nreturn cljs$core$sp1__3.call(this,x,y,z);\ndefault:\nvar G__43976 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__43978__i \x3d 0, G__43978__a \x3d new Array(arguments.length -  3);\nwhile (G__43978__i \x3c G__43978__a.length) {G__43978__a[G__43978__i] \x3d arguments[G__43978__i + 3]; ++G__43978__i;}\nG__43976 \x3d new cljs.core.IndexedSeq(G__43978__a,0,null);\n}\nreturn cljs$core$sp1__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__43976);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$sp1.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$sp1.cljs$lang$applyTo \x3d cljs$core$sp1__4.cljs$lang$applyTo;\ncljs$core$sp1.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$sp1__0;\ncljs$core$sp1.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$sp1__1;\ncljs$core$sp1.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$sp1__2;\ncljs$core$sp1.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$sp1__3;\ncljs$core$sp1.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$sp1__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$sp1;\n})()\n}));\n\n(cljs.core.some_fn.cljs$core$IFn$_invoke$arity$2 \x3d (function (p1,p2){\nreturn (function() {\nvar cljs$core$sp2 \x3d null;\nvar cljs$core$sp2__0 \x3d (function (){\nreturn null;\n});\nvar cljs$core$sp2__1 \x3d (function (x){\nvar or__4160__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\n}\n});\nvar cljs$core$sp2__2 \x3d (function (x,y){\nvar or__4160__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\n}\n}\n}\n});\nvar cljs$core$sp2__3 \x3d (function (x,y,z){\nvar or__4160__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(z) : p1.call(null,z));\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(z) : p2.call(null,z));\n}\n}\n}\n}\n}\n});\nvar cljs$core$sp2__4 \x3d (function() { \nvar G__43997__delegate \x3d function (x,y,z,args){\nvar or__4160__auto__ \x3d cljs$core$sp2.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.some((function (p1__38911_SHARP_){\nvar or__4160__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(p1__38911_SHARP_) : p1.call(null,p1__38911_SHARP_));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(p1__38911_SHARP_) : p2.call(null,p1__38911_SHARP_));\n}\n}),args);\n}\n};\nvar G__43997 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__44005__i \x3d 0, G__44005__a \x3d new Array(arguments.length -  3);\nwhile (G__44005__i \x3c G__44005__a.length) {G__44005__a[G__44005__i] \x3d arguments[G__44005__i + 3]; ++G__44005__i;}\n  args \x3d new cljs.core.IndexedSeq(G__44005__a,0,null);\n} \nreturn G__43997__delegate.call(this,x,y,z,args);};\nG__43997.cljs$lang$maxFixedArity \x3d 3;\nG__43997.cljs$lang$applyTo \x3d (function (arglist__44006){\nvar x \x3d cljs.core.first(arglist__44006);\narglist__44006 \x3d cljs.core.next(arglist__44006);\nvar y \x3d cljs.core.first(arglist__44006);\narglist__44006 \x3d cljs.core.next(arglist__44006);\nvar z \x3d cljs.core.first(arglist__44006);\nvar args \x3d cljs.core.rest(arglist__44006);\nreturn G__43997__delegate(x,y,z,args);\n});\nG__43997.cljs$core$IFn$_invoke$arity$variadic \x3d G__43997__delegate;\nreturn G__43997;\n})()\n;\ncljs$core$sp2 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$sp2__0.call(this);\ncase 1:\nreturn cljs$core$sp2__1.call(this,x);\ncase 2:\nreturn cljs$core$sp2__2.call(this,x,y);\ncase 3:\nreturn cljs$core$sp2__3.call(this,x,y,z);\ndefault:\nvar G__44009 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__44010__i \x3d 0, G__44010__a \x3d new Array(arguments.length -  3);\nwhile (G__44010__i \x3c G__44010__a.length) {G__44010__a[G__44010__i] \x3d arguments[G__44010__i + 3]; ++G__44010__i;}\nG__44009 \x3d new cljs.core.IndexedSeq(G__44010__a,0,null);\n}\nreturn cljs$core$sp2__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__44009);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$sp2.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$sp2.cljs$lang$applyTo \x3d cljs$core$sp2__4.cljs$lang$applyTo;\ncljs$core$sp2.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$sp2__0;\ncljs$core$sp2.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$sp2__1;\ncljs$core$sp2.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$sp2__2;\ncljs$core$sp2.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$sp2__3;\ncljs$core$sp2.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$sp2__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$sp2;\n})()\n}));\n\n(cljs.core.some_fn.cljs$core$IFn$_invoke$arity$3 \x3d (function (p1,p2,p3){\nreturn (function() {\nvar cljs$core$sp3 \x3d null;\nvar cljs$core$sp3__0 \x3d (function (){\nreturn null;\n});\nvar cljs$core$sp3__1 \x3d (function (x){\nvar or__4160__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(x) : p3.call(null,x));\n}\n}\n});\nvar cljs$core$sp3__2 \x3d (function (x,y){\nvar or__4160__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(x) : p3.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(y) : p3.call(null,y));\n}\n}\n}\n}\n}\n});\nvar cljs$core$sp3__3 \x3d (function (x,y,z){\nvar or__4160__auto__ \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(x) : p1.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(x) : p2.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(x) : p3.call(null,x));\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(y) : p1.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(y) : p2.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(y) : p3.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(z) : p1.call(null,z));\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(z) : p2.call(null,z));\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(z) : p3.call(null,z));\n}\n}\n}\n}\n}\n}\n}\n}\n});\nvar cljs$core$sp3__4 \x3d (function() { \nvar G__44037__delegate \x3d function (x,y,z,args){\nvar or__4160__auto__ \x3d cljs$core$sp3.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.some((function (p1__38912_SHARP_){\nvar or__4160__auto____$1 \x3d (p1.cljs$core$IFn$_invoke$arity$1 ? p1.cljs$core$IFn$_invoke$arity$1(p1__38912_SHARP_) : p1.call(null,p1__38912_SHARP_));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (p2.cljs$core$IFn$_invoke$arity$1 ? p2.cljs$core$IFn$_invoke$arity$1(p1__38912_SHARP_) : p2.call(null,p1__38912_SHARP_));\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nreturn (p3.cljs$core$IFn$_invoke$arity$1 ? p3.cljs$core$IFn$_invoke$arity$1(p1__38912_SHARP_) : p3.call(null,p1__38912_SHARP_));\n}\n}\n}),args);\n}\n};\nvar G__44037 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__44047__i \x3d 0, G__44047__a \x3d new Array(arguments.length -  3);\nwhile (G__44047__i \x3c G__44047__a.length) {G__44047__a[G__44047__i] \x3d arguments[G__44047__i + 3]; ++G__44047__i;}\n  args \x3d new cljs.core.IndexedSeq(G__44047__a,0,null);\n} \nreturn G__44037__delegate.call(this,x,y,z,args);};\nG__44037.cljs$lang$maxFixedArity \x3d 3;\nG__44037.cljs$lang$applyTo \x3d (function (arglist__44049){\nvar x \x3d cljs.core.first(arglist__44049);\narglist__44049 \x3d cljs.core.next(arglist__44049);\nvar y \x3d cljs.core.first(arglist__44049);\narglist__44049 \x3d cljs.core.next(arglist__44049);\nvar z \x3d cljs.core.first(arglist__44049);\nvar args \x3d cljs.core.rest(arglist__44049);\nreturn G__44037__delegate(x,y,z,args);\n});\nG__44037.cljs$core$IFn$_invoke$arity$variadic \x3d G__44037__delegate;\nreturn G__44037;\n})()\n;\ncljs$core$sp3 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$sp3__0.call(this);\ncase 1:\nreturn cljs$core$sp3__1.call(this,x);\ncase 2:\nreturn cljs$core$sp3__2.call(this,x,y);\ncase 3:\nreturn cljs$core$sp3__3.call(this,x,y,z);\ndefault:\nvar G__44054 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__44055__i \x3d 0, G__44055__a \x3d new Array(arguments.length -  3);\nwhile (G__44055__i \x3c G__44055__a.length) {G__44055__a[G__44055__i] \x3d arguments[G__44055__i + 3]; ++G__44055__i;}\nG__44054 \x3d new cljs.core.IndexedSeq(G__44055__a,0,null);\n}\nreturn cljs$core$sp3__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__44054);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$sp3.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$sp3.cljs$lang$applyTo \x3d cljs$core$sp3__4.cljs$lang$applyTo;\ncljs$core$sp3.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$sp3__0;\ncljs$core$sp3.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$sp3__1;\ncljs$core$sp3.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$sp3__2;\ncljs$core$sp3.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$sp3__3;\ncljs$core$sp3.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$sp3__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$sp3;\n})()\n}));\n\n(cljs.core.some_fn.cljs$core$IFn$_invoke$arity$variadic \x3d (function (p1,p2,p3,ps){\nvar ps__$1 \x3d cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4(p1,p2,p3,ps);\nreturn (function() {\nvar cljs$core$spn \x3d null;\nvar cljs$core$spn__0 \x3d (function (){\nreturn null;\n});\nvar cljs$core$spn__1 \x3d (function (x){\nreturn cljs.core.some((function (p1__38913_SHARP_){\nreturn (p1__38913_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38913_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p1__38913_SHARP_.call(null,x));\n}),ps__$1);\n});\nvar cljs$core$spn__2 \x3d (function (x,y){\nreturn cljs.core.some((function (p1__38914_SHARP_){\nvar or__4160__auto__ \x3d (p1__38914_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38914_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p1__38914_SHARP_.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (p1__38914_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38914_SHARP_.cljs$core$IFn$_invoke$arity$1(y) : p1__38914_SHARP_.call(null,y));\n}\n}),ps__$1);\n});\nvar cljs$core$spn__3 \x3d (function (x,y,z){\nreturn cljs.core.some((function (p1__38915_SHARP_){\nvar or__4160__auto__ \x3d (p1__38915_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38915_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p1__38915_SHARP_.call(null,x));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (p1__38915_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38915_SHARP_.cljs$core$IFn$_invoke$arity$1(y) : p1__38915_SHARP_.call(null,y));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (p1__38915_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__38915_SHARP_.cljs$core$IFn$_invoke$arity$1(z) : p1__38915_SHARP_.call(null,z));\n}\n}\n}),ps__$1);\n});\nvar cljs$core$spn__4 \x3d (function() { \nvar G__44069__delegate \x3d function (x,y,z,args){\nvar or__4160__auto__ \x3d cljs$core$spn.cljs$core$IFn$_invoke$arity$3(x,y,z);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.some((function (p1__38916_SHARP_){\nreturn cljs.core.some(p1__38916_SHARP_,args);\n}),ps__$1);\n}\n};\nvar G__44069 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__44071__i \x3d 0, G__44071__a \x3d new Array(arguments.length -  3);\nwhile (G__44071__i \x3c G__44071__a.length) {G__44071__a[G__44071__i] \x3d arguments[G__44071__i + 3]; ++G__44071__i;}\n  args \x3d new cljs.core.IndexedSeq(G__44071__a,0,null);\n} \nreturn G__44069__delegate.call(this,x,y,z,args);};\nG__44069.cljs$lang$maxFixedArity \x3d 3;\nG__44069.cljs$lang$applyTo \x3d (function (arglist__44073){\nvar x \x3d cljs.core.first(arglist__44073);\narglist__44073 \x3d cljs.core.next(arglist__44073);\nvar y \x3d cljs.core.first(arglist__44073);\narglist__44073 \x3d cljs.core.next(arglist__44073);\nvar z \x3d cljs.core.first(arglist__44073);\nvar args \x3d cljs.core.rest(arglist__44073);\nreturn G__44069__delegate(x,y,z,args);\n});\nG__44069.cljs$core$IFn$_invoke$arity$variadic \x3d G__44069__delegate;\nreturn G__44069;\n})()\n;\ncljs$core$spn \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$spn__0.call(this);\ncase 1:\nreturn cljs$core$spn__1.call(this,x);\ncase 2:\nreturn cljs$core$spn__2.call(this,x,y);\ncase 3:\nreturn cljs$core$spn__3.call(this,x,y,z);\ndefault:\nvar G__44080 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__44082__i \x3d 0, G__44082__a \x3d new Array(arguments.length -  3);\nwhile (G__44082__i \x3c G__44082__a.length) {G__44082__a[G__44082__i] \x3d arguments[G__44082__i + 3]; ++G__44082__i;}\nG__44080 \x3d new cljs.core.IndexedSeq(G__44082__a,0,null);\n}\nreturn cljs$core$spn__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__44080);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$spn.cljs$lang$maxFixedArity \x3d 3;\ncljs$core$spn.cljs$lang$applyTo \x3d cljs$core$spn__4.cljs$lang$applyTo;\ncljs$core$spn.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$spn__0;\ncljs$core$spn.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$spn__1;\ncljs$core$spn.cljs$core$IFn$_invoke$arity$2 \x3d cljs$core$spn__2;\ncljs$core$spn.cljs$core$IFn$_invoke$arity$3 \x3d cljs$core$spn__3;\ncljs$core$spn.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$spn__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn cljs$core$spn;\n})()\n}));\n\n/** @this {Function} */\n(cljs.core.some_fn.cljs$lang$applyTo \x3d (function (seq38918){\nvar G__38919 \x3d cljs.core.first(seq38918);\nvar seq38918__$1 \x3d cljs.core.next(seq38918);\nvar G__38920 \x3d cljs.core.first(seq38918__$1);\nvar seq38918__$2 \x3d cljs.core.next(seq38918__$1);\nvar G__38921 \x3d cljs.core.first(seq38918__$2);\nvar seq38918__$3 \x3d cljs.core.next(seq38918__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38919,G__38920,G__38921,seq38918__$3);\n}));\n\n(cljs.core.some_fn.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Returns a lazy sequence consisting of the result of applying f to\n *   the set of first items of each coll, followed by applying f to the\n *   set of second items in each coll, until any one of the colls is\n *   exhausted.  Any remaining items in other colls are ignored. Function\n *   f should accept number-of-colls arguments. Returns a transducer when\n *   no collection is provided.\n */\ncljs.core.map \x3d (function cljs$core$map(var_args){\nvar G__38930 \x3d arguments.length;\nswitch (G__38930) {\ncase 1:\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___44086 \x3d arguments.length;\nvar i__4772__auto___44088 \x3d (0);\nwhile(true){\nif((i__4772__auto___44088 \x3c len__4771__auto___44086)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___44088]));\n\nvar G__44097 \x3d (i__4772__auto___44088 + (1));\ni__4772__auto___44088 \x3d G__44097;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.map.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (function (rf){\nreturn (function() {\nvar G__44105 \x3d null;\nvar G__44105__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__44105__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__44105__2 \x3d (function (result,input){\nvar G__38931 \x3d result;\nvar G__38932 \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(input) : f.call(null,input));\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(G__38931,G__38932) : rf.call(null,G__38931,G__38932));\n});\nvar G__44105__3 \x3d (function() { \nvar G__44126__delegate \x3d function (result,input,inputs){\nvar G__38933 \x3d result;\nvar G__38934 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$3(f,input,inputs);\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(G__38933,G__38934) : rf.call(null,G__38933,G__38934));\n};\nvar G__44126 \x3d function (result,input,var_args){\nvar inputs \x3d null;\nif (arguments.length \x3e 2) {\nvar G__44130__i \x3d 0, G__44130__a \x3d new Array(arguments.length -  2);\nwhile (G__44130__i \x3c G__44130__a.length) {G__44130__a[G__44130__i] \x3d arguments[G__44130__i + 2]; ++G__44130__i;}\n  inputs \x3d new cljs.core.IndexedSeq(G__44130__a,0,null);\n} \nreturn G__44126__delegate.call(this,result,input,inputs);};\nG__44126.cljs$lang$maxFixedArity \x3d 2;\nG__44126.cljs$lang$applyTo \x3d (function (arglist__44131){\nvar result \x3d cljs.core.first(arglist__44131);\narglist__44131 \x3d cljs.core.next(arglist__44131);\nvar input \x3d cljs.core.first(arglist__44131);\nvar inputs \x3d cljs.core.rest(arglist__44131);\nreturn G__44126__delegate(result,input,inputs);\n});\nG__44126.cljs$core$IFn$_invoke$arity$variadic \x3d G__44126__delegate;\nreturn G__44126;\n})()\n;\nG__44105 \x3d function(result,input,var_args){\nvar inputs \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__44105__0.call(this);\ncase 1:\nreturn G__44105__1.call(this,result);\ncase 2:\nreturn G__44105__2.call(this,result,input);\ndefault:\nvar G__44135 \x3d null;\nif (arguments.length \x3e 2) {\nvar G__44136__i \x3d 0, G__44136__a \x3d new Array(arguments.length -  2);\nwhile (G__44136__i \x3c G__44136__a.length) {G__44136__a[G__44136__i] \x3d arguments[G__44136__i + 2]; ++G__44136__i;}\nG__44135 \x3d new cljs.core.IndexedSeq(G__44136__a,0,null);\n}\nreturn G__44105__3.cljs$core$IFn$_invoke$arity$variadic(result,input, G__44135);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44105.cljs$lang$maxFixedArity \x3d 2;\nG__44105.cljs$lang$applyTo \x3d G__44105__3.cljs$lang$applyTo;\nG__44105.cljs$core$IFn$_invoke$arity$0 \x3d G__44105__0;\nG__44105.cljs$core$IFn$_invoke$arity$1 \x3d G__44105__1;\nG__44105.cljs$core$IFn$_invoke$arity$2 \x3d G__44105__2;\nG__44105.cljs$core$IFn$_invoke$arity$variadic \x3d G__44105__3.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__44105;\n})()\n});\n}));\n\n(cljs.core.map.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s)){\nvar c \x3d cljs.core.chunk_first(s);\nvar size \x3d cljs.core.count(c);\nvar b \x3d cljs.core.chunk_buffer(size);\nvar n__4648__auto___44140 \x3d size;\nvar i_44141 \x3d (0);\nwhile(true){\nif((i_44141 \x3c n__4648__auto___44140)){\ncljs.core.chunk_append(b,(function (){var G__38935 \x3d cljs.core._nth(c,i_44141);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38935) : f.call(null,G__38935));\n})());\n\nvar G__44144 \x3d (i_44141 + (1));\ni_44141 \x3d G__44144;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core.chunk_cons(cljs.core.chunk(b),cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,cljs.core.chunk_rest(s)));\n} else {\nreturn cljs.core.cons((function (){var G__38936 \x3d cljs.core.first(s);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__38936) : f.call(null,G__38936));\n})(),cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,cljs.core.rest(s)));\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.map.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,c1,c2){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s1 \x3d cljs.core.seq(c1);\nvar s2 \x3d cljs.core.seq(c2);\nif(((s1) \x26\x26 (s2))){\nreturn cljs.core.cons((function (){var G__38937 \x3d cljs.core.first(s1);\nvar G__38938 \x3d cljs.core.first(s2);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38937,G__38938) : f.call(null,G__38937,G__38938));\n})(),cljs.core.map.cljs$core$IFn$_invoke$arity$3(f,cljs.core.rest(s1),cljs.core.rest(s2)));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.map.cljs$core$IFn$_invoke$arity$4 \x3d (function (f,c1,c2,c3){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s1 \x3d cljs.core.seq(c1);\nvar s2 \x3d cljs.core.seq(c2);\nvar s3 \x3d cljs.core.seq(c3);\nif(((s1) \x26\x26 (s2) \x26\x26 (s3))){\nreturn cljs.core.cons((function (){var G__38939 \x3d cljs.core.first(s1);\nvar G__38940 \x3d cljs.core.first(s2);\nvar G__38941 \x3d cljs.core.first(s3);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__38939,G__38940,G__38941) : f.call(null,G__38939,G__38940,G__38941));\n})(),cljs.core.map.cljs$core$IFn$_invoke$arity$4(f,cljs.core.rest(s1),cljs.core.rest(s2),cljs.core.rest(s3)));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,c1,c2,c3,colls){\nvar step \x3d (function cljs$core$step(cs){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar ss \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.seq,cs);\nif(cljs.core.every_QMARK_(cljs.core.identity,ss)){\nreturn cljs.core.cons(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,ss),cljs$core$step(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.rest,ss)));\n} else {\nreturn null;\n}\n}),null,null));\n});\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__38923_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,p1__38923_SHARP_);\n}),step(cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(colls,c3,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([c2,c1], 0))));\n}));\n\n/** @this {Function} */\n(cljs.core.map.cljs$lang$applyTo \x3d (function (seq38925){\nvar G__38926 \x3d cljs.core.first(seq38925);\nvar seq38925__$1 \x3d cljs.core.next(seq38925);\nvar G__38927 \x3d cljs.core.first(seq38925__$1);\nvar seq38925__$2 \x3d cljs.core.next(seq38925__$1);\nvar G__38928 \x3d cljs.core.first(seq38925__$2);\nvar seq38925__$3 \x3d cljs.core.next(seq38925__$2);\nvar G__38929 \x3d cljs.core.first(seq38925__$3);\nvar seq38925__$4 \x3d cljs.core.next(seq38925__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38926,G__38927,G__38928,G__38929,seq38925__$4);\n}));\n\n(cljs.core.map.cljs$lang$maxFixedArity \x3d (4));\n\n/**\n * Returns a lazy sequence of the first n items in coll, or all items if\n *   there are fewer than n.  Returns a stateful transducer when\n *   no collection is provided.\n */\ncljs.core.take \x3d (function cljs$core$take(var_args){\nvar G__38943 \x3d arguments.length;\nswitch (G__38943) {\ncase 1:\nreturn cljs.core.take.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.take.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.take.cljs$core$IFn$_invoke$arity$1 \x3d (function (n){\nif(typeof n \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? n)\x22));\n}\n\nreturn (function (rf){\nvar na \x3d cljs.core.volatile_BANG_(n);\nreturn (function() {\nvar G__44178 \x3d null;\nvar G__44178__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__44178__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__44178__2 \x3d (function (result,input){\nvar n__$1 \x3d cljs.core.deref(na);\nvar nn \x3d na.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,(na.cljs$core$IDeref$_deref$arity$1(null) - (1)));\nvar result__$1 \x3d (((n__$1 \x3e (0)))?(rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input)):result);\nif((!((nn \x3e (0))))){\nreturn cljs.core.ensure_reduced(result__$1);\n} else {\nreturn result__$1;\n}\n});\nG__44178 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__44178__0.call(this);\ncase 1:\nreturn G__44178__1.call(this,result);\ncase 2:\nreturn G__44178__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44178.cljs$core$IFn$_invoke$arity$0 \x3d G__44178__0;\nG__44178.cljs$core$IFn$_invoke$arity$1 \x3d G__44178__1;\nG__44178.cljs$core$IFn$_invoke$arity$2 \x3d G__44178__2;\nreturn G__44178;\n})()\n});\n}));\n\n(cljs.core.take.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\nif(typeof n \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? n)\x22));\n}\n\nreturn (new cljs.core.LazySeq(null,(function (){\nif((n \x3e (0))){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nreturn cljs.core.cons(cljs.core.first(s),cljs.core.take.cljs$core$IFn$_invoke$arity$2((n - (1)),cljs.core.rest(s)));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.take.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a lazy sequence of all but the first n items in coll.\n *   Returns a stateful transducer when no collection is provided.\n */\ncljs.core.drop \x3d (function cljs$core$drop(var_args){\nvar G__38945 \x3d arguments.length;\nswitch (G__38945) {\ncase 1:\nreturn cljs.core.drop.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.drop.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.drop.cljs$core$IFn$_invoke$arity$1 \x3d (function (n){\nif(typeof n \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? n)\x22));\n}\n\nreturn (function (rf){\nvar na \x3d cljs.core.volatile_BANG_(n);\nreturn (function() {\nvar G__44221 \x3d null;\nvar G__44221__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__44221__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__44221__2 \x3d (function (result,input){\nvar n__$1 \x3d cljs.core.deref(na);\nna.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,(na.cljs$core$IDeref$_deref$arity$1(null) - (1)));\n\nif((n__$1 \x3e (0))){\nreturn result;\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n}\n});\nG__44221 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__44221__0.call(this);\ncase 1:\nreturn G__44221__1.call(this,result);\ncase 2:\nreturn G__44221__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44221.cljs$core$IFn$_invoke$arity$0 \x3d G__44221__0;\nG__44221.cljs$core$IFn$_invoke$arity$1 \x3d G__44221__1;\nG__44221.cljs$core$IFn$_invoke$arity$2 \x3d G__44221__2;\nreturn G__44221;\n})()\n});\n}));\n\n(cljs.core.drop.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\nif(typeof n \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? n)\x22));\n}\n\nvar step \x3d (function (n__$1,coll__$1){\nwhile(true){\nvar s \x3d cljs.core.seq(coll__$1);\nif((((n__$1 \x3e (0))) \x26\x26 (s))){\nvar G__44232 \x3d (n__$1 - (1));\nvar G__44233 \x3d cljs.core.rest(s);\nn__$1 \x3d G__44232;\ncoll__$1 \x3d G__44233;\ncontinue;\n} else {\nreturn s;\n}\nbreak;\n}\n});\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn step(n,coll);\n}),null,null));\n}));\n\n(cljs.core.drop.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Return a lazy sequence of all but the last n (default 1) items in coll\n */\ncljs.core.drop_last \x3d (function cljs$core$drop_last(var_args){\nvar G__38947 \x3d arguments.length;\nswitch (G__38947) {\ncase 1:\nreturn cljs.core.drop_last.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.drop_last.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2((1),s);\n}));\n\n(cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,s){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (x,_){\nreturn x;\n}),s,cljs.core.drop.cljs$core$IFn$_invoke$arity$2(n,s));\n}));\n\n(cljs.core.drop_last.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a seq of the last n items in coll.  Depending on the type\n *   of coll may be no better than linear time.  For vectors, see also subvec.\n */\ncljs.core.take_last \x3d (function cljs$core$take_last(n,coll){\nvar s \x3d cljs.core.seq(coll);\nvar lead \x3d cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2(n,coll));\nwhile(true){\nif(lead){\nvar G__44239 \x3d cljs.core.next(s);\nvar G__44240 \x3d cljs.core.next(lead);\ns \x3d G__44239;\nlead \x3d G__44240;\ncontinue;\n} else {\nreturn s;\n}\nbreak;\n}\n});\n/**\n * Returns a lazy sequence of the items in coll starting from the\n *   first item for which (pred item) returns logical false.  Returns a\n *   stateful transducer when no collection is provided.\n */\ncljs.core.drop_while \x3d (function cljs$core$drop_while(var_args){\nvar G__38949 \x3d arguments.length;\nswitch (G__38949) {\ncase 1:\nreturn cljs.core.drop_while.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.drop_while.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.drop_while.cljs$core$IFn$_invoke$arity$1 \x3d (function (pred){\nreturn (function (rf){\nvar da \x3d cljs.core.volatile_BANG_(true);\nreturn (function() {\nvar G__44248 \x3d null;\nvar G__44248__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__44248__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__44248__2 \x3d (function (result,input){\nvar drop_QMARK_ \x3d cljs.core.deref(da);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d drop_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(input) : pred.call(null,input));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn result;\n} else {\ncljs.core.vreset_BANG_(da,null);\n\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n}\n});\nG__44248 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__44248__0.call(this);\ncase 1:\nreturn G__44248__1.call(this,result);\ncase 2:\nreturn G__44248__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44248.cljs$core$IFn$_invoke$arity$0 \x3d G__44248__0;\nG__44248.cljs$core$IFn$_invoke$arity$1 \x3d G__44248__1;\nG__44248.cljs$core$IFn$_invoke$arity$2 \x3d G__44248__2;\nreturn G__44248;\n})()\n});\n}));\n\n(cljs.core.drop_while.cljs$core$IFn$_invoke$arity$2 \x3d (function (pred,coll){\nvar step \x3d (function (pred__$1,coll__$1){\nwhile(true){\nvar s \x3d cljs.core.seq(coll__$1);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d s;\nif(and__4149__auto__){\nvar G__38951 \x3d cljs.core.first(s);\nreturn (pred__$1.cljs$core$IFn$_invoke$arity$1 ? pred__$1.cljs$core$IFn$_invoke$arity$1(G__38951) : pred__$1.call(null,G__38951));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar G__44254 \x3d pred__$1;\nvar G__44255 \x3d cljs.core.rest(s);\npred__$1 \x3d G__44254;\ncoll__$1 \x3d G__44255;\ncontinue;\n} else {\nreturn s;\n}\nbreak;\n}\n});\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn step(pred,coll);\n}),null,null));\n}));\n\n(cljs.core.drop_while.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n* @constructor\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IPending}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Cycle \x3d (function (meta,all,prev,current,_next){\nthis.meta \x3d meta;\nthis.all \x3d all;\nthis.prev \x3d prev;\nthis.current \x3d current;\nthis._next \x3d _next;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 26083532;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1;\n});\n(cljs.core.Cycle.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.Cycle.prototype.currentval \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nif(self__.current){\n} else {\nvar temp__5751__auto___44258 \x3d cljs.core.next(self__.prev);\nif(temp__5751__auto___44258){\nvar c_44261 \x3d temp__5751__auto___44258;\n(self__.current \x3d c_44261);\n} else {\n(self__.current \x3d self__.all);\n}\n}\n\nreturn self__.current;\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ISeq$_rest$arity$1(null);\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IPending$_realized_QMARK_$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (!((self__.current \x3d\x3d null)));\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar s \x3d coll__$1.currentval();\nvar ret \x3d cljs.core.first(s);\nwhile(true){\nvar s__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.core.next(s);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn self__.all;\n}\n})();\nvar ret__$1 \x3d (function (){var G__38954 \x3d ret;\nvar G__38955 \x3d cljs.core.first(s__$1);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38954,G__38955) : f.call(null,G__38954,G__38955));\n})();\nif(cljs.core.reduced_QMARK_(ret__$1)){\nreturn cljs.core.deref(ret__$1);\n} else {\nvar G__44268 \x3d s__$1;\nvar G__44269 \x3d ret__$1;\ns \x3d G__44268;\nret \x3d G__44269;\ncontinue;\n}\nbreak;\n}\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar s \x3d coll__$1.currentval();\nvar ret \x3d start;\nwhile(true){\nvar ret__$1 \x3d (function (){var G__38956 \x3d ret;\nvar G__38957 \x3d cljs.core.first(s);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__38956,G__38957) : f.call(null,G__38956,G__38957));\n})();\nif(cljs.core.reduced_QMARK_(ret__$1)){\nreturn cljs.core.deref(ret__$1);\n} else {\nvar G__44271 \x3d (function (){var or__4160__auto__ \x3d cljs.core.next(s);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn self__.all;\n}\n})();\nvar G__44272 \x3d ret__$1;\ns \x3d G__44271;\nret \x3d G__44272;\ncontinue;\n}\nbreak;\n}\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.first(coll__$1.currentval());\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__._next \x3d\x3d null)){\n(self__._next \x3d (new cljs.core.Cycle(null,self__.all,coll__$1.currentval(),null,null)));\n} else {\n}\n\nreturn self__._next;\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.Cycle(new_meta,self__.all,self__.prev,self__.current,self__._next));\n}\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.Cycle.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22all\x22,\x22all\x22,-1762306027,null),new cljs.core.Symbol(null,\x22prev\x22,\x22prev\x22,43462301,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22current\x22,\x22current\x22,552492924,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_next\x22,\x22_next\x22,101877036,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Cycle.cljs$lang$type \x3d true);\n\n(cljs.core.Cycle.cljs$lang$ctorStr \x3d \x22cljs.core/Cycle\x22);\n\n(cljs.core.Cycle.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Cycle\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Cycle.\n */\ncljs.core.__GT_Cycle \x3d (function cljs$core$__GT_Cycle(meta,all,prev,current,_next){\nreturn (new cljs.core.Cycle(meta,all,prev,current,_next));\n});\n\n/**\n * Returns a lazy (infinite!) sequence of repetitions of the items in coll.\n */\ncljs.core.cycle \x3d (function cljs$core$cycle(coll){\nvar temp__5751__auto__ \x3d cljs.core.seq(coll);\nif(temp__5751__auto__){\nvar vals \x3d temp__5751__auto__;\nreturn (new cljs.core.Cycle(null,vals,null,vals,null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n});\n/**\n * Returns a vector of [(take n coll) (drop n coll)]\n */\ncljs.core.split_at \x3d (function cljs$core$split_at(n,coll){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,coll),cljs.core.drop.cljs$core$IFn$_invoke$arity$2(n,coll)], null);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IPending}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Repeat \x3d (function (meta,count,val,next,__hash){\nthis.meta \x3d meta;\nthis.count \x3d count;\nthis.val \x3d val;\nthis.next \x3d next;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1;\n});\n(cljs.core.Repeat.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.Repeat.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Repeat.prototype.indexOf \x3d (function() {\nvar G__44314 \x3d null;\nvar G__44314__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__44314__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__44314 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__44314__1.call(this,x);\ncase 2:\nreturn G__44314__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44314.cljs$core$IFn$_invoke$arity$1 \x3d G__44314__1;\nG__44314.cljs$core$IFn$_invoke$arity$2 \x3d G__44314__2;\nreturn G__44314;\n})()\n);\n\n(cljs.core.Repeat.prototype.lastIndexOf \x3d (function() {\nvar G__44316 \x3d null;\nvar G__44316__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,self__.count);\n});\nvar G__44316__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__44316 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__44316__1.call(this,x);\ncase 2:\nreturn G__44316__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44316.cljs$core$IFn$_invoke$arity$1 \x3d G__44316__1;\nG__44316.cljs$core$IFn$_invoke$arity$2 \x3d G__44316__2;\nreturn G__44316;\n})()\n);\n\n(cljs.core.Repeat.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.next \x3d\x3d null)){\nif((self__.count \x3e (1))){\n(self__.next \x3d (new cljs.core.Repeat(null,(self__.count - (1)),self__.val,null,null)));\n\nreturn self__.next;\n} else {\nif(((-1) \x3d\x3d\x3d self__.count)){\nreturn coll__$1;\n} else {\nreturn null;\n}\n}\n} else {\nreturn self__.next;\n}\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IPending$_realized_QMARK_$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn false;\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.count \x3d\x3d\x3d (-1))){\nvar ret \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(self__.val,self__.val) : f.call(null,self__.val,self__.val));\nwhile(true){\nif(cljs.core.reduced_QMARK_(ret)){\nreturn cljs.core.deref(ret);\n} else {\nvar G__44376 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(ret,self__.val) : f.call(null,ret,self__.val));\nret \x3d G__44376;\ncontinue;\n}\nbreak;\n}\n} else {\nvar i \x3d (1);\nvar ret \x3d self__.val;\nwhile(true){\nif((i \x3c self__.count)){\nvar ret__$1 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(ret,self__.val) : f.call(null,ret,self__.val));\nif(cljs.core.reduced_QMARK_(ret__$1)){\nreturn cljs.core.deref(ret__$1);\n} else {\nvar G__44381 \x3d (i + (1));\nvar G__44382 \x3d ret__$1;\ni \x3d G__44381;\nret \x3d G__44382;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.count \x3d\x3d\x3d (-1))){\nvar ret \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(start,self__.val) : f.call(null,start,self__.val));\nwhile(true){\nif(cljs.core.reduced_QMARK_(ret)){\nreturn cljs.core.deref(ret);\n} else {\nvar G__44409 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(ret,self__.val) : f.call(null,ret,self__.val));\nret \x3d G__44409;\ncontinue;\n}\nbreak;\n}\n} else {\nvar i \x3d (0);\nvar ret \x3d start;\nwhile(true){\nif((i \x3c self__.count)){\nvar ret__$1 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(ret,self__.val) : f.call(null,ret,self__.val));\nif(cljs.core.reduced_QMARK_(ret__$1)){\nreturn cljs.core.deref(ret__$1);\n} else {\nvar G__44421 \x3d (i + (1));\nvar G__44423 \x3d ret__$1;\ni \x3d G__44421;\nret \x3d G__44423;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.next \x3d\x3d null)){\nif((self__.count \x3e (1))){\n(self__.next \x3d (new cljs.core.Repeat(null,(self__.count - (1)),self__.val,null,null)));\n\nreturn self__.next;\n} else {\nif(((-1) \x3d\x3d\x3d self__.count)){\nreturn coll__$1;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}\n} else {\nreturn self__.next;\n}\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.Repeat(new_meta,self__.count,self__.val,self__.next,null));\n}\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.Repeat.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22next\x22,\x22next\x22,1522830042,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Repeat.cljs$lang$type \x3d true);\n\n(cljs.core.Repeat.cljs$lang$ctorStr \x3d \x22cljs.core/Repeat\x22);\n\n(cljs.core.Repeat.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Repeat\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Repeat.\n */\ncljs.core.__GT_Repeat \x3d (function cljs$core$__GT_Repeat(meta,count,val,next,__hash){\nreturn (new cljs.core.Repeat(meta,count,val,next,__hash));\n});\n\n/**\n * Returns a lazy (infinite!, or length n if supplied) sequence of xs.\n */\ncljs.core.repeat \x3d (function cljs$core$repeat(var_args){\nvar G__38959 \x3d arguments.length;\nswitch (G__38959) {\ncase 1:\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn (new cljs.core.Repeat(null,(-1),x,null,null));\n}));\n\n(cljs.core.repeat.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,x){\nif((n \x3e (0))){\nreturn (new cljs.core.Repeat(null,n,x,null,null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.repeat.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * DEPRECATED: Use \x27repeat\x27 instead.\n *   Returns a lazy seq of n xs.\n */\ncljs.core.replicate \x3d (function cljs$core$replicate(n,x){\nreturn cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(x));\n});\n/**\n * Takes a function of no args, presumably with side effects, and\n *   returns an infinite (or length n if supplied) lazy sequence of calls\n *   to it\n */\ncljs.core.repeatedly \x3d (function cljs$core$repeatedly(var_args){\nvar G__38961 \x3d arguments.length;\nswitch (G__38961) {\ncase 1:\nreturn cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn cljs.core.cons((f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null)),cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$1(f));\n}),null,null));\n}));\n\n(cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,f){\nreturn cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$1(f));\n}));\n\n(cljs.core.repeatedly.cljs$lang$maxFixedArity \x3d 2);\n\ncljs.core.UNREALIZED_SEED \x3d ({});\n\n/**\n* @constructor\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IPending}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Iterate \x3d (function (meta,f,prev_seed,seed,next){\nthis.meta \x3d meta;\nthis.f \x3d f;\nthis.prev_seed \x3d prev_seed;\nthis.seed \x3d seed;\nthis.next \x3d next;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 26083532;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1;\n});\n(cljs.core.Iterate.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ISeq$_rest$arity$1(null);\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IPending$_realized_QMARK_$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (!((self__.seed \x3d\x3d\x3d cljs.core.UNREALIZED_SEED)));\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,rf){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar first \x3d coll__$1.cljs$core$ISeq$_first$arity$1(null);\nvar v \x3d (self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(first) : self__.f.call(null,first));\nvar ret \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(first,v) : rf.call(null,first,v));\nvar v__$1 \x3d v;\nwhile(true){\nif(cljs.core.reduced_QMARK_(ret)){\nreturn cljs.core.deref(ret);\n} else {\nvar v__$2 \x3d (self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(v__$1) : self__.f.call(null,v__$1));\nvar G__44527 \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(ret,v__$2) : rf.call(null,ret,v__$2));\nvar G__44528 \x3d v__$2;\nret \x3d G__44527;\nv__$1 \x3d G__44528;\ncontinue;\n}\nbreak;\n}\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,rf,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar v \x3d coll__$1.cljs$core$ISeq$_first$arity$1(null);\nvar ret \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(start,v) : rf.call(null,start,v));\nvar v__$1 \x3d v;\nwhile(true){\nif(cljs.core.reduced_QMARK_(ret)){\nreturn cljs.core.deref(ret);\n} else {\nvar v__$2 \x3d (self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(v__$1) : self__.f.call(null,v__$1));\nvar G__44534 \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(ret,v__$2) : rf.call(null,ret,v__$2));\nvar G__44535 \x3d v__$2;\nret \x3d G__44534;\nv__$1 \x3d G__44535;\ncontinue;\n}\nbreak;\n}\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((cljs.core.UNREALIZED_SEED \x3d\x3d\x3d self__.seed)){\n(self__.seed \x3d (self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(self__.prev_seed) : self__.f.call(null,self__.prev_seed)));\n} else {\n}\n\nreturn self__.seed;\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.next \x3d\x3d null)){\n(self__.next \x3d (new cljs.core.Iterate(null,self__.f,coll__$1.cljs$core$ISeq$_first$arity$1(null),cljs.core.UNREALIZED_SEED,null)));\n} else {\n}\n\nreturn self__.next;\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.Iterate(new_meta,self__.f,self__.prev_seed,self__.seed,self__.next));\n}\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.Iterate.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22prev-seed\x22,\x22prev-seed\x22,2126381367,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22seed\x22,\x22seed\x22,1709144854,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22next\x22,\x22next\x22,1522830042,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Iterate.cljs$lang$type \x3d true);\n\n(cljs.core.Iterate.cljs$lang$ctorStr \x3d \x22cljs.core/Iterate\x22);\n\n(cljs.core.Iterate.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Iterate\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Iterate.\n */\ncljs.core.__GT_Iterate \x3d (function cljs$core$__GT_Iterate(meta,f,prev_seed,seed,next){\nreturn (new cljs.core.Iterate(meta,f,prev_seed,seed,next));\n});\n\n/**\n * Returns a lazy sequence of x, (f x), (f (f x)) etc. f must be free of side-effects\n */\ncljs.core.iterate \x3d (function cljs$core$iterate(f,x){\nreturn (new cljs.core.Iterate(null,f,null,x,null));\n});\n/**\n * Returns a lazy seq of the first item in each coll, then the second etc.\n */\ncljs.core.interleave \x3d (function cljs$core$interleave(var_args){\nvar G__38966 \x3d arguments.length;\nswitch (G__38966) {\ncase 0:\nreturn cljs.core.interleave.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.interleave.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.interleave.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___44571 \x3d arguments.length;\nvar i__4772__auto___44572 \x3d (0);\nwhile(true){\nif((i__4772__auto___44572 \x3c len__4771__auto___44571)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___44572]));\n\nvar G__44574 \x3d (i__4772__auto___44572 + (1));\ni__4772__auto___44572 \x3d G__44574;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn cljs.core.interleave.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.interleave.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.interleave.cljs$core$IFn$_invoke$arity$1 \x3d (function (c1){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn c1;\n}),null,null));\n}));\n\n(cljs.core.interleave.cljs$core$IFn$_invoke$arity$2 \x3d (function (c1,c2){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s1 \x3d cljs.core.seq(c1);\nvar s2 \x3d cljs.core.seq(c2);\nif(((s1) \x26\x26 (s2))){\nreturn cljs.core.cons(cljs.core.first(s1),cljs.core.cons(cljs.core.first(s2),cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.rest(s1),cljs.core.rest(s2))));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.interleave.cljs$core$IFn$_invoke$arity$variadic \x3d (function (c1,c2,colls){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar ss \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.seq,cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(colls,c2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([c1], 0)));\nif(cljs.core.every_QMARK_(cljs.core.identity,ss)){\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,ss),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.interleave,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.rest,ss)));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n/** @this {Function} */\n(cljs.core.interleave.cljs$lang$applyTo \x3d (function (seq38963){\nvar G__38964 \x3d cljs.core.first(seq38963);\nvar seq38963__$1 \x3d cljs.core.next(seq38963);\nvar G__38965 \x3d cljs.core.first(seq38963__$1);\nvar seq38963__$2 \x3d cljs.core.next(seq38963__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38964,G__38965,seq38963__$2);\n}));\n\n(cljs.core.interleave.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns a lazy seq of the elements of coll separated by sep.\n *   Returns a stateful transducer when no collection is provided.\n */\ncljs.core.interpose \x3d (function cljs$core$interpose(var_args){\nvar G__38968 \x3d arguments.length;\nswitch (G__38968) {\ncase 1:\nreturn cljs.core.interpose.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.interpose.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.interpose.cljs$core$IFn$_invoke$arity$1 \x3d (function (sep){\nreturn (function (rf){\nvar started \x3d cljs.core.volatile_BANG_(false);\nreturn (function() {\nvar G__44587 \x3d null;\nvar G__44587__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__44587__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__44587__2 \x3d (function (result,input){\nif(cljs.core.truth_(cljs.core.deref(started))){\nvar sepr \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,sep) : rf.call(null,result,sep));\nif(cljs.core.reduced_QMARK_(sepr)){\nreturn sepr;\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(sepr,input) : rf.call(null,sepr,input));\n}\n} else {\ncljs.core.vreset_BANG_(started,true);\n\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n}\n});\nG__44587 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__44587__0.call(this);\ncase 1:\nreturn G__44587__1.call(this,result);\ncase 2:\nreturn G__44587__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44587.cljs$core$IFn$_invoke$arity$0 \x3d G__44587__0;\nG__44587.cljs$core$IFn$_invoke$arity$1 \x3d G__44587__1;\nG__44587.cljs$core$IFn$_invoke$arity$2 \x3d G__44587__2;\nreturn G__44587;\n})()\n});\n}));\n\n(cljs.core.interpose.cljs$core$IFn$_invoke$arity$2 \x3d (function (sep,coll){\nreturn cljs.core.drop.cljs$core$IFn$_invoke$arity$2((1),cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(sep),coll));\n}));\n\n(cljs.core.interpose.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Take a collection of collections, and return a lazy seq\n *   of items from the inner collection\n */\ncljs.core.flatten1 \x3d (function cljs$core$flatten1(colls){\nvar cat \x3d (function cljs$core$flatten1_$_cat(coll,colls__$1){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5751__auto__ \x3d cljs.core.seq(coll);\nif(temp__5751__auto__){\nvar coll__$1 \x3d temp__5751__auto__;\nreturn cljs.core.cons(cljs.core.first(coll__$1),cljs$core$flatten1_$_cat(cljs.core.rest(coll__$1),colls__$1));\n} else {\nif(cljs.core.seq(colls__$1)){\nreturn cljs$core$flatten1_$_cat(cljs.core.first(colls__$1),cljs.core.rest(colls__$1));\n} else {\nreturn null;\n}\n}\n}),null,null));\n});\nreturn cat(null,colls);\n});\n/**\n * Returns the result of applying concat to the result of applying map\n *   to f and colls.  Thus function f should return a collection. Returns\n *   a transducer when no collections are provided\n */\ncljs.core.mapcat \x3d (function cljs$core$mapcat(var_args){\nvar G__38972 \x3d arguments.length;\nswitch (G__38972) {\ncase 1:\nreturn cljs.core.mapcat.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___44611 \x3d arguments.length;\nvar i__4772__auto___44612 \x3d (0);\nwhile(true){\nif((i__4772__auto___44612 \x3c len__4771__auto___44611)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___44612]));\n\nvar G__44613 \x3d (i__4772__auto___44612 + (1));\ni__4772__auto___44612 \x3d G__44613;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((1)),(0),null));\nreturn cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.mapcat.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn cljs.core.comp.cljs$core$IFn$_invoke$arity$2(cljs.core.map.cljs$core$IFn$_invoke$arity$1(f),cljs.core.cat);\n}));\n\n(cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,colls){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.map,f,colls));\n}));\n\n/** @this {Function} */\n(cljs.core.mapcat.cljs$lang$applyTo \x3d (function (seq38970){\nvar G__38971 \x3d cljs.core.first(seq38970);\nvar seq38970__$1 \x3d cljs.core.next(seq38970);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38971,seq38970__$1);\n}));\n\n(cljs.core.mapcat.cljs$lang$maxFixedArity \x3d (1));\n\n/**\n * Returns a lazy sequence of the items in coll for which\n *   (pred item) returns logical true. pred must be free of side-effects.\n *   Returns a transducer when no collection is provided.\n */\ncljs.core.filter \x3d (function cljs$core$filter(var_args){\nvar G__38974 \x3d arguments.length;\nswitch (G__38974) {\ncase 1:\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.filter.cljs$core$IFn$_invoke$arity$1 \x3d (function (pred){\nreturn (function (rf){\nreturn (function() {\nvar G__44631 \x3d null;\nvar G__44631__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__44631__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__44631__2 \x3d (function (result,input){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(input) : pred.call(null,input)))){\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n} else {\nreturn result;\n}\n});\nG__44631 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__44631__0.call(this);\ncase 1:\nreturn G__44631__1.call(this,result);\ncase 2:\nreturn G__44631__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44631.cljs$core$IFn$_invoke$arity$0 \x3d G__44631__0;\nG__44631.cljs$core$IFn$_invoke$arity$1 \x3d G__44631__1;\nG__44631.cljs$core$IFn$_invoke$arity$2 \x3d G__44631__2;\nreturn G__44631;\n})()\n});\n}));\n\n(cljs.core.filter.cljs$core$IFn$_invoke$arity$2 \x3d (function (pred,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s)){\nvar c \x3d cljs.core.chunk_first(s);\nvar size \x3d cljs.core.count(c);\nvar b \x3d cljs.core.chunk_buffer(size);\nvar n__4648__auto___44643 \x3d size;\nvar i_44644 \x3d (0);\nwhile(true){\nif((i_44644 \x3c n__4648__auto___44643)){\nif(cljs.core.truth_((function (){var G__38975 \x3d cljs.core._nth(c,i_44644);\nreturn (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(G__38975) : pred.call(null,G__38975));\n})())){\ncljs.core.chunk_append(b,cljs.core._nth(c,i_44644));\n} else {\n}\n\nvar G__44645 \x3d (i_44644 + (1));\ni_44644 \x3d G__44645;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core.chunk_cons(cljs.core.chunk(b),cljs.core.filter.cljs$core$IFn$_invoke$arity$2(pred,cljs.core.chunk_rest(s)));\n} else {\nvar f \x3d cljs.core.first(s);\nvar r \x3d cljs.core.rest(s);\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(f) : pred.call(null,f)))){\nreturn cljs.core.cons(f,cljs.core.filter.cljs$core$IFn$_invoke$arity$2(pred,r));\n} else {\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2(pred,r);\n}\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.filter.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a lazy sequence of the items in coll for which\n *   (pred item) returns logical false. pred must be free of side-effects.\n *   Returns a transducer when no collection is provided.\n */\ncljs.core.remove \x3d (function cljs$core$remove(var_args){\nvar G__38977 \x3d arguments.length;\nswitch (G__38977) {\ncase 1:\nreturn cljs.core.remove.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.remove.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.remove.cljs$core$IFn$_invoke$arity$1 \x3d (function (pred){\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$1(cljs.core.complement(pred));\n}));\n\n(cljs.core.remove.cljs$core$IFn$_invoke$arity$2 \x3d (function (pred,coll){\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2(cljs.core.complement(pred),coll);\n}));\n\n(cljs.core.remove.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a lazy sequence of the nodes in a tree, via a depth-first walk.\n *   branch? must be a fn of one arg that returns true if passed a node\n *   that can have children (but may not).  children must be a fn of one\n *   arg that returns a sequence of the children. Will only be called on\n *   nodes for which branch? returns true. Root is the root node of the\n *   tree.\n */\ncljs.core.tree_seq \x3d (function cljs$core$tree_seq(branch_QMARK_,children,root){\nvar walk \x3d (function cljs$core$tree_seq_$_walk(node){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn cljs.core.cons(node,(cljs.core.truth_((branch_QMARK_.cljs$core$IFn$_invoke$arity$1 ? branch_QMARK_.cljs$core$IFn$_invoke$arity$1(node) : branch_QMARK_.call(null,node)))?cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs$core$tree_seq_$_walk,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(children.cljs$core$IFn$_invoke$arity$1 ? children.cljs$core$IFn$_invoke$arity$1(node) : children.call(null,node))], 0)):null));\n}),null,null));\n});\nreturn walk(root);\n});\n/**\n * Takes any nested combination of sequential things (lists, vectors,\n *   etc.) and returns their contents as a single, flat sequence.\n *   (flatten nil) returns nil.\n */\ncljs.core.flatten \x3d (function cljs$core$flatten(x){\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__38978_SHARP_){\nreturn (!(cljs.core.sequential_QMARK_(p1__38978_SHARP_)));\n}),cljs.core.rest(cljs.core.tree_seq(cljs.core.sequential_QMARK_,cljs.core.seq,x)));\n});\n/**\n * Returns a new coll consisting of to-coll with all of the items of\n *   from-coll conjoined. A transducer may be supplied.\n */\ncljs.core.into \x3d (function cljs$core$into(var_args){\nvar G__38980 \x3d arguments.length;\nswitch (G__38980) {\ncase 0:\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.into.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cljs.core.into.cljs$core$IFn$_invoke$arity$1 \x3d (function (to){\nreturn to;\n}));\n\n(cljs.core.into.cljs$core$IFn$_invoke$arity$2 \x3d (function (to,from){\nif((!((to \x3d\x3d null)))){\nif((((!((to \x3d\x3d null))))?(((((to.cljs$lang$protocol_mask$partition1$ \x26 (4))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d to.cljs$core$IEditableCollection$))))?true:false):false)){\nreturn cljs.core._with_meta(cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj_BANG_,cljs.core.transient$(to),from)),cljs.core.meta(to));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,to,from);\n}\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,to,from);\n}\n}));\n\n(cljs.core.into.cljs$core$IFn$_invoke$arity$3 \x3d (function (to,xform,from){\nif((((!((to \x3d\x3d null))))?(((((to.cljs$lang$protocol_mask$partition1$ \x26 (4))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d to.cljs$core$IEditableCollection$))))?true:false):false)){\nreturn cljs.core._with_meta(cljs.core.persistent_BANG_(cljs.core.transduce.cljs$core$IFn$_invoke$arity$4(xform,cljs.core.conj_BANG_,cljs.core.transient$(to),from)),cljs.core.meta(to));\n} else {\nreturn cljs.core.transduce.cljs$core$IFn$_invoke$arity$4(xform,cljs.core.conj,to,from);\n}\n}));\n\n(cljs.core.into.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns a vector consisting of the result of applying f to the\n *   set of first items of each coll, followed by applying f to the set\n *   of second items in each coll, until any one of the colls is\n *   exhausted.  Any remaining items in other colls are ignored. Function\n *   f should accept number-of-colls arguments.\n */\ncljs.core.mapv \x3d (function cljs$core$mapv(var_args){\nvar G__38989 \x3d arguments.length;\nswitch (G__38989) {\ncase 2:\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___44702 \x3d arguments.length;\nvar i__4772__auto___44703 \x3d (0);\nwhile(true){\nif((i__4772__auto___44703 \x3c len__4771__auto___44702)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___44703]));\n\nvar G__44708 \x3d (i__4772__auto___44703 + (1));\ni__4772__auto___44703 \x3d G__44708;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.mapv.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (v,o){\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(v,(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(o) : f.call(null,o)));\n}),cljs.core.transient$(cljs.core.PersistentVector.EMPTY),coll));\n}));\n\n(cljs.core.mapv.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,c1,c2){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$3(f,c1,c2));\n}));\n\n(cljs.core.mapv.cljs$core$IFn$_invoke$arity$4 \x3d (function (f,c1,c2,c3){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$4(f,c1,c2,c3));\n}));\n\n(cljs.core.mapv.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,c1,c2,c3,colls){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(cljs.core.map,f,c1,c2,c3,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([colls], 0)));\n}));\n\n/** @this {Function} */\n(cljs.core.mapv.cljs$lang$applyTo \x3d (function (seq38984){\nvar G__38985 \x3d cljs.core.first(seq38984);\nvar seq38984__$1 \x3d cljs.core.next(seq38984);\nvar G__38986 \x3d cljs.core.first(seq38984__$1);\nvar seq38984__$2 \x3d cljs.core.next(seq38984__$1);\nvar G__38987 \x3d cljs.core.first(seq38984__$2);\nvar seq38984__$3 \x3d cljs.core.next(seq38984__$2);\nvar G__38988 \x3d cljs.core.first(seq38984__$3);\nvar seq38984__$4 \x3d cljs.core.next(seq38984__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__38985,G__38986,G__38987,G__38988,seq38984__$4);\n}));\n\n(cljs.core.mapv.cljs$lang$maxFixedArity \x3d (4));\n\n/**\n * Returns a vector of the items in coll for which\n *   (pred item) returns logical true. pred must be free of side-effects.\n */\ncljs.core.filterv \x3d (function cljs$core$filterv(pred,coll){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (v,o){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(o) : pred.call(null,o)))){\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(v,o);\n} else {\nreturn v;\n}\n}),cljs.core.transient$(cljs.core.PersistentVector.EMPTY),coll));\n});\n/**\n * Returns a lazy sequence of lists of n items each, at offsets step\n *   apart. If step is not supplied, defaults to n, i.e. the partitions\n *   do not overlap. If a pad collection is supplied, use its elements as\n *   necessary to complete last partition up to n items. In case there are\n *   not enough padding elements, return a partition with less than n items.\n */\ncljs.core.partition \x3d (function cljs$core$partition(var_args){\nvar G__38991 \x3d arguments.length;\nswitch (G__38991) {\ncase 2:\nreturn cljs.core.partition.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.partition.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.partition.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.partition.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\nreturn cljs.core.partition.cljs$core$IFn$_invoke$arity$3(n,n,coll);\n}));\n\n(cljs.core.partition.cljs$core$IFn$_invoke$arity$3 \x3d (function (n,step,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nvar p \x3d cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,s);\nif((n \x3d\x3d\x3d cljs.core.count(p))){\nreturn cljs.core.cons(p,cljs.core.partition.cljs$core$IFn$_invoke$arity$3(n,step,cljs.core.drop.cljs$core$IFn$_invoke$arity$2(step,s)));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.partition.cljs$core$IFn$_invoke$arity$4 \x3d (function (n,step,pad,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nvar p \x3d cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,s);\nif((n \x3d\x3d\x3d cljs.core.count(p))){\nreturn cljs.core.cons(p,cljs.core.partition.cljs$core$IFn$_invoke$arity$4(n,step,pad,cljs.core.drop.cljs$core$IFn$_invoke$arity$2(step,s)));\n} else {\nreturn (new cljs.core.List(null,cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(p,pad)),null,(1),null));\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.partition.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Returns the value in a nested associative structure,\n *   where ks is a sequence of keys. Returns nil if the key is not present,\n *   or the not-found value if supplied.\n */\ncljs.core.get_in \x3d (function cljs$core$get_in(var_args){\nvar G__38993 \x3d arguments.length;\nswitch (G__38993) {\ncase 2:\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.get_in.cljs$core$IFn$_invoke$arity$2 \x3d (function (m,ks){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.get,m,ks);\n}));\n\n(cljs.core.get_in.cljs$core$IFn$_invoke$arity$3 \x3d (function (m,ks,not_found){\nvar sentinel \x3d cljs.core.lookup_sentinel;\nvar m__$1 \x3d m;\nvar ks__$1 \x3d cljs.core.seq(ks);\nwhile(true){\nif((!((ks__$1 \x3d\x3d null)))){\nvar m__$2 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(m__$1,cljs.core.first(ks__$1),sentinel);\nif((sentinel \x3d\x3d\x3d m__$2)){\nreturn not_found;\n} else {\nvar G__44778 \x3d sentinel;\nvar G__44779 \x3d m__$2;\nvar G__44780 \x3d cljs.core.next(ks__$1);\nsentinel \x3d G__44778;\nm__$1 \x3d G__44779;\nks__$1 \x3d G__44780;\ncontinue;\n}\n} else {\nreturn m__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.get_in.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Associates a value in a nested associative structure, where ks is a\n *   sequence of keys and v is the new value and returns a new nested structure.\n *   If any levels do not exist, hash-maps will be created.\n */\ncljs.core.assoc_in \x3d (function cljs$core$assoc_in(m,p__38994,v){\nvar vec__38995 \x3d p__38994;\nvar seq__38996 \x3d cljs.core.seq(vec__38995);\nvar first__38997 \x3d cljs.core.first(seq__38996);\nvar seq__38996__$1 \x3d cljs.core.next(seq__38996);\nvar k \x3d first__38997;\nvar ks \x3d seq__38996__$1;\nif(ks){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__38998 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__38999 \x3d ks;\nvar G__39000 \x3d v;\nreturn (cljs.core.assoc_in.cljs$core$IFn$_invoke$arity$3 ? cljs.core.assoc_in.cljs$core$IFn$_invoke$arity$3(G__38998,G__38999,G__39000) : cljs.core.assoc_in.call(null,G__38998,G__38999,G__39000));\n})());\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,v);\n}\n});\n/**\n * \x27Updates\x27 a value in a nested associative structure, where ks is a\n *   sequence of keys and f is a function that will take the old value\n *   and any supplied args and return the new value, and returns a new\n *   nested structure.  If any levels do not exist, hash-maps will be\n *   created.\n */\ncljs.core.update_in \x3d (function cljs$core$update_in(var_args){\nvar G__39009 \x3d arguments.length;\nswitch (G__39009) {\ncase 3:\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___44794 \x3d arguments.length;\nvar i__4772__auto___44796 \x3d (0);\nwhile(true){\nif((i__4772__auto___44796 \x3c len__4771__auto___44794)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___44796]));\n\nvar G__44798 \x3d (i__4772__auto___44796 + (1));\ni__4772__auto___44796 \x3d G__44798;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((6)),(0),null));\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.update_in.cljs$core$IFn$_invoke$arity$3 \x3d (function (m,p__39010,f){\nvar vec__39011 \x3d p__39010;\nvar seq__39012 \x3d cljs.core.seq(vec__39011);\nvar first__39013 \x3d cljs.core.first(seq__39012);\nvar seq__39012__$1 \x3d cljs.core.next(seq__39012);\nvar k \x3d first__39013;\nvar ks \x3d seq__39012__$1;\nif(ks){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.update_in.cljs$core$IFn$_invoke$arity$3(cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),ks,f));\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39014 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__39014) : f.call(null,G__39014));\n})());\n}\n}));\n\n(cljs.core.update_in.cljs$core$IFn$_invoke$arity$4 \x3d (function (m,p__39015,f,a){\nvar vec__39016 \x3d p__39015;\nvar seq__39017 \x3d cljs.core.seq(vec__39016);\nvar first__39018 \x3d cljs.core.first(seq__39017);\nvar seq__39017__$1 \x3d cljs.core.next(seq__39017);\nvar k \x3d first__39018;\nvar ks \x3d seq__39017__$1;\nif(ks){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),ks,f,a));\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39019 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39020 \x3d a;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__39019,G__39020) : f.call(null,G__39019,G__39020));\n})());\n}\n}));\n\n(cljs.core.update_in.cljs$core$IFn$_invoke$arity$5 \x3d (function (m,p__39021,f,a,b){\nvar vec__39022 \x3d p__39021;\nvar seq__39023 \x3d cljs.core.seq(vec__39022);\nvar first__39024 \x3d cljs.core.first(seq__39023);\nvar seq__39023__$1 \x3d cljs.core.next(seq__39023);\nvar k \x3d first__39024;\nvar ks \x3d seq__39023__$1;\nif(ks){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.update_in.cljs$core$IFn$_invoke$arity$5(cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),ks,f,a,b));\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39025 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39026 \x3d a;\nvar G__39027 \x3d b;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39025,G__39026,G__39027) : f.call(null,G__39025,G__39026,G__39027));\n})());\n}\n}));\n\n(cljs.core.update_in.cljs$core$IFn$_invoke$arity$6 \x3d (function (m,p__39028,f,a,b,c){\nvar vec__39029 \x3d p__39028;\nvar seq__39030 \x3d cljs.core.seq(vec__39029);\nvar first__39031 \x3d cljs.core.first(seq__39030);\nvar seq__39030__$1 \x3d cljs.core.next(seq__39030);\nvar k \x3d first__39031;\nvar ks \x3d seq__39030__$1;\nif(ks){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.update_in.cljs$core$IFn$_invoke$arity$6(cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),ks,f,a,b,c));\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39032 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39033 \x3d a;\nvar G__39034 \x3d b;\nvar G__39035 \x3d c;\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(G__39032,G__39033,G__39034,G__39035) : f.call(null,G__39032,G__39033,G__39034,G__39035));\n})());\n}\n}));\n\n(cljs.core.update_in.cljs$core$IFn$_invoke$arity$variadic \x3d (function (m,p__39036,f,a,b,c,args){\nvar vec__39037 \x3d p__39036;\nvar seq__39038 \x3d cljs.core.seq(vec__39037);\nvar first__39039 \x3d cljs.core.first(seq__39038);\nvar seq__39038__$1 \x3d cljs.core.next(seq__39038);\nvar k \x3d first__39039;\nvar ks \x3d seq__39038__$1;\nif(ks){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(cljs.core.update_in,cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),ks,f,a,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([b,c,args], 0)));\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(f,cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),a,b,c,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([args], 0)));\n}\n}));\n\n/** @this {Function} */\n(cljs.core.update_in.cljs$lang$applyTo \x3d (function (seq39002){\nvar G__39003 \x3d cljs.core.first(seq39002);\nvar seq39002__$1 \x3d cljs.core.next(seq39002);\nvar G__39004 \x3d cljs.core.first(seq39002__$1);\nvar seq39002__$2 \x3d cljs.core.next(seq39002__$1);\nvar G__39005 \x3d cljs.core.first(seq39002__$2);\nvar seq39002__$3 \x3d cljs.core.next(seq39002__$2);\nvar G__39006 \x3d cljs.core.first(seq39002__$3);\nvar seq39002__$4 \x3d cljs.core.next(seq39002__$3);\nvar G__39007 \x3d cljs.core.first(seq39002__$4);\nvar seq39002__$5 \x3d cljs.core.next(seq39002__$4);\nvar G__39008 \x3d cljs.core.first(seq39002__$5);\nvar seq39002__$6 \x3d cljs.core.next(seq39002__$5);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39003,G__39004,G__39005,G__39006,G__39007,G__39008,seq39002__$6);\n}));\n\n(cljs.core.update_in.cljs$lang$maxFixedArity \x3d (6));\n\n/**\n * \x27Updates\x27 a value in an associative structure, where k is a\n *   key and f is a function that will take the old value\n *   and any supplied args and return the new value, and returns a new\n *   structure.  If the key does not exist, nil is passed as the old value.\n */\ncljs.core.update \x3d (function cljs$core$update(var_args){\nvar G__39048 \x3d arguments.length;\nswitch (G__39048) {\ncase 3:\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___44823 \x3d arguments.length;\nvar i__4772__auto___44827 \x3d (0);\nwhile(true){\nif((i__4772__auto___44827 \x3c len__4771__auto___44823)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___44827]));\n\nvar G__44828 \x3d (i__4772__auto___44827 + (1));\ni__4772__auto___44827 \x3d G__44828;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((6)),(0),null));\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.update.cljs$core$IFn$_invoke$arity$3 \x3d (function (m,k,f){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39049 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__39049) : f.call(null,G__39049));\n})());\n}));\n\n(cljs.core.update.cljs$core$IFn$_invoke$arity$4 \x3d (function (m,k,f,x){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39050 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39051 \x3d x;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__39050,G__39051) : f.call(null,G__39050,G__39051));\n})());\n}));\n\n(cljs.core.update.cljs$core$IFn$_invoke$arity$5 \x3d (function (m,k,f,x,y){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39052 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39053 \x3d x;\nvar G__39054 \x3d y;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39052,G__39053,G__39054) : f.call(null,G__39052,G__39053,G__39054));\n})());\n}));\n\n(cljs.core.update.cljs$core$IFn$_invoke$arity$6 \x3d (function (m,k,f,x,y,z){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39055 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39056 \x3d x;\nvar G__39057 \x3d y;\nvar G__39058 \x3d z;\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(G__39055,G__39056,G__39057,G__39058) : f.call(null,G__39055,G__39056,G__39057,G__39058));\n})());\n}));\n\n(cljs.core.update.cljs$core$IFn$_invoke$arity$variadic \x3d (function (m,k,f,x,y,z,more){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(f,cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k),x,y,z,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([more], 0)));\n}));\n\n/** @this {Function} */\n(cljs.core.update.cljs$lang$applyTo \x3d (function (seq39041){\nvar G__39042 \x3d cljs.core.first(seq39041);\nvar seq39041__$1 \x3d cljs.core.next(seq39041);\nvar G__39043 \x3d cljs.core.first(seq39041__$1);\nvar seq39041__$2 \x3d cljs.core.next(seq39041__$1);\nvar G__39044 \x3d cljs.core.first(seq39041__$2);\nvar seq39041__$3 \x3d cljs.core.next(seq39041__$2);\nvar G__39045 \x3d cljs.core.first(seq39041__$3);\nvar seq39041__$4 \x3d cljs.core.next(seq39041__$3);\nvar G__39046 \x3d cljs.core.first(seq39041__$4);\nvar seq39041__$5 \x3d cljs.core.next(seq39041__$4);\nvar G__39047 \x3d cljs.core.first(seq39041__$5);\nvar seq39041__$6 \x3d cljs.core.next(seq39041__$5);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39042,G__39043,G__39044,G__39045,G__39046,G__39047,seq39041__$6);\n}));\n\n(cljs.core.update.cljs$lang$maxFixedArity \x3d (6));\n\n\n/**\n* @constructor\n*/\ncljs.core.VectorNode \x3d (function (edit,arr){\nthis.edit \x3d edit;\nthis.arr \x3d arr;\n});\n\n(cljs.core.VectorNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22edit\x22,\x22edit\x22,-1302639,null),new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null)], null);\n}));\n\n(cljs.core.VectorNode.cljs$lang$type \x3d true);\n\n(cljs.core.VectorNode.cljs$lang$ctorStr \x3d \x22cljs.core/VectorNode\x22);\n\n(cljs.core.VectorNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/VectorNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/VectorNode.\n */\ncljs.core.__GT_VectorNode \x3d (function cljs$core$__GT_VectorNode(edit,arr){\nreturn (new cljs.core.VectorNode(edit,arr));\n});\n\ncljs.core.pv_fresh_node \x3d (function cljs$core$pv_fresh_node(edit){\nreturn (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]));\n});\ncljs.core.pv_aget \x3d (function cljs$core$pv_aget(node,idx){\nreturn (node.arr[idx]);\n});\ncljs.core.pv_aset \x3d (function cljs$core$pv_aset(node,idx,val){\nreturn (node.arr[idx] \x3d val);\n});\ncljs.core.pv_clone_node \x3d (function cljs$core$pv_clone_node(node){\nreturn (new cljs.core.VectorNode(node.edit,cljs.core.aclone(node.arr)));\n});\ncljs.core.tail_off \x3d (function cljs$core$tail_off(pv){\nvar cnt \x3d pv.cnt;\nif((cnt \x3c (32))){\nreturn (0);\n} else {\nreturn (((cnt - (1)) \x3e\x3e\x3e (5)) \x3c\x3c (5));\n}\n});\ncljs.core.new_path \x3d (function cljs$core$new_path(edit,level,node){\nvar ll \x3d level;\nvar ret \x3d node;\nwhile(true){\nif((ll \x3d\x3d\x3d (0))){\nreturn ret;\n} else {\nvar embed \x3d ret;\nvar r \x3d cljs.core.pv_fresh_node(edit);\nvar _ \x3d cljs.core.pv_aset(r,(0),embed);\nvar G__44840 \x3d (ll - (5));\nvar G__44841 \x3d r;\nll \x3d G__44840;\nret \x3d G__44841;\ncontinue;\n}\nbreak;\n}\n});\ncljs.core.push_tail \x3d (function cljs$core$push_tail(pv,level,parent,tailnode){\nvar ret \x3d cljs.core.pv_clone_node(parent);\nvar subidx \x3d (((pv.cnt - (1)) \x3e\x3e\x3e level) \x26 (31));\nif(((5) \x3d\x3d\x3d level)){\ncljs.core.pv_aset(ret,subidx,tailnode);\n\nreturn ret;\n} else {\nvar child \x3d cljs.core.pv_aget(parent,subidx);\nif((!((child \x3d\x3d null)))){\nvar node_to_insert \x3d (function (){var G__39059 \x3d pv;\nvar G__39060 \x3d (level - (5));\nvar G__39061 \x3d child;\nvar G__39062 \x3d tailnode;\nreturn (cljs.core.push_tail.cljs$core$IFn$_invoke$arity$4 ? cljs.core.push_tail.cljs$core$IFn$_invoke$arity$4(G__39059,G__39060,G__39061,G__39062) : cljs.core.push_tail.call(null,G__39059,G__39060,G__39061,G__39062));\n})();\ncljs.core.pv_aset(ret,subidx,node_to_insert);\n\nreturn ret;\n} else {\nvar node_to_insert \x3d cljs.core.new_path(null,(level - (5)),tailnode);\ncljs.core.pv_aset(ret,subidx,node_to_insert);\n\nreturn ret;\n}\n}\n});\ncljs.core.vector_index_out_of_bounds \x3d (function cljs$core$vector_index_out_of_bounds(i,cnt){\nthrow (new Error([\x22No item \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(i),\x22 in vector of length \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cnt)].join(\x27\x27)));\n});\ncljs.core.first_array_for_longvec \x3d (function cljs$core$first_array_for_longvec(pv){\nvar node \x3d pv.root;\nvar level \x3d pv.shift;\nwhile(true){\nif((level \x3e (0))){\nvar G__44849 \x3d cljs.core.pv_aget(node,(0));\nvar G__44850 \x3d (level - (5));\nnode \x3d G__44849;\nlevel \x3d G__44850;\ncontinue;\n} else {\nreturn node.arr;\n}\nbreak;\n}\n});\ncljs.core.unchecked_array_for \x3d (function cljs$core$unchecked_array_for(pv,i){\nif((i \x3e\x3d cljs.core.tail_off(pv))){\nreturn pv.tail;\n} else {\nvar node \x3d pv.root;\nvar level \x3d pv.shift;\nwhile(true){\nif((level \x3e (0))){\nvar G__44851 \x3d cljs.core.pv_aget(node,((i \x3e\x3e\x3e level) \x26 (31)));\nvar G__44852 \x3d (level - (5));\nnode \x3d G__44851;\nlevel \x3d G__44852;\ncontinue;\n} else {\nreturn node.arr;\n}\nbreak;\n}\n}\n});\ncljs.core.array_for \x3d (function cljs$core$array_for(pv,i){\nif(((((0) \x3c\x3d i)) \x26\x26 ((i \x3c pv.cnt)))){\nreturn cljs.core.unchecked_array_for(pv,i);\n} else {\nreturn cljs.core.vector_index_out_of_bounds(i,pv.cnt);\n}\n});\ncljs.core.do_assoc \x3d (function cljs$core$do_assoc(pv,level,node,i,val){\nvar ret \x3d cljs.core.pv_clone_node(node);\nif((level \x3d\x3d\x3d (0))){\ncljs.core.pv_aset(ret,(i \x26 (31)),val);\n\nreturn ret;\n} else {\nvar subidx \x3d ((i \x3e\x3e\x3e level) \x26 (31));\ncljs.core.pv_aset(ret,subidx,(function (){var G__39063 \x3d pv;\nvar G__39064 \x3d (level - (5));\nvar G__39065 \x3d cljs.core.pv_aget(node,subidx);\nvar G__39066 \x3d i;\nvar G__39067 \x3d val;\nreturn (cljs.core.do_assoc.cljs$core$IFn$_invoke$arity$5 ? cljs.core.do_assoc.cljs$core$IFn$_invoke$arity$5(G__39063,G__39064,G__39065,G__39066,G__39067) : cljs.core.do_assoc.call(null,G__39063,G__39064,G__39065,G__39066,G__39067));\n})());\n\nreturn ret;\n}\n});\ncljs.core.pop_tail \x3d (function cljs$core$pop_tail(pv,level,node){\nvar subidx \x3d (((pv.cnt - (2)) \x3e\x3e\x3e level) \x26 (31));\nif((level \x3e (5))){\nvar new_child \x3d (function (){var G__39068 \x3d pv;\nvar G__39069 \x3d (level - (5));\nvar G__39070 \x3d cljs.core.pv_aget(node,subidx);\nreturn (cljs.core.pop_tail.cljs$core$IFn$_invoke$arity$3 ? cljs.core.pop_tail.cljs$core$IFn$_invoke$arity$3(G__39068,G__39069,G__39070) : cljs.core.pop_tail.call(null,G__39068,G__39069,G__39070));\n})();\nif((((new_child \x3d\x3d null)) \x26\x26 ((subidx \x3d\x3d\x3d (0))))){\nreturn null;\n} else {\nvar ret \x3d cljs.core.pv_clone_node(node);\ncljs.core.pv_aset(ret,subidx,new_child);\n\nreturn ret;\n}\n} else {\nif((subidx \x3d\x3d\x3d (0))){\nreturn null;\n} else {\nvar ret \x3d cljs.core.pv_clone_node(node);\ncljs.core.pv_aset(ret,subidx,null);\n\nreturn ret;\n\n}\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.RangedIterator \x3d (function (i,base,arr,v,start,end){\nthis.i \x3d i;\nthis.base \x3d base;\nthis.arr \x3d arr;\nthis.v \x3d v;\nthis.start \x3d start;\nthis.end \x3d end;\n});\n(cljs.core.RangedIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn (self__.i \x3c self__.end);\n}));\n\n(cljs.core.RangedIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif(((self__.i - self__.base) \x3d\x3d\x3d (32))){\n(self__.arr \x3d cljs.core.unchecked_array_for(self__.v,self__.i));\n\n(self__.base \x3d (self__.base + (32)));\n} else {\n}\n\nvar ret \x3d (self__.arr[(self__.i \x26 (31))]);\n(self__.i \x3d (self__.i + (1)));\n\nreturn ret;\n}));\n\n(cljs.core.RangedIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22base\x22,\x22base\x22,1825810849,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null);\n}));\n\n(cljs.core.RangedIterator.cljs$lang$type \x3d true);\n\n(cljs.core.RangedIterator.cljs$lang$ctorStr \x3d \x22cljs.core/RangedIterator\x22);\n\n(cljs.core.RangedIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/RangedIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/RangedIterator.\n */\ncljs.core.__GT_RangedIterator \x3d (function cljs$core$__GT_RangedIterator(i,base,arr,v,start,end){\nreturn (new cljs.core.RangedIterator(i,base,arr,v,start,end));\n});\n\ncljs.core.ranged_iterator \x3d (function cljs$core$ranged_iterator(v,start,end){\nvar i \x3d start;\nreturn (new cljs.core.RangedIterator(i,(i - (i % (32))),(((start \x3c cljs.core.count(v)))?cljs.core.unchecked_array_for(v,i):null),v,start,end));\n});\ncljs.core.pv_reduce \x3d (function cljs$core$pv_reduce(var_args){\nvar G__39072 \x3d arguments.length;\nswitch (G__39072) {\ncase 4:\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$4 \x3d (function (pv,f,start,end){\nif((start \x3c end)){\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$5(pv,f,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(pv,start),(start + (1)),end);\n} else {\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n}\n}));\n\n(cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$5 \x3d (function (pv,f,init,start,end){\nvar acc \x3d init;\nvar i \x3d start;\nvar arr \x3d cljs.core.unchecked_array_for(pv,start);\nwhile(true){\nif((i \x3c end)){\nvar j \x3d (i \x26 (31));\nvar arr__$1 \x3d (((j \x3d\x3d\x3d (0)))?cljs.core.unchecked_array_for(pv,i):arr);\nvar nacc \x3d (function (){var G__39073 \x3d acc;\nvar G__39074 \x3d (arr__$1[j]);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__39073,G__39074) : f.call(null,G__39073,G__39074));\n})();\nif(cljs.core.reduced_QMARK_(nacc)){\nreturn cljs.core.deref(nacc);\n} else {\nvar G__44857 \x3d nacc;\nvar G__44858 \x3d (i + (1));\nvar G__44859 \x3d arr__$1;\nacc \x3d G__44857;\ni \x3d G__44858;\narr \x3d G__44859;\ncontinue;\n}\n} else {\nreturn acc;\n}\nbreak;\n}\n}));\n\n(cljs.core.pv_reduce.cljs$lang$maxFixedArity \x3d 5);\n\n\n\n\n\n\n\n\n/**\n * Marker protocol\n * @interface\n */\ncljs.core.APersistentVector \x3d function(){};\n\n\n/**\n* @constructor\n * @implements {cljs.core.APersistentVector}\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IVector}\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEditableCollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.ILookup}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.PersistentVector \x3d (function (meta,cnt,shift,root,tail,__hash){\nthis.meta \x3d meta;\nthis.cnt \x3d cnt;\nthis.shift \x3d shift;\nthis.root \x3d root;\nthis.tail \x3d tail;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 167666463;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139268;\n});\n(cljs.core.PersistentVector.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentVector.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (coll,n){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c self__.cnt)))){\nreturn (new cljs.core.MapEntry(n,(cljs.core.unchecked_array_for(coll__$1,n)[(n \x26 (31))]),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentVector.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentVector.prototype.indexOf \x3d (function() {\nvar G__44862 \x3d null;\nvar G__44862__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__44862__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__44862 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__44862__1.call(this,x);\ncase 2:\nreturn G__44862__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44862.cljs$core$IFn$_invoke$arity$1 \x3d G__44862__1;\nG__44862.cljs$core$IFn$_invoke$arity$2 \x3d G__44862__2;\nreturn G__44862;\n})()\n);\n\n(cljs.core.PersistentVector.prototype.lastIndexOf \x3d (function() {\nvar G__44865 \x3d null;\nvar G__44865__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__44865__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__44865 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__44865__1.call(this,x);\ncase 2:\nreturn G__44865__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__44865.cljs$core$IFn$_invoke$arity$1 \x3d G__44865__1;\nG__44865.cljs$core$IFn$_invoke$arity$2 \x3d G__44865__2;\nreturn G__44865;\n})()\n);\n\n(cljs.core.PersistentVector.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(typeof k \x3d\x3d\x3d \x27number\x27){\nreturn coll__$1.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (v,f,init){\nvar self__ \x3d this;\nvar v__$1 \x3d this;\nvar i \x3d (0);\nvar init__$1 \x3d init;\nwhile(true){\nif((i \x3c self__.cnt)){\nvar arr \x3d cljs.core.unchecked_array_for(v__$1,i);\nvar len \x3d arr.length;\nvar init__$2 \x3d (function (){var j \x3d (0);\nvar init__$2 \x3d init__$1;\nwhile(true){\nif((j \x3c len)){\nvar init__$3 \x3d (function (){var G__39076 \x3d init__$2;\nvar G__39077 \x3d (j + i);\nvar G__39078 \x3d (arr[j]);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39076,G__39077,G__39078) : f.call(null,G__39076,G__39077,G__39078));\n})();\nif(cljs.core.reduced_QMARK_(init__$3)){\nreturn init__$3;\n} else {\nvar G__44871 \x3d (j + (1));\nvar G__44872 \x3d init__$3;\nj \x3d G__44871;\ninit__$2 \x3d G__44872;\ncontinue;\n}\n} else {\nreturn init__$2;\n}\nbreak;\n}\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn cljs.core.deref(init__$2);\n} else {\nvar G__44877 \x3d (i + len);\nvar G__44878 \x3d init__$2;\ni \x3d G__44877;\ninit__$1 \x3d G__44878;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$APersistentVector$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentVector.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (coll,n){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (cljs.core.array_for(coll__$1,n)[(n \x26 (31))]);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (coll,n,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c self__.cnt)))){\nreturn (cljs.core.unchecked_array_for(coll__$1,n)[(n \x26 (31))]);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IVector$_assoc_n$arity$3 \x3d (function (coll,n,val){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c self__.cnt)))){\nif((cljs.core.tail_off(coll__$1) \x3c\x3d n)){\nvar new_tail \x3d cljs.core.aclone(self__.tail);\n(new_tail[(n \x26 (31))] \x3d val);\n\nreturn (new cljs.core.PersistentVector(self__.meta,self__.cnt,self__.shift,self__.root,new_tail,null));\n} else {\nreturn (new cljs.core.PersistentVector(self__.meta,self__.cnt,self__.shift,cljs.core.do_assoc(coll__$1,self__.shift,self__.root,n,val),self__.tail,null));\n}\n} else {\nif((n \x3d\x3d\x3d self__.cnt)){\nreturn coll__$1.cljs$core$ICollection$_conj$arity$2(null,val);\n} else {\nthrow (new Error([\x22Index \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),\x22 out of bounds  [0,\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.cnt),\x22]\x22].join(\x27\x27)));\n\n}\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core.ranged_iterator(this$__$1,(0),self__.cnt);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.PersistentVector(self__.meta,self__.cnt,self__.shift,self__.root,self__.tail,self__.__hash));\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.cnt;\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nreturn coll__$1.cljs$core$IIndexed$_nth$arity$2(null,(self__.cnt - (1)));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3d\x3d\x3d (0))){\nthrow (new Error(\x22Can\x27t pop empty vector\x22));\n} else {\nif(((1) \x3d\x3d\x3d self__.cnt)){\nreturn cljs.core._with_meta(cljs.core.PersistentVector.EMPTY,self__.meta);\n} else {\nif(((1) \x3c (self__.cnt - cljs.core.tail_off(coll__$1)))){\nreturn (new cljs.core.PersistentVector(self__.meta,(self__.cnt - (1)),self__.shift,self__.root,self__.tail.slice((0),(-1)),null));\n} else {\nvar new_tail \x3d cljs.core.unchecked_array_for(coll__$1,(self__.cnt - (2)));\nvar nr \x3d cljs.core.pop_tail(coll__$1,self__.shift,self__.root);\nvar new_root \x3d (((nr \x3d\x3d null))?cljs.core.PersistentVector.EMPTY_NODE:nr);\nvar cnt_1 \x3d (self__.cnt - (1));\nif(((((5) \x3c self__.shift)) \x26\x26 ((cljs.core.pv_aget(new_root,(1)) \x3d\x3d null)))){\nreturn (new cljs.core.PersistentVector(self__.meta,cnt_1,(self__.shift - (5)),cljs.core.pv_aget(new_root,(0)),new_tail,null));\n} else {\nreturn (new cljs.core.PersistentVector(self__.meta,cnt_1,self__.shift,new_root,new_tail,null));\n}\n\n}\n}\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nreturn (new cljs.core.RSeq(coll__$1,(self__.cnt - (1)),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((other instanceof cljs.core.PersistentVector)){\nif((self__.cnt \x3d\x3d\x3d cljs.core.count(other))){\nvar me_iter \x3d coll__$1.cljs$core$IIterable$_iterator$arity$1(null);\nvar you_iter \x3d other.cljs$core$IIterable$_iterator$arity$1(null);\nwhile(true){\nif(me_iter.hasNext()){\nvar x \x3d me_iter.next();\nvar y \x3d you_iter.next();\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,y)){\ncontinue;\n} else {\nreturn false;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n} else {\nreturn false;\n}\n} else {\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.TransientVector(self__.cnt,self__.shift,(cljs.core.tv_editable_root.cljs$core$IFn$_invoke$arity$1 ? cljs.core.tv_editable_root.cljs$core$IFn$_invoke$arity$1(self__.root) : cljs.core.tv_editable_root.call(null,self__.root)),(cljs.core.tv_editable_tail.cljs$core$IFn$_invoke$arity$1 ? cljs.core.tv_editable_tail.cljs$core$IFn$_invoke$arity$1(self__.tail) : cljs.core.tv_editable_tail.call(null,self__.tail))));\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.PersistentVector.EMPTY,self__.meta);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (v,f){\nvar self__ \x3d this;\nvar v__$1 \x3d this;\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$4(v__$1,f,(0),self__.cnt);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (v,f,init){\nvar self__ \x3d this;\nvar v__$1 \x3d this;\nvar i \x3d (0);\nvar init__$1 \x3d init;\nwhile(true){\nif((i \x3c self__.cnt)){\nvar arr \x3d cljs.core.unchecked_array_for(v__$1,i);\nvar len \x3d arr.length;\nvar init__$2 \x3d (function (){var j \x3d (0);\nvar init__$2 \x3d init__$1;\nwhile(true){\nif((j \x3c len)){\nvar init__$3 \x3d (function (){var G__39079 \x3d init__$2;\nvar G__39080 \x3d (arr[j]);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__39079,G__39080) : f.call(null,G__39079,G__39080));\n})();\nif(cljs.core.reduced_QMARK_(init__$3)){\nreturn init__$3;\n} else {\nvar G__44971 \x3d (j + (1));\nvar G__44972 \x3d init__$3;\nj \x3d G__44971;\ninit__$2 \x3d G__44972;\ncontinue;\n}\n} else {\nreturn init__$2;\n}\nbreak;\n}\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn cljs.core.deref(init__$2);\n} else {\nvar G__44974 \x3d (i + len);\nvar G__44975 \x3d init__$2;\ni \x3d G__44974;\ninit__$1 \x3d G__44975;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (coll,k,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(typeof k \x3d\x3d\x3d \x27number\x27){\nreturn coll__$1.cljs$core$IVector$_assoc_n$arity$3(null,k,v);\n} else {\nthrow (new Error(\x22Vector\x27s key for assoc must be a number.\x22));\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.integer_QMARK_(k)){\nreturn ((((0) \x3c\x3d k)) \x26\x26 ((k \x3c self__.cnt)));\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3d\x3d\x3d (0))){\nreturn null;\n} else {\nif((self__.cnt \x3c\x3d (32))){\nreturn (new cljs.core.IndexedSeq(self__.tail,(0),null));\n} else {\nvar G__39081 \x3d coll__$1;\nvar G__39082 \x3d cljs.core.first_array_for_longvec(coll__$1);\nvar G__39083 \x3d (0);\nvar G__39084 \x3d (0);\nreturn (cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4 ? cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4(G__39081,G__39082,G__39083,G__39084) : cljs.core.chunked_seq.call(null,G__39081,G__39082,G__39083,G__39084));\n\n}\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentVector(new_meta,self__.cnt,self__.shift,self__.root,self__.tail,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((self__.cnt - cljs.core.tail_off(coll__$1)) \x3c (32))){\nvar len \x3d self__.tail.length;\nvar new_tail \x3d (new Array((len + (1))));\nvar n__4648__auto___44983 \x3d len;\nvar i_44984 \x3d (0);\nwhile(true){\nif((i_44984 \x3c n__4648__auto___44983)){\n(new_tail[i_44984] \x3d (self__.tail[i_44984]));\n\nvar G__44986 \x3d (i_44984 + (1));\ni_44984 \x3d G__44986;\ncontinue;\n} else {\n}\nbreak;\n}\n\n(new_tail[len] \x3d o);\n\nreturn (new cljs.core.PersistentVector(self__.meta,(self__.cnt + (1)),self__.shift,self__.root,new_tail,null));\n} else {\nvar root_overflow_QMARK_ \x3d ((self__.cnt \x3e\x3e\x3e (5)) \x3e ((1) \x3c\x3c self__.shift));\nvar new_shift \x3d ((root_overflow_QMARK_)?(self__.shift + (5)):self__.shift);\nvar new_root \x3d ((root_overflow_QMARK_)?(function (){var n_r \x3d cljs.core.pv_fresh_node(null);\ncljs.core.pv_aset(n_r,(0),self__.root);\n\ncljs.core.pv_aset(n_r,(1),cljs.core.new_path(null,self__.shift,(new cljs.core.VectorNode(null,self__.tail))));\n\nreturn n_r;\n})():cljs.core.push_tail(coll__$1,self__.shift,self__.root,(new cljs.core.VectorNode(null,self__.tail))));\nreturn (new cljs.core.PersistentVector(self__.meta,(self__.cnt + (1)),new_shift,new_root,[o],null));\n}\n}));\n\n(cljs.core.PersistentVector.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39085 \x3d (arguments.length - (1));\nswitch (G__39085) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.PersistentVector.prototype.apply \x3d (function (self__,args39075){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39075)));\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$IIndexed$_nth$arity$2(null,k);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentVector.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.Symbol(null,\x22shift\x22,\x22shift\x22,-1657295705,null),new cljs.core.Symbol(null,\x22root\x22,\x22root\x22,1191874074,null),new cljs.core.Symbol(null,\x22tail\x22,\x22tail\x22,494507963,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentVector.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentVector.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentVector\x22);\n\n(cljs.core.PersistentVector.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentVector\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentVector.\n */\ncljs.core.__GT_PersistentVector \x3d (function cljs$core$__GT_PersistentVector(meta,cnt,shift,root,tail,__hash){\nreturn (new cljs.core.PersistentVector(meta,cnt,shift,root,tail,__hash));\n});\n\n(cljs.core.PersistentVector.EMPTY_NODE \x3d (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])));\n(cljs.core.PersistentVector.EMPTY \x3d (new cljs.core.PersistentVector(null,(0),(5),cljs.core.PersistentVector.EMPTY_NODE,[],cljs.core.empty_ordered_hash)));\n(cljs.core.PersistentVector.fromArray \x3d (function (xs,no_clone){\nvar l \x3d xs.length;\nvar xs__$1 \x3d ((no_clone)?xs:cljs.core.aclone(xs));\nif((l \x3c (32))){\nreturn (new cljs.core.PersistentVector(null,l,(5),cljs.core.PersistentVector.EMPTY_NODE,xs__$1,null));\n} else {\nvar node \x3d xs__$1.slice((0),(32));\nvar v \x3d (new cljs.core.PersistentVector(null,(32),(5),cljs.core.PersistentVector.EMPTY_NODE,node,null));\nvar i \x3d (32);\nvar out \x3d v.cljs$core$IEditableCollection$_as_transient$arity$1(null);\nwhile(true){\nif((i \x3c l)){\nvar G__45015 \x3d (i + (1));\nvar G__45016 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(out,(xs__$1[i]));\ni \x3d G__45015;\nout \x3d G__45016;\ncontinue;\n} else {\nreturn cljs.core.persistent_BANG_(out);\n}\nbreak;\n}\n}\n}));\ngoog.object.set(cljs.core.PersistentVector.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Creates a new vector containing the contents of coll. JavaScript arrays\n *   will be aliased and should not be modified.\n */\ncljs.core.vec \x3d (function cljs$core$vec(coll){\nif(cljs.core.truth_((cljs.core.map_entry_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs.core.map_entry_QMARK_.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.map_entry_QMARK_.call(null,coll)))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.key.call(null,coll)),(cljs.core.val.cljs$core$IFn$_invoke$arity$1 ? cljs.core.val.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.val.call(null,coll))], null);\n} else {\nif(cljs.core.vector_QMARK_(coll)){\nreturn cljs.core.with_meta(coll,null);\n} else {\nif(cljs.core.array_QMARK_(coll)){\nreturn cljs.core.PersistentVector.fromArray(coll,true);\n} else {\nreturn cljs.core._persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj_BANG_,cljs.core._as_transient(cljs.core.PersistentVector.EMPTY),coll));\n\n}\n}\n}\n});\n/**\n * Creates a new vector containing the args.\n */\ncljs.core.vector \x3d (function cljs$core$vector(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___45021 \x3d arguments.length;\nvar i__4772__auto___45022 \x3d (0);\nwhile(true){\nif((i__4772__auto___45022 \x3c len__4771__auto___45021)){\nargs__4777__auto__.push((arguments[i__4772__auto___45022]));\n\nvar G__45023 \x3d (i__4772__auto___45022 + (1));\ni__4772__auto___45022 \x3d G__45023;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.vector.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.vector.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nif((((args instanceof cljs.core.IndexedSeq)) \x26\x26 ((args.i \x3d\x3d\x3d (0))))){\nreturn cljs.core.PersistentVector.fromArray(args.arr,(!(cljs.core.array_QMARK_(args.arr))));\n} else {\nreturn cljs.core.vec(args);\n}\n}));\n\n(cljs.core.vector.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.vector.cljs$lang$applyTo \x3d (function (seq39086){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39086));\n}));\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ASeq}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IChunkedNext}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IChunkedSeq}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.ChunkedSeq \x3d (function (vec,node,i,off,meta,__hash){\nthis.vec \x3d vec;\nthis.node \x3d node;\nthis.i \x3d i;\nthis.off \x3d off;\nthis.meta \x3d meta;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32375020;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1536;\n});\n(cljs.core.ChunkedSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.ChunkedSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.ChunkedSeq.prototype.indexOf \x3d (function() {\nvar G__45050 \x3d null;\nvar G__45050__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__45050__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45050 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45050__1.call(this,x);\ncase 2:\nreturn G__45050__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45050.cljs$core$IFn$_invoke$arity$1 \x3d G__45050__1;\nG__45050.cljs$core$IFn$_invoke$arity$2 \x3d G__45050__2;\nreturn G__45050;\n})()\n);\n\n(cljs.core.ChunkedSeq.prototype.lastIndexOf \x3d (function() {\nvar G__45052 \x3d null;\nvar G__45052__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__45052__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45052 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45052__1.call(this,x);\ncase 2:\nreturn G__45052__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45052.cljs$core$IFn$_invoke$arity$1 \x3d G__45052__1;\nG__45052.cljs$core$IFn$_invoke$arity$2 \x3d G__45052__2;\nreturn G__45052;\n})()\n);\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((self__.off + (1)) \x3c self__.node.length)){\nvar s \x3d (function (){var G__39087 \x3d self__.vec;\nvar G__39088 \x3d self__.node;\nvar G__39089 \x3d self__.i;\nvar G__39090 \x3d (self__.off + (1));\nreturn (cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4 ? cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4(G__39087,G__39088,G__39089,G__39090) : cljs.core.chunked_seq.call(null,G__39087,G__39088,G__39089,G__39090));\n})();\nif((s \x3d\x3d null)){\nreturn null;\n} else {\nreturn s;\n}\n} else {\nreturn coll__$1.cljs$core$IChunkedNext$_chunked_next$arity$1(null);\n}\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$4(self__.vec,f,(self__.i + self__.off),cljs.core.count(self__.vec));\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$5(self__.vec,f,start,(self__.i + self__.off),cljs.core.count(self__.vec));\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (self__.node[self__.off]);\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((self__.off + (1)) \x3c self__.node.length)){\nvar s \x3d (function (){var G__39091 \x3d self__.vec;\nvar G__39092 \x3d self__.node;\nvar G__39093 \x3d self__.i;\nvar G__39094 \x3d (self__.off + (1));\nreturn (cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4 ? cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4(G__39091,G__39092,G__39093,G__39094) : cljs.core.chunked_seq.call(null,G__39091,G__39092,G__39093,G__39094));\n})();\nif((s \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn s;\n}\n} else {\nreturn coll__$1.cljs$core$IChunkedSeq$_chunked_rest$arity$1(null);\n}\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IChunkedSeq$_chunked_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$2(self__.node,self__.off);\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IChunkedSeq$_chunked_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar end \x3d (self__.i + self__.node.length);\nif((end \x3c cljs.core._count(self__.vec))){\nvar G__39095 \x3d self__.vec;\nvar G__39096 \x3d cljs.core.unchecked_array_for(self__.vec,end);\nvar G__39097 \x3d end;\nvar G__39098 \x3d (0);\nreturn (cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4 ? cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4(G__39095,G__39096,G__39097,G__39098) : cljs.core.chunked_seq.call(null,G__39095,G__39096,G__39097,G__39098));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$5 ? cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$5(self__.vec,self__.node,self__.i,self__.off,new_meta) : cljs.core.chunked_seq.call(null,self__.vec,self__.node,self__.i,self__.off,new_meta));\n}\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IChunkedNext$_chunked_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar end \x3d (self__.i + self__.node.length);\nif((end \x3c cljs.core._count(self__.vec))){\nvar G__39099 \x3d self__.vec;\nvar G__39100 \x3d cljs.core.unchecked_array_for(self__.vec,end);\nvar G__39101 \x3d end;\nvar G__39102 \x3d (0);\nreturn (cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4 ? cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4(G__39099,G__39100,G__39101,G__39102) : cljs.core.chunked_seq.call(null,G__39099,G__39100,G__39101,G__39102));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.ChunkedSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22vec\x22,\x22vec\x22,982683596,null),new cljs.core.Symbol(null,\x22node\x22,\x22node\x22,-2073234571,null),new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.Symbol(null,\x22off\x22,\x22off\x22,-2047994980,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ChunkedSeq.cljs$lang$type \x3d true);\n\n(cljs.core.ChunkedSeq.cljs$lang$ctorStr \x3d \x22cljs.core/ChunkedSeq\x22);\n\n(cljs.core.ChunkedSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ChunkedSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ChunkedSeq.\n */\ncljs.core.__GT_ChunkedSeq \x3d (function cljs$core$__GT_ChunkedSeq(vec,node,i,off,meta,__hash){\nreturn (new cljs.core.ChunkedSeq(vec,node,i,off,meta,__hash));\n});\n\ngoog.object.set(cljs.core.ChunkedSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.chunked_seq \x3d (function cljs$core$chunked_seq(var_args){\nvar G__39104 \x3d arguments.length;\nswitch (G__39104) {\ncase 3:\nreturn cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$3 \x3d (function (vec,i,off){\nreturn (new cljs.core.ChunkedSeq(vec,cljs.core.array_for(vec,i),i,off,null,null));\n}));\n\n(cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$4 \x3d (function (vec,node,i,off){\nreturn (new cljs.core.ChunkedSeq(vec,node,i,off,null,null));\n}));\n\n(cljs.core.chunked_seq.cljs$core$IFn$_invoke$arity$5 \x3d (function (vec,node,i,off,meta){\nreturn (new cljs.core.ChunkedSeq(vec,node,i,off,meta,null));\n}));\n\n(cljs.core.chunked_seq.cljs$lang$maxFixedArity \x3d 5);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IVector}\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.ILookup}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Subvec \x3d (function (meta,v,start,end,__hash){\nthis.meta \x3d meta;\nthis.v \x3d v;\nthis.start \x3d start;\nthis.end \x3d end;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 167666463;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.core.Subvec.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Subvec.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (coll,n){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((n \x3c (0))){\nreturn null;\n} else {\nvar idx \x3d (self__.start + n);\nif((idx \x3c self__.end)){\nreturn (new cljs.core.MapEntry(n,cljs.core._lookup(self__.v,idx),null));\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.core.Subvec.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.Subvec.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Subvec.prototype.indexOf \x3d (function() {\nvar G__45096 \x3d null;\nvar G__45096__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__45096__2 \x3d (function (x,start__$1){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start__$1);\n});\nG__45096 \x3d function(x,start__$1){\nswitch(arguments.length){\ncase 1:\nreturn G__45096__1.call(this,x);\ncase 2:\nreturn G__45096__2.call(this,x,start__$1);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45096.cljs$core$IFn$_invoke$arity$1 \x3d G__45096__1;\nG__45096.cljs$core$IFn$_invoke$arity$2 \x3d G__45096__2;\nreturn G__45096;\n})()\n);\n\n(cljs.core.Subvec.prototype.lastIndexOf \x3d (function() {\nvar G__45098 \x3d null;\nvar G__45098__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__45098__2 \x3d (function (x,start__$1){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start__$1);\n});\nG__45098 \x3d function(x,start__$1){\nswitch(arguments.length){\ncase 1:\nreturn G__45098__1.call(this,x);\ncase 2:\nreturn G__45098__2.call(this,x,start__$1);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45098.cljs$core$IFn$_invoke$arity$1 \x3d G__45098__1;\nG__45098.cljs$core$IFn$_invoke$arity$2 \x3d G__45098__2;\nreturn G__45098;\n})()\n);\n\n(cljs.core.Subvec.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(typeof k \x3d\x3d\x3d \x27number\x27){\nreturn coll__$1.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (coll,f,init){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar i \x3d self__.start;\nvar j \x3d (0);\nvar init__$1 \x3d init;\nwhile(true){\nif((i \x3c self__.end)){\nvar init__$2 \x3d (function (){var G__39106 \x3d init__$1;\nvar G__39107 \x3d j;\nvar G__39108 \x3d cljs.core._nth(self__.v,i);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39106,G__39107,G__39108) : f.call(null,G__39106,G__39107,G__39108));\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn cljs.core.deref(init__$2);\n} else {\nvar G__45106 \x3d (i + (1));\nvar G__45107 \x3d (j + (1));\nvar G__45108 \x3d init__$2;\ni \x3d G__45106;\nj \x3d G__45107;\ninit__$1 \x3d G__45108;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (coll,n){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((n \x3c (0))) || ((self__.end \x3c\x3d (self__.start + n))))){\nreturn cljs.core.vector_index_out_of_bounds(n,(self__.end - self__.start));\n} else {\nreturn cljs.core._nth(self__.v,(self__.start + n));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (coll,n,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((n \x3c (0))) || ((self__.end \x3c\x3d (self__.start + n))))){\nreturn not_found;\n} else {\nreturn cljs.core._nth(self__.v,(self__.start + n),not_found);\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IVector$_assoc_n$arity$3 \x3d (function (coll,n,val){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar v_pos \x3d (self__.start + n);\nif((((n \x3c (0))) || (((self__.end + (1)) \x3c\x3d v_pos)))){\nthrow (new Error([\x22Index \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),\x22 out of bounds [0,\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(coll__$1.cljs$core$ICounted$_count$arity$1(null)),\x22]\x22].join(\x27\x27)));\n} else {\nvar G__39109 \x3d self__.meta;\nvar G__39110 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.v,v_pos,val);\nvar G__39111 \x3d self__.start;\nvar G__39112 \x3d (function (){var x__4249__auto__ \x3d self__.end;\nvar y__4250__auto__ \x3d (v_pos + (1));\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})();\nvar G__39113 \x3d null;\nreturn (cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5 ? cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5(G__39109,G__39110,G__39111,G__39112,G__39113) : cljs.core.build_subvec.call(null,G__39109,G__39110,G__39111,G__39112,G__39113));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((!((self__.v \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.v.cljs$core$APersistentVector$))))?true:false):false)){\nreturn cljs.core.ranged_iterator(self__.v,self__.start,self__.end);\n} else {\nreturn cljs.core.seq_iter(coll__$1);\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.Subvec(self__.meta,self__.v,self__.start,self__.end,self__.__hash));\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (self__.end - self__.start);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.start \x3d\x3d\x3d self__.end)){\nreturn null;\n} else {\nreturn cljs.core._nth(self__.v,(self__.end - (1)));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.start \x3d\x3d\x3d self__.end)){\nthrow (new Error(\x22Can\x27t pop empty vector\x22));\n} else {\nvar G__39115 \x3d self__.meta;\nvar G__39116 \x3d self__.v;\nvar G__39117 \x3d self__.start;\nvar G__39118 \x3d (self__.end - (1));\nvar G__39119 \x3d null;\nreturn (cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5 ? cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5(G__39115,G__39116,G__39117,G__39118,G__39119) : cljs.core.build_subvec.call(null,G__39115,G__39116,G__39117,G__39118,G__39119));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((!((self__.start \x3d\x3d\x3d self__.end)))){\nreturn (new cljs.core.RSeq(coll__$1,((self__.end - self__.start) - (1)),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.PersistentVector.EMPTY,self__.meta);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((!((self__.v \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.v.cljs$core$APersistentVector$))))?true:false):false)){\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$4(self__.v,f,self__.start,self__.end);\n} else {\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2(coll__$1,f);\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,init){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((!((self__.v \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.v.cljs$core$APersistentVector$))))?true:false):false)){\nreturn cljs.core.pv_reduce.cljs$core$IFn$_invoke$arity$5(self__.v,f,init,self__.start,self__.end);\n} else {\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$3(coll__$1,f,init);\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (coll,key,val){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(typeof key \x3d\x3d\x3d \x27number\x27){\nreturn coll__$1.cljs$core$IVector$_assoc_n$arity$3(null,key,val);\n} else {\nthrow (new Error(\x22Subvec\x27s key for assoc must be a number.\x22));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar subvec_seq \x3d (function cljs$core$subvec_seq(i){\nif((i \x3d\x3d\x3d self__.end)){\nreturn null;\n} else {\nreturn cljs.core.cons(cljs.core._nth(self__.v,i),(new cljs.core.LazySeq(null,(function (){\nreturn cljs$core$subvec_seq((i + (1)));\n}),null,null)));\n}\n});\nreturn subvec_seq(self__.start);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5 ? cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5(new_meta,self__.v,self__.start,self__.end,self__.__hash) : cljs.core.build_subvec.call(null,new_meta,self__.v,self__.start,self__.end,self__.__hash));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar G__39122 \x3d self__.meta;\nvar G__39123 \x3d cljs.core._assoc_n(self__.v,self__.end,o);\nvar G__39124 \x3d self__.start;\nvar G__39125 \x3d (self__.end + (1));\nvar G__39126 \x3d null;\nreturn (cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5 ? cljs.core.build_subvec.cljs$core$IFn$_invoke$arity$5(G__39122,G__39123,G__39124,G__39125,G__39126) : cljs.core.build_subvec.call(null,G__39122,G__39123,G__39124,G__39125,G__39126));\n}));\n\n(cljs.core.Subvec.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39127 \x3d (arguments.length - (1));\nswitch (G__39127) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.Subvec.prototype.apply \x3d (function (self__,args39105){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39105)));\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$IIndexed$_nth$arity$2(null,k);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.Subvec.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Subvec.cljs$lang$type \x3d true);\n\n(cljs.core.Subvec.cljs$lang$ctorStr \x3d \x22cljs.core/Subvec\x22);\n\n(cljs.core.Subvec.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Subvec\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Subvec.\n */\ncljs.core.__GT_Subvec \x3d (function cljs$core$__GT_Subvec(meta,v,start,end,__hash){\nreturn (new cljs.core.Subvec(meta,v,start,end,__hash));\n});\n\ngoog.object.set(cljs.core.Subvec.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.build_subvec \x3d (function cljs$core$build_subvec(meta,v,start,end,__hash){\nwhile(true){\nif((v instanceof cljs.core.Subvec)){\nvar G__45184 \x3d meta;\nvar G__45185 \x3d v.v;\nvar G__45186 \x3d (v.start + start);\nvar G__45187 \x3d (v.start + end);\nvar G__45188 \x3d __hash;\nmeta \x3d G__45184;\nv \x3d G__45185;\nstart \x3d G__45186;\nend \x3d G__45187;\n__hash \x3d G__45188;\ncontinue;\n} else {\nif(cljs.core.vector_QMARK_(v)){\n} else {\nthrow (new Error(\x22v must satisfy IVector\x22));\n}\n\nif((((start \x3c (0))) || ((end \x3c start)) || ((end \x3e cljs.core.count(v))))){\nthrow (new Error(\x22Index out of bounds\x22));\n} else {\n}\n\nreturn (new cljs.core.Subvec(meta,v,start,end,__hash));\n}\nbreak;\n}\n});\n/**\n * Returns a persistent vector of the items in vector from\n *   start (inclusive) to end (exclusive).  If end is not supplied,\n *   defaults to (count vector). This operation is O(1) and very fast, as\n *   the resulting vector shares structure with the original and no\n *   trimming is done.\n */\ncljs.core.subvec \x3d (function cljs$core$subvec(var_args){\nvar G__39129 \x3d arguments.length;\nswitch (G__39129) {\ncase 2:\nreturn cljs.core.subvec.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.subvec.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.subvec.cljs$core$IFn$_invoke$arity$2 \x3d (function (v,start){\nreturn cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(v,start,cljs.core.count(v));\n}));\n\n(cljs.core.subvec.cljs$core$IFn$_invoke$arity$3 \x3d (function (v,start,end){\nif((((!((start \x3d\x3d null)))) \x26\x26 ((!((end \x3d\x3d null)))))){\n} else {\nthrow (new Error(\x22Assert failed: (and (not (nil? start)) (not (nil? end)))\x22));\n}\n\nreturn cljs.core.build_subvec(null,v,(start | (0)),(end | (0)),null);\n}));\n\n(cljs.core.subvec.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.tv_ensure_editable \x3d (function cljs$core$tv_ensure_editable(edit,node){\nif((edit \x3d\x3d\x3d node.edit)){\nreturn node;\n} else {\nreturn (new cljs.core.VectorNode(edit,cljs.core.aclone(node.arr)));\n}\n});\ncljs.core.tv_editable_root \x3d (function cljs$core$tv_editable_root(node){\nreturn (new cljs.core.VectorNode(({}),cljs.core.aclone(node.arr)));\n});\ncljs.core.tv_editable_tail \x3d (function cljs$core$tv_editable_tail(tl){\nvar ret \x3d [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];\ncljs.core.array_copy(tl,(0),ret,(0),tl.length);\n\nreturn ret;\n});\ncljs.core.tv_push_tail \x3d (function cljs$core$tv_push_tail(tv,level,parent,tail_node){\nvar ret \x3d cljs.core.tv_ensure_editable(tv.root.edit,parent);\nvar subidx \x3d (((tv.cnt - (1)) \x3e\x3e\x3e level) \x26 (31));\ncljs.core.pv_aset(ret,subidx,(((level \x3d\x3d\x3d (5)))?tail_node:(function (){var child \x3d cljs.core.pv_aget(ret,subidx);\nif((!((child \x3d\x3d null)))){\nvar G__39132 \x3d tv;\nvar G__39133 \x3d (level - (5));\nvar G__39134 \x3d child;\nvar G__39135 \x3d tail_node;\nreturn (cljs.core.tv_push_tail.cljs$core$IFn$_invoke$arity$4 ? cljs.core.tv_push_tail.cljs$core$IFn$_invoke$arity$4(G__39132,G__39133,G__39134,G__39135) : cljs.core.tv_push_tail.call(null,G__39132,G__39133,G__39134,G__39135));\n} else {\nreturn cljs.core.new_path(tv.root.edit,(level - (5)),tail_node);\n}\n})()));\n\nreturn ret;\n});\ncljs.core.tv_pop_tail \x3d (function cljs$core$tv_pop_tail(tv,level,node){\nvar node__$1 \x3d cljs.core.tv_ensure_editable(tv.root.edit,node);\nvar subidx \x3d (((tv.cnt - (2)) \x3e\x3e\x3e level) \x26 (31));\nif((level \x3e (5))){\nvar new_child \x3d (function (){var G__39136 \x3d tv;\nvar G__39137 \x3d (level - (5));\nvar G__39138 \x3d cljs.core.pv_aget(node__$1,subidx);\nreturn (cljs.core.tv_pop_tail.cljs$core$IFn$_invoke$arity$3 ? cljs.core.tv_pop_tail.cljs$core$IFn$_invoke$arity$3(G__39136,G__39137,G__39138) : cljs.core.tv_pop_tail.call(null,G__39136,G__39137,G__39138));\n})();\nif((((new_child \x3d\x3d null)) \x26\x26 ((subidx \x3d\x3d\x3d (0))))){\nreturn null;\n} else {\ncljs.core.pv_aset(node__$1,subidx,new_child);\n\nreturn node__$1;\n}\n} else {\nif((subidx \x3d\x3d\x3d (0))){\nreturn null;\n} else {\ncljs.core.pv_aset(node__$1,subidx,null);\n\nreturn node__$1;\n\n}\n}\n});\ncljs.core.unchecked_editable_array_for \x3d (function cljs$core$unchecked_editable_array_for(tv,i){\nif((i \x3e\x3d cljs.core.tail_off(tv))){\nreturn tv.tail;\n} else {\nvar root \x3d tv.root;\nvar node \x3d root;\nvar level \x3d tv.shift;\nwhile(true){\nif((level \x3e (0))){\nvar G__45235 \x3d cljs.core.tv_ensure_editable(root.edit,cljs.core.pv_aget(node,((i \x3e\x3e\x3e level) \x26 (31))));\nvar G__45236 \x3d (level - (5));\nnode \x3d G__45235;\nlevel \x3d G__45236;\ncontinue;\n} else {\nreturn node.arr;\n}\nbreak;\n}\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ITransientCollection}\n * @implements {cljs.core.ITransientVector}\n * @implements {cljs.core.ITransientAssociative}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.TransientVector \x3d (function (cnt,shift,root,tail){\nthis.cnt \x3d cnt;\nthis.shift \x3d shift;\nthis.root \x3d root;\nthis.tail \x3d tail;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 88;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 275;\n});\n(cljs.core.TransientVector.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 \x3d (function (tcoll,o){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.root.edit){\nif(((self__.cnt - cljs.core.tail_off(tcoll__$1)) \x3c (32))){\n(self__.tail[(self__.cnt \x26 (31))] \x3d o);\n\n(self__.cnt \x3d (self__.cnt + (1)));\n\nreturn tcoll__$1;\n} else {\nvar tail_node \x3d (new cljs.core.VectorNode(self__.root.edit,self__.tail));\nvar new_tail \x3d [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];\n(new_tail[(0)] \x3d o);\n\n(self__.tail \x3d new_tail);\n\nif(((self__.cnt \x3e\x3e\x3e (5)) \x3e ((1) \x3c\x3c self__.shift))){\nvar new_root_array \x3d [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];\nvar new_shift \x3d (self__.shift + (5));\n(new_root_array[(0)] \x3d self__.root);\n\n(new_root_array[(1)] \x3d cljs.core.new_path(self__.root.edit,self__.shift,tail_node));\n\n(self__.root \x3d (new cljs.core.VectorNode(self__.root.edit,new_root_array)));\n\n(self__.shift \x3d new_shift);\n\n(self__.cnt \x3d (self__.cnt + (1)));\n\nreturn tcoll__$1;\n} else {\nvar new_root \x3d cljs.core.tv_push_tail(tcoll__$1,self__.shift,self__.root,tail_node);\n(self__.root \x3d new_root);\n\n(self__.cnt \x3d (self__.cnt + (1)));\n\nreturn tcoll__$1;\n}\n}\n} else {\nthrow (new Error(\x22conj! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.root.edit){\n(self__.root.edit \x3d null);\n\nvar len \x3d (self__.cnt - cljs.core.tail_off(tcoll__$1));\nvar trimmed_tail \x3d (new Array(len));\ncljs.core.array_copy(self__.tail,(0),trimmed_tail,(0),len);\n\nreturn (new cljs.core.PersistentVector(null,self__.cnt,self__.shift,self__.root,trimmed_tail,null));\n} else {\nthrow (new Error(\x22persistent! called twice\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 \x3d (function (tcoll,key,val){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(typeof key \x3d\x3d\x3d \x27number\x27){\nreturn tcoll__$1.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3(null,key,val);\n} else {\nthrow (new Error(\x22TransientVector\x27s key for assoc! must be a number.\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ITransientVector$_assoc_n_BANG_$arity$3 \x3d (function (tcoll,n,val){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.root.edit){\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c self__.cnt)))){\nif((cljs.core.tail_off(tcoll__$1) \x3c\x3d n)){\n(self__.tail[(n \x26 (31))] \x3d val);\n\nreturn tcoll__$1;\n} else {\nvar new_root \x3d (function cljs$core$go(level,node){\nvar node__$1 \x3d cljs.core.tv_ensure_editable(self__.root.edit,node);\nif((level \x3d\x3d\x3d (0))){\ncljs.core.pv_aset(node__$1,(n \x26 (31)),val);\n\nreturn node__$1;\n} else {\nvar subidx \x3d ((n \x3e\x3e\x3e level) \x26 (31));\ncljs.core.pv_aset(node__$1,subidx,cljs$core$go((level - (5)),cljs.core.pv_aget(node__$1,subidx)));\n\nreturn node__$1;\n}\n})(self__.shift,self__.root);\n(self__.root \x3d new_root);\n\nreturn tcoll__$1;\n}\n} else {\nif((n \x3d\x3d\x3d self__.cnt)){\nreturn tcoll__$1.cljs$core$ITransientCollection$_conj_BANG_$arity$2(null,val);\n} else {\nthrow (new Error([\x22Index \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),\x22 out of bounds for TransientVector of length\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.cnt)].join(\x27\x27)));\n\n}\n}\n} else {\nthrow (new Error(\x22assoc! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ITransientVector$_pop_BANG_$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.root.edit){\nif((self__.cnt \x3d\x3d\x3d (0))){\nthrow (new Error(\x22Can\x27t pop empty vector\x22));\n} else {\nif(((1) \x3d\x3d\x3d self__.cnt)){\n(self__.cnt \x3d (0));\n\nreturn tcoll__$1;\n} else {\nif((((self__.cnt - (1)) \x26 (31)) \x3e (0))){\n(self__.cnt \x3d (self__.cnt - (1)));\n\nreturn tcoll__$1;\n} else {\nvar new_tail \x3d cljs.core.unchecked_editable_array_for(tcoll__$1,(self__.cnt - (2)));\nvar new_root \x3d (function (){var nr \x3d cljs.core.tv_pop_tail(tcoll__$1,self__.shift,self__.root);\nif((!((nr \x3d\x3d null)))){\nreturn nr;\n} else {\nreturn (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]));\n}\n})();\nif(((((5) \x3c self__.shift)) \x26\x26 ((cljs.core.pv_aget(new_root,(1)) \x3d\x3d null)))){\nvar new_root__$1 \x3d cljs.core.tv_ensure_editable(self__.root.edit,cljs.core.pv_aget(new_root,(0)));\n(self__.root \x3d new_root__$1);\n\n(self__.shift \x3d (self__.shift - (5)));\n\n(self__.cnt \x3d (self__.cnt - (1)));\n\n(self__.tail \x3d new_tail);\n\nreturn tcoll__$1;\n} else {\n(self__.root \x3d new_root);\n\n(self__.cnt \x3d (self__.cnt - (1)));\n\n(self__.tail \x3d new_tail);\n\nreturn tcoll__$1;\n}\n\n}\n}\n}\n} else {\nthrow (new Error(\x22pop! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(self__.root.edit){\nreturn self__.cnt;\n} else {\nthrow (new Error(\x22count after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (coll,n){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(self__.root.edit){\nreturn (cljs.core.array_for(coll__$1,n)[(n \x26 (31))]);\n} else {\nthrow (new Error(\x22nth after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (coll,n,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c self__.cnt)))){\nreturn coll__$1.cljs$core$IIndexed$_nth$arity$2(null,n);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((!(self__.root.edit))){\nthrow (new Error(\x22lookup after persistent!\x22));\n} else {\nif(typeof k \x3d\x3d\x3d \x27number\x27){\nreturn coll__$1.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n} else {\nreturn not_found;\n\n}\n}\n}));\n\n(cljs.core.TransientVector.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39140 \x3d (arguments.length - (1));\nswitch (G__39140) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.TransientVector.prototype.apply \x3d (function (self__,args39139){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39139)));\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.TransientVector.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.TransientVector.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22shift\x22,\x22shift\x22,-1657295705,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22root\x22,\x22root\x22,1191874074,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22tail\x22,\x22tail\x22,494507963,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.TransientVector.cljs$lang$type \x3d true);\n\n(cljs.core.TransientVector.cljs$lang$ctorStr \x3d \x22cljs.core/TransientVector\x22);\n\n(cljs.core.TransientVector.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/TransientVector\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/TransientVector.\n */\ncljs.core.__GT_TransientVector \x3d (function cljs$core$__GT_TransientVector(cnt,shift,root,tail){\nreturn (new cljs.core.TransientVector(cnt,shift,root,tail));\n});\n\n\n/**\n* @constructor\n*/\ncljs.core.PersistentQueueIter \x3d (function (fseq,riter){\nthis.fseq \x3d fseq;\nthis.riter \x3d riter;\n});\n(cljs.core.PersistentQueueIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar or__4160__auto__ \x3d (((!((self__.fseq \x3d\x3d null)))) \x26\x26 (cljs.core.seq(self__.fseq)));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nif((!((self__.riter \x3d\x3d null)))){\nreturn self__.riter.hasNext();\n} else {\nreturn false;\n}\n}\n}));\n\n(cljs.core.PersistentQueueIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((!((self__.fseq \x3d\x3d null)))){\nvar ret \x3d cljs.core.first(self__.fseq);\n(self__.fseq \x3d cljs.core.next(self__.fseq));\n\nreturn ret;\n} else {\nif((((!((self__.riter \x3d\x3d null)))) \x26\x26 (self__.riter.hasNext()))){\nreturn self__.riter.next();\n} else {\nthrow (new Error(\x22No such element\x22));\n\n}\n}\n}));\n\n(cljs.core.PersistentQueueIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.PersistentQueueIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22fseq\x22,\x22fseq\x22,-1466412450,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22riter\x22,\x22riter\x22,-237834262,null)], null);\n}));\n\n(cljs.core.PersistentQueueIter.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentQueueIter.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentQueueIter\x22);\n\n(cljs.core.PersistentQueueIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentQueueIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentQueueIter.\n */\ncljs.core.__GT_PersistentQueueIter \x3d (function cljs$core$__GT_PersistentQueueIter(fseq,riter){\nreturn (new cljs.core.PersistentQueueIter(fseq,riter));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.PersistentQueueSeq \x3d (function (meta,front,rear,__hash){\nthis.meta \x3d meta;\nthis.front \x3d front;\nthis.rear \x3d rear;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 31850700;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.PersistentQueueSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.indexOf \x3d (function() {\nvar G__45289 \x3d null;\nvar G__45289__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__45289__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45289 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45289__1.call(this,x);\ncase 2:\nreturn G__45289__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45289.cljs$core$IFn$_invoke$arity$1 \x3d G__45289__1;\nG__45289.cljs$core$IFn$_invoke$arity$2 \x3d G__45289__2;\nreturn G__45289;\n})()\n);\n\n(cljs.core.PersistentQueueSeq.prototype.lastIndexOf \x3d (function() {\nvar G__45291 \x3d null;\nvar G__45291__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__45291__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45291 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45291__1.call(this,x);\ncase 2:\nreturn G__45291__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45291.cljs$core$IFn$_invoke$arity$1 \x3d G__45291__1;\nG__45291.cljs$core$IFn$_invoke$arity$2 \x3d G__45291__2;\nreturn G__45291;\n})()\n);\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar temp__5751__auto__ \x3d cljs.core.next(self__.front);\nif(temp__5751__auto__){\nvar f1 \x3d temp__5751__auto__;\nreturn (new cljs.core.PersistentQueueSeq(self__.meta,f1,self__.rear,null));\n} else {\nif((!((self__.rear \x3d\x3d null)))){\nreturn (new cljs.core.PersistentQueueSeq(self__.meta,self__.rear,null,null));\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.List.EMPTY,self__.meta);\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.first(self__.front);\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar temp__5751__auto__ \x3d cljs.core.next(self__.front);\nif(temp__5751__auto__){\nvar f1 \x3d temp__5751__auto__;\nreturn (new cljs.core.PersistentQueueSeq(self__.meta,f1,self__.rear,null));\n} else {\nif((self__.rear \x3d\x3d null)){\nreturn coll__$1.cljs$core$IEmptyableCollection$_empty$arity$1(null);\n} else {\nreturn (new cljs.core.PersistentQueueSeq(self__.meta,self__.rear,null,null));\n}\n}\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentQueueSeq(new_meta,self__.front,self__.rear,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.PersistentQueueSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22front\x22,\x22front\x22,117022539,null),new cljs.core.Symbol(null,\x22rear\x22,\x22rear\x22,-900164830,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentQueueSeq.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentQueueSeq.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentQueueSeq\x22);\n\n(cljs.core.PersistentQueueSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentQueueSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentQueueSeq.\n */\ncljs.core.__GT_PersistentQueueSeq \x3d (function cljs$core$__GT_PersistentQueueSeq(meta,front,rear,__hash){\nreturn (new cljs.core.PersistentQueueSeq(meta,front,rear,__hash));\n});\n\ngoog.object.set(cljs.core.PersistentQueueSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.PersistentQueue \x3d (function (meta,count,front,rear,__hash){\nthis.meta \x3d meta;\nthis.count \x3d count;\nthis.front \x3d front;\nthis.rear \x3d rear;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 31858766;\n});\n(cljs.core.PersistentQueue.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentQueue.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentQueue.prototype.indexOf \x3d (function() {\nvar G__45298 \x3d null;\nvar G__45298__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__45298__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45298 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45298__1.call(this,x);\ncase 2:\nreturn G__45298__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45298.cljs$core$IFn$_invoke$arity$1 \x3d G__45298__1;\nG__45298.cljs$core$IFn$_invoke$arity$2 \x3d G__45298__2;\nreturn G__45298;\n})()\n);\n\n(cljs.core.PersistentQueue.prototype.lastIndexOf \x3d (function() {\nvar G__45300 \x3d null;\nvar G__45300__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(self__.count.cljs$core$IFn$_invoke$arity$1 ? self__.count.cljs$core$IFn$_invoke$arity$1(coll) : self__.count.call(null,coll)));\n});\nvar G__45300__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45300 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45300__1.call(this,x);\ncase 2:\nreturn G__45300__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45300.cljs$core$IFn$_invoke$arity$1 \x3d G__45300__1;\nG__45300.cljs$core$IFn$_invoke$arity$2 \x3d G__45300__2;\nreturn G__45300;\n})()\n);\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentQueueIter(self__.front,cljs.core._iterator(self__.rear)));\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentQueue(self__.meta,self__.count,self__.front,self__.rear,self__.__hash));\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.count;\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.first(self__.front);\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.truth_(self__.front)){\nvar temp__5751__auto__ \x3d cljs.core.next(self__.front);\nif(temp__5751__auto__){\nvar f1 \x3d temp__5751__auto__;\nreturn (new cljs.core.PersistentQueue(self__.meta,(self__.count - (1)),f1,self__.rear,null));\n} else {\nreturn (new cljs.core.PersistentQueue(self__.meta,(self__.count - (1)),cljs.core.seq(self__.rear),cljs.core.PersistentVector.EMPTY,null));\n}\n} else {\nreturn coll__$1;\n}\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.PersistentQueue.EMPTY,self__.meta);\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.first(self__.front);\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.rest(cljs.core.seq(coll__$1));\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar rear__$1 \x3d cljs.core.seq(self__.rear);\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d self__.front;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn rear__$1;\n}\n})())){\nreturn (new cljs.core.PersistentQueueSeq(null,self__.front,cljs.core.seq(rear__$1),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentQueue(new_meta,self__.count,self__.front,self__.rear,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.truth_(self__.front)){\nreturn (new cljs.core.PersistentQueue(self__.meta,(self__.count + (1)),self__.front,cljs.core.conj.cljs$core$IFn$_invoke$arity$2((function (){var or__4160__auto__ \x3d self__.rear;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.PersistentVector.EMPTY;\n}\n})(),o),null));\n} else {\nreturn (new cljs.core.PersistentQueue(self__.meta,(self__.count + (1)),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(self__.front,o),cljs.core.PersistentVector.EMPTY,null));\n}\n}));\n\n(cljs.core.PersistentQueue.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),new cljs.core.Symbol(null,\x22front\x22,\x22front\x22,117022539,null),new cljs.core.Symbol(null,\x22rear\x22,\x22rear\x22,-900164830,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentQueue.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentQueue.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentQueue\x22);\n\n(cljs.core.PersistentQueue.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentQueue\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentQueue.\n */\ncljs.core.__GT_PersistentQueue \x3d (function cljs$core$__GT_PersistentQueue(meta,count,front,rear,__hash){\nreturn (new cljs.core.PersistentQueue(meta,count,front,rear,__hash));\n});\n\n(cljs.core.PersistentQueue.EMPTY \x3d (new cljs.core.PersistentQueue(null,(0),null,cljs.core.PersistentVector.EMPTY,cljs.core.empty_ordered_hash)));\ngoog.object.set(cljs.core.PersistentQueue.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n*/\ncljs.core.NeverEquiv \x3d (function (){\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2097152;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.NeverEquiv.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.NeverEquiv.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (o,other){\nvar self__ \x3d this;\nvar o__$1 \x3d this;\nreturn false;\n}));\n\n(cljs.core.NeverEquiv.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cljs.core.NeverEquiv.cljs$lang$type \x3d true);\n\n(cljs.core.NeverEquiv.cljs$lang$ctorStr \x3d \x22cljs.core/NeverEquiv\x22);\n\n(cljs.core.NeverEquiv.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/NeverEquiv\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/NeverEquiv.\n */\ncljs.core.__GT_NeverEquiv \x3d (function cljs$core$__GT_NeverEquiv(){\nreturn (new cljs.core.NeverEquiv());\n});\n\ncljs.core.never_equiv \x3d (new cljs.core.NeverEquiv());\n/**\n * Test map equivalence. Returns true if x equals y, otherwise returns false.\n */\ncljs.core.equiv_map \x3d (function cljs$core$equiv_map(x,y){\nreturn cljs.core.boolean$(((((cljs.core.map_QMARK_(y)) \x26\x26 ((!(cljs.core.record_QMARK_(y))))))?(((cljs.core.count(x) \x3d\x3d\x3d cljs.core.count(y)))?(((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (1048576))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IKVReduce$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IKVReduce,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IKVReduce,x)))?cljs.core.reduce_kv((function (_,k,v){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$3(y,k,cljs.core.never_equiv),v)){\nreturn true;\n} else {\nreturn cljs.core.reduced(false);\n}\n}),true,x):cljs.core.every_QMARK_((function (xkv){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$3(y,cljs.core.first(xkv),cljs.core.never_equiv),cljs.core.second(xkv));\n}),x)):null):null));\n});\ncljs.core.scan_array \x3d (function cljs$core$scan_array(incr,k,array){\nvar len \x3d array.length;\nvar i \x3d (0);\nwhile(true){\nif((i \x3c len)){\nif((k \x3d\x3d\x3d (array[i]))){\nreturn i;\n} else {\nvar G__45352 \x3d (i + incr);\ni \x3d G__45352;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\ncljs.core.obj_map_compare_keys \x3d (function cljs$core$obj_map_compare_keys(a,b){\nvar a__$1 \x3d cljs.core.hash(a);\nvar b__$1 \x3d cljs.core.hash(b);\nif((a__$1 \x3c b__$1)){\nreturn (-1);\n} else {\nif((a__$1 \x3e b__$1)){\nreturn (1);\n} else {\nreturn (0);\n\n}\n}\n});\ncljs.core.obj_map__GT_hash_map \x3d (function cljs$core$obj_map__GT_hash_map(m,k,v){\nvar ks \x3d m.keys;\nvar len \x3d ks.length;\nvar so \x3d m.strobj;\nvar mm \x3d cljs.core.meta(m);\nvar i \x3d (0);\nvar out \x3d cljs.core.transient$(cljs.core.PersistentHashMap.EMPTY);\nwhile(true){\nif((i \x3c len)){\nvar k__$1 \x3d (ks[i]);\nvar G__45359 \x3d (i + (1));\nvar G__45360 \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(out,k__$1,goog.object.get(so,k__$1));\ni \x3d G__45359;\nout \x3d G__45360;\ncontinue;\n} else {\nreturn cljs.core._with_meta(cljs.core.persistent_BANG_(cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(out,k,v)),mm);\n}\nbreak;\n}\n});\ncljs.core.obj_clone \x3d (function cljs$core$obj_clone(obj,ks){\nvar new_obj \x3d ({});\nvar l \x3d ks.length;\nvar i_45364 \x3d (0);\nwhile(true){\nif((i_45364 \x3c l)){\nvar k_45365 \x3d (ks[i_45364]);\ngoog.object.set(new_obj,k_45365,goog.object.get(obj,k_45365));\n\nvar G__45367 \x3d (i_45364 + (1));\ni_45364 \x3d G__45367;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn new_obj;\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEditableCollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.ObjMap \x3d (function (meta,keys,strobj,update_count,__hash){\nthis.meta \x3d meta;\nthis.keys \x3d keys;\nthis.strobj \x3d strobj;\nthis.update_count \x3d update_count;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 16123663;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 4;\n});\n(cljs.core.ObjMap.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ObjMap.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((typeof k \x3d\x3d\x3d \x27string\x27) \x26\x26 ((!((cljs.core.scan_array((1),k,self__.keys) \x3d\x3d null)))))){\nreturn (new cljs.core.MapEntry(k,(self__.strobj[k]),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.ObjMap.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.ObjMap.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((typeof k \x3d\x3d\x3d \x27string\x27) \x26\x26 ((!((cljs.core.scan_array((1),k,self__.keys) \x3d\x3d null)))))){\nreturn (self__.strobj[k]);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (coll,f,init){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar len \x3d self__.keys.length;\nvar keys__$1 \x3d self__.keys.sort(cljs.core.obj_map_compare_keys);\nvar init__$1 \x3d init;\nwhile(true){\nif(cljs.core.seq(keys__$1)){\nvar k \x3d cljs.core.first(keys__$1);\nvar init__$2 \x3d (function (){var G__39146 \x3d init__$1;\nvar G__39147 \x3d k;\nvar G__39148 \x3d (self__.strobj[k]);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39146,G__39147,G__39148) : f.call(null,G__39146,G__39147,G__39148));\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn cljs.core.deref(init__$2);\n} else {\nvar G__45372 \x3d cljs.core.rest(keys__$1);\nvar G__45373 \x3d init__$2;\nkeys__$1 \x3d G__45372;\ninit__$1 \x3d G__45373;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.keys.length;\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_unordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_map(coll__$1,other);\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.transient$(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentHashMap.EMPTY,coll__$1));\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.ObjMap.EMPTY,self__.meta);\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((typeof k \x3d\x3d\x3d \x27string\x27) \x26\x26 ((!((cljs.core.scan_array((1),k,self__.keys) \x3d\x3d null)))))){\nvar new_keys \x3d cljs.core.aclone(self__.keys);\nvar new_strobj \x3d cljs.core.obj_clone(self__.strobj,self__.keys);\nnew_keys.splice(cljs.core.scan_array((1),k,new_keys),(1));\n\ndelete new_strobj[k];\n\nreturn (new cljs.core.ObjMap(self__.meta,new_keys,new_strobj,(self__.update_count + (1)),null));\n} else {\nreturn coll__$1;\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (coll,k,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(typeof k \x3d\x3d\x3d \x27string\x27){\nif((((self__.update_count \x3e cljs.core.ObjMap.HASHMAP_THRESHOLD)) || ((self__.keys.length \x3e\x3d cljs.core.ObjMap.HASHMAP_THRESHOLD)))){\nreturn cljs.core.obj_map__GT_hash_map(coll__$1,k,v);\n} else {\nif((!((cljs.core.scan_array((1),k,self__.keys) \x3d\x3d null)))){\nvar new_strobj \x3d cljs.core.obj_clone(self__.strobj,self__.keys);\ngoog.object.set(new_strobj,k,v);\n\nreturn (new cljs.core.ObjMap(self__.meta,self__.keys,new_strobj,(self__.update_count + (1)),null));\n} else {\nvar new_strobj \x3d cljs.core.obj_clone(self__.strobj,self__.keys);\nvar new_keys \x3d cljs.core.aclone(self__.keys);\ngoog.object.set(new_strobj,k,v);\n\nnew_keys.push(k);\n\nreturn (new cljs.core.ObjMap(self__.meta,new_keys,new_strobj,(self__.update_count + (1)),null));\n}\n}\n} else {\nreturn cljs.core.obj_map__GT_hash_map(coll__$1,k,v);\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((typeof k \x3d\x3d\x3d \x27string\x27) \x26\x26 ((!((cljs.core.scan_array((1),k,self__.keys) \x3d\x3d null)))))){\nreturn true;\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.keys.length \x3e (0))){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__39144_SHARP_){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[p1__39144_SHARP_,(self__.strobj[p1__39144_SHARP_])],null));\n}),self__.keys.sort(cljs.core.obj_map_compare_keys));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.ObjMap(new_meta,self__.keys,self__.strobj,self__.update_count,self__.__hash));\n}\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,entry){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry)){\nreturn coll__$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry,(0)),cljs.core._nth(entry,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,coll__$1,entry);\n}\n}));\n\n(cljs.core.ObjMap.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39149 \x3d (arguments.length - (1));\nswitch (G__39149) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.ObjMap.prototype.apply \x3d (function (self__,args39145){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39145)));\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.ObjMap.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null),new cljs.core.Symbol(null,\x22strobj\x22,\x22strobj\x22,1088091283,null),new cljs.core.Symbol(null,\x22update-count\x22,\x22update-count\x22,-411982269,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ObjMap.cljs$lang$type \x3d true);\n\n(cljs.core.ObjMap.cljs$lang$ctorStr \x3d \x22cljs.core/ObjMap\x22);\n\n(cljs.core.ObjMap.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ObjMap\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ObjMap.\n */\ncljs.core.__GT_ObjMap \x3d (function cljs$core$__GT_ObjMap(meta,keys,strobj,update_count,__hash){\nreturn (new cljs.core.ObjMap(meta,keys,strobj,update_count,__hash));\n});\n\n(cljs.core.ObjMap.EMPTY \x3d (new cljs.core.ObjMap(null,[],({}),(0),cljs.core.empty_unordered_hash)));\n(cljs.core.ObjMap.HASHMAP_THRESHOLD \x3d (8));\n(cljs.core.ObjMap.fromObject \x3d (function (ks,obj){\nreturn (new cljs.core.ObjMap(null,ks,obj,(0),null));\n}));\n\n/**\n* @constructor\n*/\ncljs.core.RecordIter \x3d (function (i,record,base_count,fields,ext_map_iter){\nthis.i \x3d i;\nthis.record \x3d record;\nthis.base_count \x3d base_count;\nthis.fields \x3d fields;\nthis.ext_map_iter \x3d ext_map_iter;\n});\n(cljs.core.RecordIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar or__4160__auto__ \x3d (self__.i \x3c self__.base_count);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn self__.ext_map_iter.hasNext();\n}\n}));\n\n(cljs.core.RecordIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((self__.i \x3c self__.base_count)){\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(self__.fields,self__.i);\n(self__.i \x3d (self__.i + (1)));\n\nreturn (new cljs.core.MapEntry(k,cljs.core._lookup(self__.record,k),null));\n} else {\nreturn self__.ext_map_iter.next();\n}\n}));\n\n(cljs.core.RecordIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.RecordIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22record\x22,\x22record\x22,861424668,null),new cljs.core.Symbol(null,\x22base-count\x22,\x22base-count\x22,-1180647182,null),new cljs.core.Symbol(null,\x22fields\x22,\x22fields\x22,-291534703,null),new cljs.core.Symbol(null,\x22ext-map-iter\x22,\x22ext-map-iter\x22,-1215982757,null)], null);\n}));\n\n(cljs.core.RecordIter.cljs$lang$type \x3d true);\n\n(cljs.core.RecordIter.cljs$lang$ctorStr \x3d \x22cljs.core/RecordIter\x22);\n\n(cljs.core.RecordIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/RecordIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/RecordIter.\n */\ncljs.core.__GT_RecordIter \x3d (function cljs$core$__GT_RecordIter(i,record,base_count,fields,ext_map_iter){\nreturn (new cljs.core.RecordIter(i,record,base_count,fields,ext_map_iter));\n});\n\n\n/**\n* @constructor\n*/\ncljs.core.ES6EntriesIterator \x3d (function (s){\nthis.s \x3d s;\n});\n(cljs.core.ES6EntriesIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((!((self__.s \x3d\x3d null)))){\nvar vec__39152 \x3d cljs.core.first(self__.s);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39152,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39152,(1),null);\n(self__.s \x3d cljs.core.next(self__.s));\n\nreturn ({\x22value\x22: [k,v], \x22done\x22: false});\n} else {\nreturn ({\x22value\x22: null, \x22done\x22: true});\n}\n}));\n\n(cljs.core.ES6EntriesIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ES6EntriesIterator.cljs$lang$type \x3d true);\n\n(cljs.core.ES6EntriesIterator.cljs$lang$ctorStr \x3d \x22cljs.core/ES6EntriesIterator\x22);\n\n(cljs.core.ES6EntriesIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ES6EntriesIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ES6EntriesIterator.\n */\ncljs.core.__GT_ES6EntriesIterator \x3d (function cljs$core$__GT_ES6EntriesIterator(s){\nreturn (new cljs.core.ES6EntriesIterator(s));\n});\n\ncljs.core.es6_entries_iterator \x3d (function cljs$core$es6_entries_iterator(coll){\nreturn (new cljs.core.ES6EntriesIterator(cljs.core.seq(coll)));\n});\n\n/**\n* @constructor\n*/\ncljs.core.ES6SetEntriesIterator \x3d (function (s){\nthis.s \x3d s;\n});\n(cljs.core.ES6SetEntriesIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((!((self__.s \x3d\x3d null)))){\nvar x \x3d cljs.core.first(self__.s);\n(self__.s \x3d cljs.core.next(self__.s));\n\nreturn ({\x22value\x22: [x,x], \x22done\x22: false});\n} else {\nreturn ({\x22value\x22: null, \x22done\x22: true});\n}\n}));\n\n(cljs.core.ES6SetEntriesIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ES6SetEntriesIterator.cljs$lang$type \x3d true);\n\n(cljs.core.ES6SetEntriesIterator.cljs$lang$ctorStr \x3d \x22cljs.core/ES6SetEntriesIterator\x22);\n\n(cljs.core.ES6SetEntriesIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ES6SetEntriesIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ES6SetEntriesIterator.\n */\ncljs.core.__GT_ES6SetEntriesIterator \x3d (function cljs$core$__GT_ES6SetEntriesIterator(s){\nreturn (new cljs.core.ES6SetEntriesIterator(s));\n});\n\ncljs.core.es6_set_entries_iterator \x3d (function cljs$core$es6_set_entries_iterator(coll){\nreturn (new cljs.core.ES6SetEntriesIterator(cljs.core.seq(coll)));\n});\ncljs.core.array_index_of_nil_QMARK_ \x3d (function cljs$core$array_index_of_nil_QMARK_(arr){\nvar len \x3d arr.length;\nvar i \x3d (0);\nwhile(true){\nif((len \x3c\x3d i)){\nreturn (-1);\n} else {\nif(((arr[i]) \x3d\x3d null)){\nreturn i;\n} else {\nvar G__45471 \x3d (i + (2));\ni \x3d G__45471;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.core.array_index_of_keyword_QMARK_ \x3d (function cljs$core$array_index_of_keyword_QMARK_(arr,k){\nvar len \x3d arr.length;\nvar kstr \x3d k.fqn;\nvar i \x3d (0);\nwhile(true){\nif((len \x3c\x3d i)){\nreturn (-1);\n} else {\nif(((((arr[i]) instanceof cljs.core.Keyword)) \x26\x26 ((kstr \x3d\x3d\x3d (arr[i]).fqn)))){\nreturn i;\n} else {\nvar G__45476 \x3d (i + (2));\ni \x3d G__45476;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.core.array_index_of_symbol_QMARK_ \x3d (function cljs$core$array_index_of_symbol_QMARK_(arr,k){\nvar len \x3d arr.length;\nvar kstr \x3d k.str;\nvar i \x3d (0);\nwhile(true){\nif((len \x3c\x3d i)){\nreturn (-1);\n} else {\nif(((((arr[i]) instanceof cljs.core.Symbol)) \x26\x26 ((kstr \x3d\x3d\x3d (arr[i]).str)))){\nreturn i;\n} else {\nvar G__45493 \x3d (i + (2));\ni \x3d G__45493;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.core.array_index_of_identical_QMARK_ \x3d (function cljs$core$array_index_of_identical_QMARK_(arr,k){\nvar len \x3d arr.length;\nvar i \x3d (0);\nwhile(true){\nif((len \x3c\x3d i)){\nreturn (-1);\n} else {\nif((k \x3d\x3d\x3d (arr[i]))){\nreturn i;\n} else {\nvar G__45499 \x3d (i + (2));\ni \x3d G__45499;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.core.array_index_of_equiv_QMARK_ \x3d (function cljs$core$array_index_of_equiv_QMARK_(arr,k){\nvar len \x3d arr.length;\nvar i \x3d (0);\nwhile(true){\nif((len \x3c\x3d i)){\nreturn (-1);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,(arr[i]))){\nreturn i;\n} else {\nvar G__45504 \x3d (i + (2));\ni \x3d G__45504;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.core.array_index_of \x3d (function cljs$core$array_index_of(arr,k){\nif((k instanceof cljs.core.Keyword)){\nreturn cljs.core.array_index_of_keyword_QMARK_(arr,k);\n} else {\nif(((typeof k \x3d\x3d\x3d \x27string\x27) || (typeof k \x3d\x3d\x3d \x27number\x27))){\nreturn cljs.core.array_index_of_identical_QMARK_(arr,k);\n} else {\nif((k instanceof cljs.core.Symbol)){\nreturn cljs.core.array_index_of_symbol_QMARK_(arr,k);\n} else {\nif((k \x3d\x3d null)){\nreturn cljs.core.array_index_of_nil_QMARK_(arr);\n} else {\nreturn cljs.core.array_index_of_equiv_QMARK_(arr,k);\n\n}\n}\n}\n}\n});\ncljs.core.array_map_index_of \x3d (function cljs$core$array_map_index_of(m,k){\nreturn cljs.core.array_index_of(m.arr,k);\n});\ncljs.core.array_extend_kv \x3d (function cljs$core$array_extend_kv(arr,k,v){\nvar l \x3d arr.length;\nvar narr \x3d (new Array((l + (2))));\nvar i_45512 \x3d (0);\nwhile(true){\nif((i_45512 \x3c l)){\n(narr[i_45512] \x3d (arr[i_45512]));\n\nvar G__45513 \x3d (i_45512 + (1));\ni_45512 \x3d G__45513;\ncontinue;\n} else {\n}\nbreak;\n}\n\n(narr[l] \x3d k);\n\n(narr[(l + (1))] \x3d v);\n\nreturn narr;\n});\ncljs.core.array_map_extend_kv \x3d (function cljs$core$array_map_extend_kv(m,k,v){\nreturn cljs.core.array_extend_kv(m.arr,k,v);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IVector}\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.IMapEntry}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.ILookup}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.MapEntry \x3d (function (key,val,__hash){\nthis.key \x3d key;\nthis.val \x3d val;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 166619935;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.MapEntry.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.MapEntry.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nvar G__39156 \x3d k;\nswitch (G__39156) {\ncase (0):\nreturn (new cljs.core.MapEntry((0),self__.key,null));\n\nbreak;\ncase (1):\nreturn (new cljs.core.MapEntry((1),self__.val,null));\n\nbreak;\ndefault:\nreturn null;\n\n}\n}));\n\n(cljs.core.MapEntry.prototype.indexOf \x3d (function() {\nvar G__45521 \x3d null;\nvar G__45521__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__45521__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45521 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45521__1.call(this,x);\ncase 2:\nreturn G__45521__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45521.cljs$core$IFn$_invoke$arity$1 \x3d G__45521__1;\nG__45521.cljs$core$IFn$_invoke$arity$2 \x3d G__45521__2;\nreturn G__45521;\n})()\n);\n\n(cljs.core.MapEntry.prototype.lastIndexOf \x3d (function() {\nvar G__45528 \x3d null;\nvar G__45528__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__45528__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45528 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45528__1.call(this,x);\ncase 2:\nreturn G__45528__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45528.cljs$core$IFn$_invoke$arity$1 \x3d G__45528__1;\nG__45528.cljs$core$IFn$_invoke$arity$2 \x3d G__45528__2;\nreturn G__45528;\n})()\n);\n\n(cljs.core.MapEntry.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn node__$1.cljs$core$IIndexed$_nth$arity$3(null,k,null);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (node,k,not_found){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn node__$1.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (node,n){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nif((n \x3d\x3d\x3d (0))){\nreturn self__.key;\n} else {\nif((n \x3d\x3d\x3d (1))){\nreturn self__.val;\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n\n}\n}\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (node,n,not_found){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nif((n \x3d\x3d\x3d (0))){\nreturn self__.key;\n} else {\nif((n \x3d\x3d\x3d (1))){\nreturn self__.val;\n} else {\nreturn not_found;\n\n}\n}\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IVector$_assoc_n$arity$3 \x3d (function (node,n,v){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn 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);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (2);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IMapEntry$_key$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.key;\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IMapEntry$_val$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key], null);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (new cljs.core.IndexedSeq([self__.val,self__.key],(0),null));\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (node,f){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2(node__$1,f);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (node,f,start){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$3(node__$1,f,start);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (node,k,v){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val], null),k,v);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (((k \x3d\x3d\x3d (0))) || ((k \x3d\x3d\x3d (1))));\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (new cljs.core.IndexedSeq([self__.key,self__.val],(0),null));\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (node,meta){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.with_meta(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val], null),meta);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (node,o){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val,o], null);\n}));\n\n(cljs.core.MapEntry.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39157 \x3d (arguments.length - (1));\nswitch (G__39157) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.MapEntry.prototype.apply \x3d (function (self__,args39155){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39155)));\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node.cljs$core$IIndexed$_nth$arity$2(null,k);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.MapEntry.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.MapEntry.cljs$lang$type \x3d true);\n\n(cljs.core.MapEntry.cljs$lang$ctorStr \x3d \x22cljs.core/MapEntry\x22);\n\n(cljs.core.MapEntry.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/MapEntry\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/MapEntry.\n */\ncljs.core.__GT_MapEntry \x3d (function cljs$core$__GT_MapEntry(key,val,__hash){\nreturn (new cljs.core.MapEntry(key,val,__hash));\n});\n\n/**\n * Returns true if x satisfies IMapEntry\n */\ncljs.core.map_entry_QMARK_ \x3d (function cljs$core$map_entry_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif((((x.cljs$lang$protocol_mask$partition0$ \x26 (2048))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IMapEntry$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.PersistentArrayMapSeq \x3d (function (arr,i,_meta){\nthis.arr \x3d arr;\nthis.i \x3d i;\nthis._meta \x3d _meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374990;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.PersistentArrayMapSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.indexOf \x3d (function() {\nvar G__45560 \x3d null;\nvar G__45560__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__45560__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45560 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45560__1.call(this,x);\ncase 2:\nreturn G__45560__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45560.cljs$core$IFn$_invoke$arity$1 \x3d G__45560__1;\nG__45560.cljs$core$IFn$_invoke$arity$2 \x3d G__45560__2;\nreturn G__45560;\n})()\n);\n\n(cljs.core.PersistentArrayMapSeq.prototype.lastIndexOf \x3d (function() {\nvar G__45562 \x3d null;\nvar G__45562__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__45562__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__45562 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__45562__1.call(this,x);\ncase 2:\nreturn G__45562__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__45562.cljs$core$IFn$_invoke$arity$1 \x3d G__45562__1;\nG__45562.cljs$core$IFn$_invoke$arity$2 \x3d G__45562__2;\nreturn G__45562;\n})()\n);\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__._meta;\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.i \x3c (self__.arr.length - (2)))){\nreturn (new cljs.core.PersistentArrayMapSeq(self__.arr,(self__.i + (2)),null));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn ((self__.arr.length - self__.i) / (2));\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.hash_ordered_coll(coll__$1);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.MapEntry((self__.arr[self__.i]),(self__.arr[(self__.i + (1))]),null));\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.i \x3c (self__.arr.length - (2)))){\nreturn (new cljs.core.PersistentArrayMapSeq(self__.arr,(self__.i + (2)),null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__._meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentArrayMapSeq(self__.arr,self__.i,new_meta));\n}\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.PersistentArrayMapSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.Symbol(null,\x22_meta\x22,\x22_meta\x22,-1716892533,null)], null);\n}));\n\n(cljs.core.PersistentArrayMapSeq.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentArrayMapSeq.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentArrayMapSeq\x22);\n\n(cljs.core.PersistentArrayMapSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentArrayMapSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentArrayMapSeq.\n */\ncljs.core.__GT_PersistentArrayMapSeq \x3d (function cljs$core$__GT_PersistentArrayMapSeq(arr,i,_meta){\nreturn (new cljs.core.PersistentArrayMapSeq(arr,i,_meta));\n});\n\ngoog.object.set(cljs.core.PersistentArrayMapSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.persistent_array_map_seq \x3d (function cljs$core$persistent_array_map_seq(arr,i,_meta){\nif((i \x3c\x3d (arr.length - (2)))){\nreturn (new cljs.core.PersistentArrayMapSeq(arr,i,_meta));\n} else {\nreturn null;\n}\n});\n\n\n/**\n* @constructor\n*/\ncljs.core.PersistentArrayMapIterator \x3d (function (arr,i,cnt){\nthis.arr \x3d arr;\nthis.i \x3d i;\nthis.cnt \x3d cnt;\n});\n(cljs.core.PersistentArrayMapIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.i \x3c self__.cnt);\n}));\n\n(cljs.core.PersistentArrayMapIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d (new cljs.core.MapEntry((self__.arr[self__.i]),(self__.arr[(self__.i + (1))]),null));\n(self__.i \x3d (self__.i + (2)));\n\nreturn ret;\n}));\n\n(cljs.core.PersistentArrayMapIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null)], null);\n}));\n\n(cljs.core.PersistentArrayMapIterator.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentArrayMapIterator.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentArrayMapIterator\x22);\n\n(cljs.core.PersistentArrayMapIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentArrayMapIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentArrayMapIterator.\n */\ncljs.core.__GT_PersistentArrayMapIterator \x3d (function cljs$core$__GT_PersistentArrayMapIterator(arr,i,cnt){\nreturn (new cljs.core.PersistentArrayMapIterator(arr,i,cnt));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEditableCollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.PersistentArrayMap \x3d (function (meta,cnt,arr,__hash){\nthis.meta \x3d meta;\nthis.cnt \x3d cnt;\nthis.arr \x3d arr;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 16647951;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139268;\n});\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar idx \x3d cljs.core.array_map_index_of(coll__$1,k);\nif((idx \x3d\x3d\x3d (-1))){\nreturn null;\n} else {\nreturn (new cljs.core.MapEntry((self__.arr[idx]),(self__.arr[(idx + (1))]),null));\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.keys \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator((cljs.core.keys.cljs$core$IFn$_invoke$arity$1 ? cljs.core.keys.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.keys.call(null,coll)));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.entries \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_entries_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.values \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator((cljs.core.vals.cljs$core$IFn$_invoke$arity$1 ? cljs.core.vals.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.vals.call(null,coll)));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.has \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.contains_QMARK_(coll,k);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.get \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.forEach \x3d (function (f){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar seq__39160 \x3d cljs.core.seq(coll);\nvar chunk__39161 \x3d null;\nvar count__39162 \x3d (0);\nvar i__39163 \x3d (0);\nwhile(true){\nif((i__39163 \x3c count__39162)){\nvar vec__39170 \x3d chunk__39161.cljs$core$IIndexed$_nth$arity$2(null,i__39163);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39170,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39170,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__45623 \x3d seq__39160;\nvar G__45624 \x3d chunk__39161;\nvar G__45625 \x3d count__39162;\nvar G__45626 \x3d (i__39163 + (1));\nseq__39160 \x3d G__45623;\nchunk__39161 \x3d G__45624;\ncount__39162 \x3d G__45625;\ni__39163 \x3d G__45626;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39160);\nif(temp__5753__auto__){\nvar seq__39160__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39160__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39160__$1);\nvar G__45632 \x3d cljs.core.chunk_rest(seq__39160__$1);\nvar G__45633 \x3d c__4591__auto__;\nvar G__45634 \x3d cljs.core.count(c__4591__auto__);\nvar G__45635 \x3d (0);\nseq__39160 \x3d G__45632;\nchunk__39161 \x3d G__45633;\ncount__39162 \x3d G__45634;\ni__39163 \x3d G__45635;\ncontinue;\n} else {\nvar vec__39173 \x3d cljs.core.first(seq__39160__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39173,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39173,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__45661 \x3d cljs.core.next(seq__39160__$1);\nvar G__45662 \x3d null;\nvar G__45663 \x3d (0);\nvar G__45664 \x3d (0);\nseq__39160 \x3d G__45661;\nchunk__39161 \x3d G__45662;\ncount__39162 \x3d G__45663;\ni__39163 \x3d G__45664;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar idx \x3d cljs.core.array_map_index_of(coll__$1,k);\nif((idx \x3d\x3d\x3d (-1))){\nreturn not_found;\n} else {\nreturn (self__.arr[(idx + (1))]);\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (coll,f,init){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar len \x3d self__.arr.length;\nvar i \x3d (0);\nvar init__$1 \x3d init;\nwhile(true){\nif((i \x3c len)){\nvar init__$2 \x3d (function (){var G__39176 \x3d init__$1;\nvar G__39177 \x3d (self__.arr[i]);\nvar G__39178 \x3d (self__.arr[(i + (1))]);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39176,G__39177,G__39178) : f.call(null,G__39176,G__39177,G__39178));\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn cljs.core.deref(init__$2);\n} else {\nvar G__45672 \x3d (i + (2));\nvar G__45673 \x3d init__$2;\ni \x3d G__45672;\ninit__$1 \x3d G__45673;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (new cljs.core.PersistentArrayMapIterator(self__.arr,(0),(self__.cnt * (2))));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.PersistentArrayMap(self__.meta,self__.cnt,self__.arr,self__.__hash));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.cnt;\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_unordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(((cljs.core.map_QMARK_(other)) \x26\x26 ((!(cljs.core.record_QMARK_(other)))))){\nvar alen \x3d self__.arr.length;\nvar other__$1 \x3d other;\nif((self__.cnt \x3d\x3d\x3d other__$1.cljs$core$ICounted$_count$arity$1(null))){\nvar i \x3d (0);\nwhile(true){\nif((i \x3c alen)){\nvar v \x3d other__$1.cljs$core$ILookup$_lookup$arity$3(null,(self__.arr[i]),cljs.core.lookup_sentinel);\nif((!((v \x3d\x3d\x3d cljs.core.lookup_sentinel)))){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((self__.arr[(i + (1))]),v)){\nvar G__45689 \x3d (i + (2));\ni \x3d G__45689;\ncontinue;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.TransientArrayMap(({}),self__.arr.length,cljs.core.aclone(self__.arr)));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.PersistentArrayMap.EMPTY,self__.meta);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$2(coll__$1,f);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.iter_reduce.cljs$core$IFn$_invoke$arity$3(coll__$1,f,start);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar idx \x3d cljs.core.array_map_index_of(coll__$1,k);\nif((idx \x3e\x3d (0))){\nvar len \x3d self__.arr.length;\nvar new_len \x3d (len - (2));\nif((new_len \x3d\x3d\x3d (0))){\nreturn coll__$1.cljs$core$IEmptyableCollection$_empty$arity$1(null);\n} else {\nvar new_arr \x3d (new Array(new_len));\nvar s \x3d (0);\nvar d \x3d (0);\nwhile(true){\nif((s \x3e\x3d len)){\nreturn (new cljs.core.PersistentArrayMap(self__.meta,(self__.cnt - (1)),new_arr,null));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,(self__.arr[s]))){\nvar G__45692 \x3d (s + (2));\nvar G__45693 \x3d d;\ns \x3d G__45692;\nd \x3d G__45693;\ncontinue;\n} else {\n(new_arr[d] \x3d (self__.arr[s]));\n\n(new_arr[(d + (1))] \x3d (self__.arr[(s + (1))]));\n\nvar G__45694 \x3d (s + (2));\nvar G__45695 \x3d (d + (2));\ns \x3d G__45694;\nd \x3d G__45695;\ncontinue;\n\n}\n}\nbreak;\n}\n}\n} else {\nreturn coll__$1;\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (coll,k,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar idx \x3d cljs.core.array_map_index_of(coll__$1,k);\nif((idx \x3d\x3d\x3d (-1))){\nif((self__.cnt \x3c cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD)){\nvar arr__$1 \x3d cljs.core.array_map_extend_kv(coll__$1,k,v);\nreturn (new cljs.core.PersistentArrayMap(self__.meta,(self__.cnt + (1)),arr__$1,null));\n} else {\nreturn cljs.core._with_meta(cljs.core._assoc(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentHashMap.EMPTY,coll__$1),k,v),self__.meta);\n}\n} else {\nif((v \x3d\x3d\x3d (self__.arr[(idx + (1))]))){\nreturn coll__$1;\n} else {\nvar arr__$1 \x3d (function (){var G__39181 \x3d cljs.core.aclone(self__.arr);\n(G__39181[(idx + (1))] \x3d v);\n\nreturn G__39181;\n})();\nreturn (new cljs.core.PersistentArrayMap(self__.meta,self__.cnt,arr__$1,null));\n\n}\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (!((cljs.core.array_map_index_of(coll__$1,k) \x3d\x3d\x3d (-1))));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.persistent_array_map_seq(self__.arr,(0),null);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentArrayMap(new_meta,self__.cnt,self__.arr,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,entry){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry)){\nreturn coll__$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry,(0)),cljs.core._nth(entry,(1)));\n} else {\nvar ret \x3d coll__$1;\nvar es \x3d cljs.core.seq(entry);\nwhile(true){\nif((es \x3d\x3d null)){\nreturn ret;\n} else {\nvar e \x3d cljs.core.first(es);\nif(cljs.core.vector_QMARK_(e)){\nvar G__45722 \x3d cljs.core._assoc(ret,cljs.core._nth(e,(0)),cljs.core._nth(e,(1)));\nvar G__45723 \x3d cljs.core.next(es);\nret \x3d G__45722;\nes \x3d G__45723;\ncontinue;\n} else {\nthrow (new Error(\x22conj on a map takes map entries or seqables of map entries\x22));\n}\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39182 \x3d (arguments.length - (1));\nswitch (G__39182) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.PersistentArrayMap.prototype.apply \x3d (function (self__,args39159){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39159)));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentArrayMap.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentArrayMap.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentArrayMap.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentArrayMap\x22);\n\n(cljs.core.PersistentArrayMap.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentArrayMap\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentArrayMap.\n */\ncljs.core.__GT_PersistentArrayMap \x3d (function cljs$core$__GT_PersistentArrayMap(meta,cnt,arr,__hash){\nreturn (new cljs.core.PersistentArrayMap(meta,cnt,arr,__hash));\n});\n\n(cljs.core.PersistentArrayMap.EMPTY \x3d (new cljs.core.PersistentArrayMap(null,(0),[],cljs.core.empty_unordered_hash)));\n(cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD \x3d (8));\n(cljs.core.PersistentArrayMap.fromArray \x3d (function (arr,no_clone,no_check){\nvar arr__$1 \x3d ((no_clone)?arr:cljs.core.aclone(arr));\nvar arr__$2 \x3d ((no_check)?arr__$1:(function (){var ret \x3d [];\nvar i_45745 \x3d (0);\nwhile(true){\nif((i_45745 \x3c arr__$1.length)){\nvar k_45746 \x3d (arr__$1[i_45745]);\nvar v_45747 \x3d (arr__$1[(i_45745 + (1))]);\nvar idx_45748 \x3d cljs.core.array_index_of(ret,k_45746);\nif((idx_45748 \x3d\x3d\x3d (-1))){\nret.push(k_45746);\n\nret.push(v_45747);\n} else {\n}\n\nvar G__45749 \x3d (i_45745 + (2));\ni_45745 \x3d G__45749;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn ret;\n})());\nvar cnt \x3d (arr__$2.length / (2));\nreturn (new cljs.core.PersistentArrayMap(null,cnt,arr__$2,null));\n}));\n(cljs.core.PersistentArrayMap.createWithCheck \x3d (function (arr){\nvar ret \x3d [];\nvar i_45752 \x3d (0);\nwhile(true){\nif((i_45752 \x3c arr.length)){\nvar k_45753 \x3d (arr[i_45752]);\nvar v_45754 \x3d (arr[(i_45752 + (1))]);\nvar idx_45755 \x3d cljs.core.array_index_of(ret,k_45753);\nif((idx_45755 \x3d\x3d\x3d (-1))){\nvar G__39183_45756 \x3d ret;\nG__39183_45756.push(k_45753);\n\nG__39183_45756.push(v_45754);\n\n} else {\nthrow (new Error([\x22Duplicate key: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(k_45753)].join(\x27\x27)));\n}\n\nvar G__45757 \x3d (i_45752 + (2));\ni_45752 \x3d G__45757;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar cnt \x3d (arr.length / (2));\nreturn (new cljs.core.PersistentArrayMap(null,cnt,arr,null));\n}));\n(cljs.core.PersistentArrayMap.createAsIfByAssoc \x3d (function (arr){\nvar ret \x3d [];\nvar i_45758 \x3d (0);\nwhile(true){\nif((i_45758 \x3c arr.length)){\nvar k_45759 \x3d (arr[i_45758]);\nvar v_45760 \x3d (arr[(i_45758 + (1))]);\nvar idx_45761 \x3d cljs.core.array_index_of(ret,k_45759);\nif((idx_45761 \x3d\x3d\x3d (-1))){\nvar G__39184_45762 \x3d ret;\nG__39184_45762.push(k_45759);\n\nG__39184_45762.push(v_45760);\n\n} else {\n(ret[(idx_45761 + (1))] \x3d v_45760);\n}\n\nvar G__45763 \x3d (i_45758 + (2));\ni_45758 \x3d G__45763;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn (new cljs.core.PersistentArrayMap(null,(ret.length / (2)),ret,null));\n}));\ngoog.object.set(cljs.core.PersistentArrayMap.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ITransientMap}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ITransientCollection}\n * @implements {cljs.core.ITransientAssociative}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.TransientArrayMap \x3d (function (editable_QMARK_,len,arr){\nthis.editable_QMARK_ \x3d editable_QMARK_;\nthis.len \x3d len;\nthis.arr \x3d arr;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 259;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 56;\n});\n(cljs.core.TransientArrayMap.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.editable_QMARK_){\nreturn cljs.core.quot(self__.len,(2));\n} else {\nthrow (new Error(\x22count after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (tcoll,k){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn tcoll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (tcoll,k,not_found){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.editable_QMARK_){\nvar idx \x3d cljs.core.array_map_index_of(tcoll__$1,k);\nif((idx \x3d\x3d\x3d (-1))){\nreturn not_found;\n} else {\nreturn (self__.arr[(idx + (1))]);\n}\n} else {\nthrow (new Error(\x22lookup after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 \x3d (function (tcoll,o){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.editable_QMARK_){\nif(cljs.core.map_entry_QMARK_(o)){\nreturn tcoll__$1.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3(null,(cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(o) : cljs.core.key.call(null,o)),(cljs.core.val.cljs$core$IFn$_invoke$arity$1 ? cljs.core.val.cljs$core$IFn$_invoke$arity$1(o) : cljs.core.val.call(null,o)));\n} else {\nif(cljs.core.vector_QMARK_(o)){\nreturn tcoll__$1.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3(null,(o.cljs$core$IFn$_invoke$arity$1 ? o.cljs$core$IFn$_invoke$arity$1((0)) : o.call(null,(0))),(o.cljs$core$IFn$_invoke$arity$1 ? o.cljs$core$IFn$_invoke$arity$1((1)) : o.call(null,(1))));\n} else {\nvar es \x3d cljs.core.seq(o);\nvar tcoll__$2 \x3d tcoll__$1;\nwhile(true){\nvar temp__5751__auto__ \x3d cljs.core.first(es);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar e \x3d temp__5751__auto__;\nvar G__45772 \x3d cljs.core.next(es);\nvar G__45773 \x3d cljs.core._assoc_BANG_(tcoll__$2,(cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(e) : cljs.core.key.call(null,e)),(cljs.core.val.cljs$core$IFn$_invoke$arity$1 ? cljs.core.val.cljs$core$IFn$_invoke$arity$1(e) : cljs.core.val.call(null,e)));\nes \x3d G__45772;\ntcoll__$2 \x3d G__45773;\ncontinue;\n} else {\nreturn tcoll__$2;\n}\nbreak;\n}\n\n}\n}\n} else {\nthrow (new Error(\x22conj! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.editable_QMARK_){\n(self__.editable_QMARK_ \x3d false);\n\nreturn (new cljs.core.PersistentArrayMap(null,cljs.core.quot(self__.len,(2)),self__.arr,null));\n} else {\nthrow (new Error(\x22persistent! called twice\x22));\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 \x3d (function (tcoll,key,val){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.editable_QMARK_){\nvar idx \x3d cljs.core.array_map_index_of(tcoll__$1,key);\nif((idx \x3d\x3d\x3d (-1))){\nif(((self__.len + (2)) \x3c\x3d ((2) * cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD))){\n(self__.len \x3d (self__.len + (2)));\n\nself__.arr.push(key);\n\nself__.arr.push(val);\n\nreturn tcoll__$1;\n} else {\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3((cljs.core.array__GT_transient_hash_map.cljs$core$IFn$_invoke$arity$2 ? cljs.core.array__GT_transient_hash_map.cljs$core$IFn$_invoke$arity$2(self__.len,self__.arr) : cljs.core.array__GT_transient_hash_map.call(null,self__.len,self__.arr)),key,val);\n}\n} else {\nif((val \x3d\x3d\x3d (self__.arr[(idx + (1))]))){\nreturn tcoll__$1;\n} else {\n(self__.arr[(idx + (1))] \x3d val);\n\nreturn tcoll__$1;\n}\n}\n} else {\nthrow (new Error(\x22assoc! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$ITransientMap$_dissoc_BANG_$arity$2 \x3d (function (tcoll,key){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif(self__.editable_QMARK_){\nvar idx \x3d cljs.core.array_map_index_of(tcoll__$1,key);\nif((idx \x3e\x3d (0))){\n(self__.arr[idx] \x3d (self__.arr[(self__.len - (2))]));\n\n(self__.arr[(idx + (1))] \x3d (self__.arr[(self__.len - (1))]));\n\nvar G__39186_45777 \x3d self__.arr;\nG__39186_45777.pop();\n\nG__39186_45777.pop();\n\n\n(self__.len \x3d (self__.len - (2)));\n} else {\n}\n\nreturn tcoll__$1;\n} else {\nthrow (new Error(\x22dissoc! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39187 \x3d (arguments.length - (1));\nswitch (G__39187) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.TransientArrayMap.prototype.apply \x3d (function (self__,args39185){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39185)));\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (key){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nreturn tcoll.cljs$core$ILookup$_lookup$arity$3(null,key,null);\n}));\n\n(cljs.core.TransientArrayMap.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (key,not_found){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nreturn tcoll.cljs$core$ILookup$_lookup$arity$3(null,key,not_found);\n}));\n\n(cljs.core.TransientArrayMap.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22editable?\x22,\x22editable?\x22,-164945806,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22len\x22,\x22len\x22,-1230778691,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null)], null);\n}));\n\n(cljs.core.TransientArrayMap.cljs$lang$type \x3d true);\n\n(cljs.core.TransientArrayMap.cljs$lang$ctorStr \x3d \x22cljs.core/TransientArrayMap\x22);\n\n(cljs.core.TransientArrayMap.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/TransientArrayMap\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/TransientArrayMap.\n */\ncljs.core.__GT_TransientArrayMap \x3d (function cljs$core$__GT_TransientArrayMap(editable_QMARK_,len,arr){\nreturn (new cljs.core.TransientArrayMap(editable_QMARK_,len,arr));\n});\n\ncljs.core.array__GT_transient_hash_map \x3d (function cljs$core$array__GT_transient_hash_map(len,arr){\nvar out \x3d cljs.core.transient$(cljs.core.PersistentHashMap.EMPTY);\nvar i \x3d (0);\nwhile(true){\nif((i \x3c len)){\nvar G__45785 \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(out,(arr[i]),(arr[(i + (1))]));\nvar G__45786 \x3d (i + (2));\nout \x3d G__45785;\ni \x3d G__45786;\ncontinue;\n} else {\nreturn out;\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.Box \x3d (function (val){\nthis.val \x3d val;\n});\n\n(cljs.core.Box.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Box.cljs$lang$type \x3d true);\n\n(cljs.core.Box.cljs$lang$ctorStr \x3d \x22cljs.core/Box\x22);\n\n(cljs.core.Box.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Box\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Box.\n */\ncljs.core.__GT_Box \x3d (function cljs$core$__GT_Box(val){\nreturn (new cljs.core.Box(val));\n});\n\n\n\n\n\n\ncljs.core.key_test \x3d (function cljs$core$key_test(key,other){\nif((key \x3d\x3d\x3d other)){\nreturn true;\n} else {\nif(cljs.core.keyword_identical_QMARK_(key,other)){\nreturn true;\n} else {\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(key,other);\n\n}\n}\n});\ncljs.core.mask \x3d (function cljs$core$mask(hash,shift){\nreturn ((hash \x3e\x3e\x3e shift) \x26 (31));\n});\ncljs.core.clone_and_set \x3d (function cljs$core$clone_and_set(var_args){\nvar G__39189 \x3d arguments.length;\nswitch (G__39189) {\ncase 3:\nreturn cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 5:\nreturn cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3 \x3d (function (arr,i,a){\nvar G__39190 \x3d cljs.core.aclone(arr);\n(G__39190[i] \x3d a);\n\nreturn G__39190;\n}));\n\n(cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$5 \x3d (function (arr,i,a,j,b){\nvar G__39191 \x3d cljs.core.aclone(arr);\n(G__39191[i] \x3d a);\n\n(G__39191[j] \x3d b);\n\nreturn G__39191;\n}));\n\n(cljs.core.clone_and_set.cljs$lang$maxFixedArity \x3d 5);\n\ncljs.core.remove_pair \x3d (function cljs$core$remove_pair(arr,i){\nvar new_arr \x3d (new Array((arr.length - (2))));\ncljs.core.array_copy(arr,(0),new_arr,(0),((2) * i));\n\ncljs.core.array_copy(arr,((2) * (i + (1))),new_arr,((2) * i),(new_arr.length - ((2) * i)));\n\nreturn new_arr;\n});\ncljs.core.bitmap_indexed_node_index \x3d (function cljs$core$bitmap_indexed_node_index(bitmap,bit){\nreturn cljs.core.bit_count((bitmap \x26 (bit - (1))));\n});\ncljs.core.bitpos \x3d (function cljs$core$bitpos(hash,shift){\nreturn ((1) \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\n});\ncljs.core.edit_and_set \x3d (function cljs$core$edit_and_set(var_args){\nvar G__39193 \x3d arguments.length;\nswitch (G__39193) {\ncase 4:\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 6:\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4 \x3d (function (inode,edit,i,a){\nvar editable \x3d inode.ensure_editable(edit);\n(editable.arr[i] \x3d a);\n\nreturn editable;\n}));\n\n(cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$6 \x3d (function (inode,edit,i,a,j,b){\nvar editable \x3d inode.ensure_editable(edit);\n(editable.arr[i] \x3d a);\n\n(editable.arr[j] \x3d b);\n\nreturn editable;\n}));\n\n(cljs.core.edit_and_set.cljs$lang$maxFixedArity \x3d 6);\n\ncljs.core.inode_kv_reduce \x3d (function cljs$core$inode_kv_reduce(arr,f,init){\nvar len \x3d arr.length;\nvar i \x3d (0);\nvar init__$1 \x3d init;\nwhile(true){\nif((i \x3c len)){\nvar init__$2 \x3d (function (){var k \x3d (arr[i]);\nif((!((k \x3d\x3d null)))){\nvar G__39194 \x3d init__$1;\nvar G__39195 \x3d k;\nvar G__39196 \x3d (arr[(i + (1))]);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39194,G__39195,G__39196) : f.call(null,G__39194,G__39195,G__39196));\n} else {\nvar node \x3d (arr[(i + (1))]);\nif((!((node \x3d\x3d null)))){\nreturn node.kv_reduce(f,init__$1);\n} else {\nreturn init__$1;\n}\n}\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn init__$2;\n} else {\nvar G__45845 \x3d (i + (2));\nvar G__45846 \x3d init__$2;\ni \x3d G__45845;\ninit__$1 \x3d G__45846;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.NodeIterator \x3d (function (arr,i,next_entry,next_iter){\nthis.arr \x3d arr;\nthis.i \x3d i;\nthis.next_entry \x3d next_entry;\nthis.next_iter \x3d next_iter;\n});\n(cljs.core.NodeIterator.prototype.advance \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar len \x3d self__.arr.length;\nwhile(true){\nif((self__.i \x3c len)){\nvar key \x3d (self__.arr[self__.i]);\nvar node_or_val \x3d (self__.arr[(self__.i + (1))]);\nvar found \x3d (((!((key \x3d\x3d null))))?(self__.next_entry \x3d (new cljs.core.MapEntry(key,node_or_val,null))):(((!((node_or_val \x3d\x3d null))))?(function (){var new_iter \x3d cljs.core._iterator(node_or_val);\nif(new_iter.hasNext()){\nreturn (self__.next_iter \x3d new_iter);\n} else {\nreturn false;\n}\n})():false\n));\n(self__.i \x3d (self__.i + (2)));\n\nif(found){\nreturn true;\n} else {\ncontinue;\n}\n} else {\nreturn false;\n}\nbreak;\n}\n}));\n\n(cljs.core.NodeIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar or__4160__auto__ \x3d (!((self__.next_entry \x3d\x3d null)));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (!((self__.next_iter \x3d\x3d null)));\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nreturn this$.advance();\n}\n}\n}));\n\n(cljs.core.NodeIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((!((self__.next_entry \x3d\x3d null)))){\nvar ret \x3d self__.next_entry;\n(self__.next_entry \x3d null);\n\nreturn ret;\n} else {\nif((!((self__.next_iter \x3d\x3d null)))){\nvar ret \x3d self__.next_iter.next();\nif(self__.next_iter.hasNext()){\n} else {\n(self__.next_iter \x3d null);\n}\n\nreturn ret;\n} else {\nif(this$.advance()){\nreturn this$.next();\n} else {\nthrow (new Error(\x22No such element\x22));\n\n}\n}\n}\n}));\n\n(cljs.core.NodeIterator.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.NodeIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22next-entry\x22,\x22next-entry\x22,1091342476,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22next-iter\x22,\x22next-iter\x22,1526626239,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.NodeIterator.cljs$lang$type \x3d true);\n\n(cljs.core.NodeIterator.cljs$lang$ctorStr \x3d \x22cljs.core/NodeIterator\x22);\n\n(cljs.core.NodeIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/NodeIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/NodeIterator.\n */\ncljs.core.__GT_NodeIterator \x3d (function cljs$core$__GT_NodeIterator(arr,i,next_entry,next_iter){\nreturn (new cljs.core.NodeIterator(arr,i,next_entry,next_iter));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IIterable}\n*/\ncljs.core.BitmapIndexedNode \x3d (function (edit,bitmap,arr){\nthis.edit \x3d edit;\nthis.bitmap \x3d bitmap;\nthis.arr \x3d arr;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 131072;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 0;\n});\n(cljs.core.BitmapIndexedNode.prototype.ensure_editable \x3d (function (e){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((e \x3d\x3d\x3d self__.edit)){\nreturn inode;\n} else {\nvar n \x3d cljs.core.bit_count(self__.bitmap);\nvar new_arr \x3d (new Array((((n \x3c (0)))?(4):((2) * (n + (1))))));\ncljs.core.array_copy(self__.arr,(0),new_arr,(0),((2) * n));\n\nreturn (new cljs.core.BitmapIndexedNode(e,self__.bitmap,new_arr));\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_without_BANG_ \x3d (function (edit__$1,shift,hash,key,removed_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar bit \x3d (1 \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\nif(((self__.bitmap \x26 bit) \x3d\x3d\x3d (0))){\nreturn inode;\n} else {\nvar idx \x3d cljs.core.bitmap_indexed_node_index(self__.bitmap,bit);\nvar key_or_nil \x3d (self__.arr[((2) * idx)]);\nvar val_or_node \x3d (self__.arr[(((2) * idx) + (1))]);\nif((key_or_nil \x3d\x3d null)){\nvar n \x3d val_or_node.inode_without_BANG_(edit__$1,(shift + (5)),hash,key,removed_leaf_QMARK_);\nif((n \x3d\x3d\x3d val_or_node)){\nreturn inode;\n} else {\nif((!((n \x3d\x3d null)))){\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,(((2) * idx) + (1)),n);\n} else {\nif((self__.bitmap \x3d\x3d\x3d bit)){\nreturn null;\n} else {\nreturn inode.edit_and_remove_pair(edit__$1,bit,idx);\n\n}\n}\n}\n} else {\nif(cljs.core.key_test(key,key_or_nil)){\n(removed_leaf_QMARK_.val \x3d true);\n\nreturn inode.edit_and_remove_pair(edit__$1,bit,idx);\n} else {\nreturn inode;\n\n}\n}\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.edit_and_remove_pair \x3d (function (e,bit,i){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((self__.bitmap \x3d\x3d\x3d bit)){\nreturn null;\n} else {\nvar editable \x3d inode.ensure_editable(e);\nvar earr \x3d editable.arr;\nvar len \x3d earr.length;\n(editable.bitmap \x3d (bit ^ editable.bitmap));\n\ncljs.core.array_copy(earr,((2) * (i + (1))),earr,((2) * i),(len - ((2) * (i + (1)))));\n\n(earr[(len - (2))] \x3d null);\n\n(earr[(len - (1))] \x3d null);\n\nreturn editable;\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_seq \x3d (function (){\nvar self__ \x3d this;\nvar inode \x3d this;\nreturn (cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$1 ? cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$1(self__.arr) : cljs.core.create_inode_seq.call(null,self__.arr));\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.kv_reduce \x3d (function (f,init){\nvar self__ \x3d this;\nvar inode \x3d this;\nreturn cljs.core.inode_kv_reduce(self__.arr,f,init);\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_lookup \x3d (function (shift,hash,key,not_found){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar bit \x3d (1 \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\nif(((self__.bitmap \x26 bit) \x3d\x3d\x3d (0))){\nreturn not_found;\n} else {\nvar idx \x3d cljs.core.bitmap_indexed_node_index(self__.bitmap,bit);\nvar key_or_nil \x3d (self__.arr[((2) * idx)]);\nvar val_or_node \x3d (self__.arr[(((2) * idx) + (1))]);\nif((key_or_nil \x3d\x3d null)){\nreturn val_or_node.inode_lookup((shift + (5)),hash,key,not_found);\n} else {\nif(cljs.core.key_test(key,key_or_nil)){\nreturn val_or_node;\n} else {\nreturn not_found;\n\n}\n}\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_assoc_BANG_ \x3d (function (edit__$1,shift,hash,key,val,added_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar bit \x3d (1 \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\nvar idx \x3d cljs.core.bitmap_indexed_node_index(self__.bitmap,bit);\nif(((self__.bitmap \x26 bit) \x3d\x3d\x3d (0))){\nvar n \x3d cljs.core.bit_count(self__.bitmap);\nif((((2) * n) \x3c self__.arr.length)){\nvar editable \x3d inode.ensure_editable(edit__$1);\nvar earr \x3d editable.arr;\n(added_leaf_QMARK_.val \x3d true);\n\ncljs.core.array_copy_downward(earr,((2) * idx),earr,((2) * (idx + (1))),((2) * (n - idx)));\n\n(earr[((2) * idx)] \x3d key);\n\n(earr[(((2) * idx) + (1))] \x3d val);\n\n(editable.bitmap \x3d (editable.bitmap | bit));\n\nreturn editable;\n} else {\nif((n \x3e\x3d (16))){\nvar nodes \x3d [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];\nvar jdx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\n(nodes[jdx] \x3d cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit__$1,(shift + (5)),hash,key,val,added_leaf_QMARK_));\n\nvar i_45933 \x3d (0);\nvar j_45934 \x3d (0);\nwhile(true){\nif((i_45933 \x3c (32))){\nif((((self__.bitmap \x3e\x3e\x3e i_45933) \x26 (1)) \x3d\x3d\x3d (0))){\nvar G__45936 \x3d (i_45933 + (1));\nvar G__45937 \x3d j_45934;\ni_45933 \x3d G__45936;\nj_45934 \x3d G__45937;\ncontinue;\n} else {\n(nodes[i_45933] \x3d (((!(((self__.arr[j_45934]) \x3d\x3d null))))?cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit__$1,(shift + (5)),cljs.core.hash((self__.arr[j_45934])),(self__.arr[j_45934]),(self__.arr[(j_45934 + (1))]),added_leaf_QMARK_):(self__.arr[(j_45934 + (1))])));\n\nvar G__45940 \x3d (i_45933 + (1));\nvar G__45941 \x3d (j_45934 + (2));\ni_45933 \x3d G__45940;\nj_45934 \x3d G__45941;\ncontinue;\n}\n} else {\n}\nbreak;\n}\n\nreturn (new cljs.core.ArrayNode(edit__$1,(n + (1)),nodes));\n} else {\nvar new_arr \x3d (new Array(((2) * (n + (4)))));\ncljs.core.array_copy(self__.arr,(0),new_arr,(0),((2) * idx));\n\n(new_arr[((2) * idx)] \x3d key);\n\n(new_arr[(((2) * idx) + (1))] \x3d val);\n\ncljs.core.array_copy(self__.arr,((2) * idx),new_arr,((2) * (idx + (1))),((2) * (n - idx)));\n\n(added_leaf_QMARK_.val \x3d true);\n\nvar editable \x3d inode.ensure_editable(edit__$1);\n(editable.arr \x3d new_arr);\n\n(editable.bitmap \x3d (editable.bitmap | bit));\n\nreturn editable;\n\n}\n}\n} else {\nvar key_or_nil \x3d (self__.arr[((2) * idx)]);\nvar val_or_node \x3d (self__.arr[(((2) * idx) + (1))]);\nif((key_or_nil \x3d\x3d null)){\nvar n \x3d val_or_node.inode_assoc_BANG_(edit__$1,(shift + (5)),hash,key,val,added_leaf_QMARK_);\nif((n \x3d\x3d\x3d val_or_node)){\nreturn inode;\n} else {\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,(((2) * idx) + (1)),n);\n}\n} else {\nif(cljs.core.key_test(key,key_or_nil)){\nif((val \x3d\x3d\x3d val_or_node)){\nreturn inode;\n} else {\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,(((2) * idx) + (1)),val);\n}\n} else {\n(added_leaf_QMARK_.val \x3d true);\n\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$6(inode,edit__$1,((2) * idx),null,(((2) * idx) + (1)),(function (){var G__39197 \x3d edit__$1;\nvar G__39198 \x3d (shift + (5));\nvar G__39199 \x3d key_or_nil;\nvar G__39200 \x3d val_or_node;\nvar G__39201 \x3d hash;\nvar G__39202 \x3d key;\nvar G__39203 \x3d val;\nreturn (cljs.core.create_node.cljs$core$IFn$_invoke$arity$7 ? cljs.core.create_node.cljs$core$IFn$_invoke$arity$7(G__39197,G__39198,G__39199,G__39200,G__39201,G__39202,G__39203) : cljs.core.create_node.call(null,G__39197,G__39198,G__39199,G__39200,G__39201,G__39202,G__39203));\n})());\n\n}\n}\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_assoc \x3d (function (shift,hash,key,val,added_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar bit \x3d (1 \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\nvar idx \x3d cljs.core.bitmap_indexed_node_index(self__.bitmap,bit);\nif(((self__.bitmap \x26 bit) \x3d\x3d\x3d (0))){\nvar n \x3d cljs.core.bit_count(self__.bitmap);\nif((n \x3e\x3d (16))){\nvar nodes \x3d [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];\nvar jdx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\n(nodes[jdx] \x3d cljs.core.BitmapIndexedNode.EMPTY.inode_assoc((shift + (5)),hash,key,val,added_leaf_QMARK_));\n\nvar i_45954 \x3d (0);\nvar j_45955 \x3d (0);\nwhile(true){\nif((i_45954 \x3c (32))){\nif((((self__.bitmap \x3e\x3e\x3e i_45954) \x26 (1)) \x3d\x3d\x3d (0))){\nvar G__45957 \x3d (i_45954 + (1));\nvar G__45958 \x3d j_45955;\ni_45954 \x3d G__45957;\nj_45955 \x3d G__45958;\ncontinue;\n} else {\n(nodes[i_45954] \x3d (((!(((self__.arr[j_45955]) \x3d\x3d null))))?cljs.core.BitmapIndexedNode.EMPTY.inode_assoc((shift + (5)),cljs.core.hash((self__.arr[j_45955])),(self__.arr[j_45955]),(self__.arr[(j_45955 + (1))]),added_leaf_QMARK_):(self__.arr[(j_45955 + (1))])));\n\nvar G__45961 \x3d (i_45954 + (1));\nvar G__45962 \x3d (j_45955 + (2));\ni_45954 \x3d G__45961;\nj_45955 \x3d G__45962;\ncontinue;\n}\n} else {\n}\nbreak;\n}\n\nreturn (new cljs.core.ArrayNode(null,(n + (1)),nodes));\n} else {\nvar new_arr \x3d (new Array(((2) * (n + (1)))));\ncljs.core.array_copy(self__.arr,(0),new_arr,(0),((2) * idx));\n\n(new_arr[((2) * idx)] \x3d key);\n\n(new_arr[(((2) * idx) + (1))] \x3d val);\n\ncljs.core.array_copy(self__.arr,((2) * idx),new_arr,((2) * (idx + (1))),((2) * (n - idx)));\n\n(added_leaf_QMARK_.val \x3d true);\n\nreturn (new cljs.core.BitmapIndexedNode(null,(self__.bitmap | bit),new_arr));\n}\n} else {\nvar key_or_nil \x3d (self__.arr[((2) * idx)]);\nvar val_or_node \x3d (self__.arr[(((2) * idx) + (1))]);\nif((key_or_nil \x3d\x3d null)){\nvar n \x3d val_or_node.inode_assoc((shift + (5)),hash,key,val,added_leaf_QMARK_);\nif((n \x3d\x3d\x3d val_or_node)){\nreturn inode;\n} else {\nreturn (new cljs.core.BitmapIndexedNode(null,self__.bitmap,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,(((2) * idx) + (1)),n)));\n}\n} else {\nif(cljs.core.key_test(key,key_or_nil)){\nif((val \x3d\x3d\x3d val_or_node)){\nreturn inode;\n} else {\nreturn (new cljs.core.BitmapIndexedNode(null,self__.bitmap,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,(((2) * idx) + (1)),val)));\n}\n} else {\n(added_leaf_QMARK_.val \x3d true);\n\nreturn (new cljs.core.BitmapIndexedNode(null,self__.bitmap,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$5(self__.arr,((2) * idx),null,(((2) * idx) + (1)),(function (){var G__39204 \x3d (shift + (5));\nvar G__39205 \x3d key_or_nil;\nvar G__39206 \x3d val_or_node;\nvar G__39207 \x3d hash;\nvar G__39208 \x3d key;\nvar G__39209 \x3d val;\nreturn (cljs.core.create_node.cljs$core$IFn$_invoke$arity$6 ? cljs.core.create_node.cljs$core$IFn$_invoke$arity$6(G__39204,G__39205,G__39206,G__39207,G__39208,G__39209) : cljs.core.create_node.call(null,G__39204,G__39205,G__39206,G__39207,G__39208,G__39209));\n})())));\n\n}\n}\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_find \x3d (function (shift,hash,key,not_found){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar bit \x3d (1 \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\nif(((self__.bitmap \x26 bit) \x3d\x3d\x3d (0))){\nreturn not_found;\n} else {\nvar idx \x3d cljs.core.bitmap_indexed_node_index(self__.bitmap,bit);\nvar key_or_nil \x3d (self__.arr[((2) * idx)]);\nvar val_or_node \x3d (self__.arr[(((2) * idx) + (1))]);\nif((key_or_nil \x3d\x3d null)){\nreturn val_or_node.inode_find((shift + (5)),hash,key,not_found);\n} else {\nif(cljs.core.key_test(key,key_or_nil)){\nreturn (new cljs.core.MapEntry(key_or_nil,val_or_node,null));\n} else {\nreturn not_found;\n\n}\n}\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.inode_without \x3d (function (shift,hash,key){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar bit \x3d (1 \x3c\x3c ((hash \x3e\x3e\x3e shift) \x26 0x01f));\nif(((self__.bitmap \x26 bit) \x3d\x3d\x3d (0))){\nreturn inode;\n} else {\nvar idx \x3d cljs.core.bitmap_indexed_node_index(self__.bitmap,bit);\nvar key_or_nil \x3d (self__.arr[((2) * idx)]);\nvar val_or_node \x3d (self__.arr[(((2) * idx) + (1))]);\nif((key_or_nil \x3d\x3d null)){\nvar n \x3d val_or_node.inode_without((shift + (5)),hash,key);\nif((n \x3d\x3d\x3d val_or_node)){\nreturn inode;\n} else {\nif((!((n \x3d\x3d null)))){\nreturn (new cljs.core.BitmapIndexedNode(null,self__.bitmap,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,(((2) * idx) + (1)),n)));\n} else {\nif((self__.bitmap \x3d\x3d\x3d bit)){\nreturn null;\n} else {\nreturn (new cljs.core.BitmapIndexedNode(null,(self__.bitmap ^ bit),cljs.core.remove_pair(self__.arr,idx)));\n\n}\n}\n}\n} else {\nif(cljs.core.key_test(key,key_or_nil)){\nreturn (new cljs.core.BitmapIndexedNode(null,(self__.bitmap ^ bit),cljs.core.remove_pair(self__.arr,idx)));\n} else {\nreturn inode;\n\n}\n}\n}\n}));\n\n(cljs.core.BitmapIndexedNode.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.NodeIterator(self__.arr,(0),null,null));\n}));\n\n(cljs.core.BitmapIndexedNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22edit\x22,\x22edit\x22,-1302639,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22bitmap\x22,\x22bitmap\x22,501334601,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.BitmapIndexedNode.cljs$lang$type \x3d true);\n\n(cljs.core.BitmapIndexedNode.cljs$lang$ctorStr \x3d \x22cljs.core/BitmapIndexedNode\x22);\n\n(cljs.core.BitmapIndexedNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/BitmapIndexedNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/BitmapIndexedNode.\n */\ncljs.core.__GT_BitmapIndexedNode \x3d (function cljs$core$__GT_BitmapIndexedNode(edit,bitmap,arr){\nreturn (new cljs.core.BitmapIndexedNode(edit,bitmap,arr));\n});\n\n(cljs.core.BitmapIndexedNode.EMPTY \x3d (new cljs.core.BitmapIndexedNode(null,(0),[])));\ncljs.core.pack_array_node \x3d (function cljs$core$pack_array_node(array_node,edit,idx){\nvar arr \x3d array_node.arr;\nvar len \x3d arr.length;\nvar new_arr \x3d (new Array(((2) * (array_node.cnt - (1)))));\nvar i \x3d (0);\nvar j \x3d (1);\nvar bitmap \x3d (0);\nwhile(true){\nif((i \x3c len)){\nif((((!((i \x3d\x3d\x3d idx)))) \x26\x26 ((!(((arr[i]) \x3d\x3d null)))))){\n(new_arr[j] \x3d (arr[i]));\n\nvar G__46006 \x3d (i + (1));\nvar G__46007 \x3d (j + (2));\nvar G__46008 \x3d (bitmap | ((1) \x3c\x3c i));\ni \x3d G__46006;\nj \x3d G__46007;\nbitmap \x3d G__46008;\ncontinue;\n} else {\nvar G__46009 \x3d (i + (1));\nvar G__46010 \x3d j;\nvar G__46011 \x3d bitmap;\ni \x3d G__46009;\nj \x3d G__46010;\nbitmap \x3d G__46011;\ncontinue;\n}\n} else {\nreturn (new cljs.core.BitmapIndexedNode(edit,bitmap,new_arr));\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.ArrayNodeIterator \x3d (function (arr,i,next_iter){\nthis.arr \x3d arr;\nthis.i \x3d i;\nthis.next_iter \x3d next_iter;\n});\n(cljs.core.ArrayNodeIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar len \x3d self__.arr.length;\nwhile(true){\nif((!((((!((self__.next_iter \x3d\x3d null)))) \x26\x26 (self__.next_iter.hasNext()))))){\nif((self__.i \x3c len)){\nvar node \x3d (self__.arr[self__.i]);\n(self__.i \x3d (self__.i + (1)));\n\nif((!((node \x3d\x3d null)))){\n(self__.next_iter \x3d cljs.core._iterator(node));\n} else {\n}\n\ncontinue;\n} else {\nreturn false;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n}));\n\n(cljs.core.ArrayNodeIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif(this$.hasNext()){\nreturn self__.next_iter.next();\n} else {\nthrow (new Error(\x22No such element\x22));\n}\n}));\n\n(cljs.core.ArrayNodeIterator.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.ArrayNodeIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22next-iter\x22,\x22next-iter\x22,1526626239,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ArrayNodeIterator.cljs$lang$type \x3d true);\n\n(cljs.core.ArrayNodeIterator.cljs$lang$ctorStr \x3d \x22cljs.core/ArrayNodeIterator\x22);\n\n(cljs.core.ArrayNodeIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ArrayNodeIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ArrayNodeIterator.\n */\ncljs.core.__GT_ArrayNodeIterator \x3d (function cljs$core$__GT_ArrayNodeIterator(arr,i,next_iter){\nreturn (new cljs.core.ArrayNodeIterator(arr,i,next_iter));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IIterable}\n*/\ncljs.core.ArrayNode \x3d (function (edit,cnt,arr){\nthis.edit \x3d edit;\nthis.cnt \x3d cnt;\nthis.arr \x3d arr;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 131072;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 0;\n});\n(cljs.core.ArrayNode.prototype.ensure_editable \x3d (function (e){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((e \x3d\x3d\x3d self__.edit)){\nreturn inode;\n} else {\nreturn (new cljs.core.ArrayNode(e,self__.cnt,cljs.core.aclone(self__.arr)));\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_without_BANG_ \x3d (function (edit__$1,shift,hash,key,removed_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\nvar node \x3d (self__.arr[idx]);\nif((node \x3d\x3d null)){\nreturn inode;\n} else {\nvar n \x3d node.inode_without_BANG_(edit__$1,(shift + (5)),hash,key,removed_leaf_QMARK_);\nif((n \x3d\x3d\x3d node)){\nreturn inode;\n} else {\nif((n \x3d\x3d null)){\nif((self__.cnt \x3c\x3d (8))){\nreturn cljs.core.pack_array_node(inode,edit__$1,idx);\n} else {\nvar editable \x3d cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,idx,n);\n(editable.cnt \x3d (editable.cnt - (1)));\n\nreturn editable;\n}\n} else {\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,idx,n);\n\n}\n}\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_seq \x3d (function (){\nvar self__ \x3d this;\nvar inode \x3d this;\nreturn (cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$1 ? cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$1(self__.arr) : cljs.core.create_array_node_seq.call(null,self__.arr));\n}));\n\n(cljs.core.ArrayNode.prototype.kv_reduce \x3d (function (f,init){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar len \x3d self__.arr.length;\nvar i \x3d (0);\nvar init__$1 \x3d init;\nwhile(true){\nif((i \x3c len)){\nvar node \x3d (self__.arr[i]);\nif((!((node \x3d\x3d null)))){\nvar init__$2 \x3d node.kv_reduce(f,init__$1);\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn init__$2;\n} else {\nvar G__46040 \x3d (i + (1));\nvar G__46041 \x3d init__$2;\ni \x3d G__46040;\ninit__$1 \x3d G__46041;\ncontinue;\n}\n} else {\nvar G__46042 \x3d (i + (1));\nvar G__46043 \x3d init__$1;\ni \x3d G__46042;\ninit__$1 \x3d G__46043;\ncontinue;\n}\n} else {\nreturn init__$1;\n}\nbreak;\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_lookup \x3d (function (shift,hash,key,not_found){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\nvar node \x3d (self__.arr[idx]);\nif((!((node \x3d\x3d null)))){\nreturn node.inode_lookup((shift + (5)),hash,key,not_found);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_assoc_BANG_ \x3d (function (edit__$1,shift,hash,key,val,added_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\nvar node \x3d (self__.arr[idx]);\nif((node \x3d\x3d null)){\nvar editable \x3d cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,idx,cljs.core.BitmapIndexedNode.EMPTY.inode_assoc_BANG_(edit__$1,(shift + (5)),hash,key,val,added_leaf_QMARK_));\n(editable.cnt \x3d (editable.cnt + (1)));\n\nreturn editable;\n} else {\nvar n \x3d node.inode_assoc_BANG_(edit__$1,(shift + (5)),hash,key,val,added_leaf_QMARK_);\nif((n \x3d\x3d\x3d node)){\nreturn inode;\n} else {\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,idx,n);\n}\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_assoc \x3d (function (shift,hash,key,val,added_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\nvar node \x3d (self__.arr[idx]);\nif((node \x3d\x3d null)){\nreturn (new cljs.core.ArrayNode(null,(self__.cnt + (1)),cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,idx,cljs.core.BitmapIndexedNode.EMPTY.inode_assoc((shift + (5)),hash,key,val,added_leaf_QMARK_))));\n} else {\nvar n \x3d node.inode_assoc((shift + (5)),hash,key,val,added_leaf_QMARK_);\nif((n \x3d\x3d\x3d node)){\nreturn inode;\n} else {\nreturn (new cljs.core.ArrayNode(null,self__.cnt,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,idx,n)));\n}\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_find \x3d (function (shift,hash,key,not_found){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\nvar node \x3d (self__.arr[idx]);\nif((!((node \x3d\x3d null)))){\nreturn node.inode_find((shift + (5)),hash,key,not_found);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.ArrayNode.prototype.inode_without \x3d (function (shift,hash,key){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d ((hash \x3e\x3e\x3e shift) \x26 0x01f);\nvar node \x3d (self__.arr[idx]);\nif((!((node \x3d\x3d null)))){\nvar n \x3d node.inode_without((shift + (5)),hash,key);\nif((n \x3d\x3d\x3d node)){\nreturn inode;\n} else {\nif((n \x3d\x3d null)){\nif((self__.cnt \x3c\x3d (8))){\nreturn cljs.core.pack_array_node(inode,null,idx);\n} else {\nreturn (new cljs.core.ArrayNode(null,(self__.cnt - (1)),cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,idx,n)));\n}\n} else {\nreturn (new cljs.core.ArrayNode(null,self__.cnt,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,idx,n)));\n\n}\n}\n} else {\nreturn inode;\n}\n}));\n\n(cljs.core.ArrayNode.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.ArrayNodeIterator(self__.arr,(0),null));\n}));\n\n(cljs.core.ArrayNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22edit\x22,\x22edit\x22,-1302639,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ArrayNode.cljs$lang$type \x3d true);\n\n(cljs.core.ArrayNode.cljs$lang$ctorStr \x3d \x22cljs.core/ArrayNode\x22);\n\n(cljs.core.ArrayNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ArrayNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ArrayNode.\n */\ncljs.core.__GT_ArrayNode \x3d (function cljs$core$__GT_ArrayNode(edit,cnt,arr){\nreturn (new cljs.core.ArrayNode(edit,cnt,arr));\n});\n\ncljs.core.hash_collision_node_find_index \x3d (function cljs$core$hash_collision_node_find_index(arr,cnt,key){\nvar lim \x3d ((2) * cnt);\nvar i \x3d (0);\nwhile(true){\nif((i \x3c lim)){\nif(cljs.core.key_test(key,(arr[i]))){\nreturn i;\n} else {\nvar G__46072 \x3d (i + (2));\ni \x3d G__46072;\ncontinue;\n}\n} else {\nreturn (-1);\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IIterable}\n*/\ncljs.core.HashCollisionNode \x3d (function (edit,collision_hash,cnt,arr){\nthis.edit \x3d edit;\nthis.collision_hash \x3d collision_hash;\nthis.cnt \x3d cnt;\nthis.arr \x3d arr;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 131072;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 0;\n});\n(cljs.core.HashCollisionNode.prototype.ensure_editable \x3d (function (e){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((e \x3d\x3d\x3d self__.edit)){\nreturn inode;\n} else {\nvar new_arr \x3d (new Array(((2) * (self__.cnt + (1)))));\ncljs.core.array_copy(self__.arr,(0),new_arr,(0),((2) * self__.cnt));\n\nreturn (new cljs.core.HashCollisionNode(e,self__.collision_hash,self__.cnt,new_arr));\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_without_BANG_ \x3d (function (edit__$1,shift,hash,key,removed_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d cljs.core.hash_collision_node_find_index(self__.arr,self__.cnt,key);\nif((idx \x3d\x3d\x3d (-1))){\nreturn inode;\n} else {\n(removed_leaf_QMARK_.val \x3d true);\n\nif((self__.cnt \x3d\x3d\x3d (1))){\nreturn null;\n} else {\nvar editable \x3d inode.ensure_editable(edit__$1);\nvar earr \x3d editable.arr;\n(earr[idx] \x3d (earr[(((2) * self__.cnt) - (2))]));\n\n(earr[(idx + (1))] \x3d (earr[(((2) * self__.cnt) - (1))]));\n\n(earr[(((2) * self__.cnt) - (1))] \x3d null);\n\n(earr[(((2) * self__.cnt) - (2))] \x3d null);\n\n(editable.cnt \x3d (editable.cnt - (1)));\n\nreturn editable;\n}\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_seq \x3d (function (){\nvar self__ \x3d this;\nvar inode \x3d this;\nreturn (cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$1 ? cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$1(self__.arr) : cljs.core.create_inode_seq.call(null,self__.arr));\n}));\n\n(cljs.core.HashCollisionNode.prototype.kv_reduce \x3d (function (f,init){\nvar self__ \x3d this;\nvar inode \x3d this;\nreturn cljs.core.inode_kv_reduce(self__.arr,f,init);\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_lookup \x3d (function (shift,hash,key,not_found){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d cljs.core.hash_collision_node_find_index(self__.arr,self__.cnt,key);\nif((idx \x3c (0))){\nreturn not_found;\n} else {\nif(cljs.core.key_test(key,(self__.arr[idx]))){\nreturn (self__.arr[(idx + (1))]);\n} else {\nreturn not_found;\n\n}\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_assoc_BANG_ \x3d (function (edit__$1,shift,hash,key,val,added_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((hash \x3d\x3d\x3d self__.collision_hash)){\nvar idx \x3d cljs.core.hash_collision_node_find_index(self__.arr,self__.cnt,key);\nif((idx \x3d\x3d\x3d (-1))){\nif((self__.arr.length \x3e ((2) * self__.cnt))){\nvar editable \x3d cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$6(inode,edit__$1,((2) * self__.cnt),key,(((2) * self__.cnt) + (1)),val);\n(added_leaf_QMARK_.val \x3d true);\n\n(editable.cnt \x3d (editable.cnt + (1)));\n\nreturn editable;\n} else {\nvar len \x3d self__.arr.length;\nvar new_arr \x3d (new Array((len + (2))));\ncljs.core.array_copy(self__.arr,(0),new_arr,(0),len);\n\n(new_arr[len] \x3d key);\n\n(new_arr[(len + (1))] \x3d val);\n\n(added_leaf_QMARK_.val \x3d true);\n\nreturn inode.ensure_editable_array(edit__$1,(self__.cnt + (1)),new_arr);\n}\n} else {\nif(((self__.arr[(idx + (1))]) \x3d\x3d\x3d val)){\nreturn inode;\n} else {\nreturn cljs.core.edit_and_set.cljs$core$IFn$_invoke$arity$4(inode,edit__$1,(idx + (1)),val);\n}\n}\n} else {\nreturn (new cljs.core.BitmapIndexedNode(edit__$1,(1 \x3c\x3c ((self__.collision_hash \x3e\x3e\x3e shift) \x26 0x01f)),[null,inode,null,null])).inode_assoc_BANG_(edit__$1,shift,hash,key,val,added_leaf_QMARK_);\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_assoc \x3d (function (shift,hash,key,val,added_leaf_QMARK_){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((hash \x3d\x3d\x3d self__.collision_hash)){\nvar idx \x3d cljs.core.hash_collision_node_find_index(self__.arr,self__.cnt,key);\nif((idx \x3d\x3d\x3d (-1))){\nvar len \x3d ((2) * self__.cnt);\nvar new_arr \x3d (new Array((len + (2))));\ncljs.core.array_copy(self__.arr,(0),new_arr,(0),len);\n\n(new_arr[len] \x3d key);\n\n(new_arr[(len + (1))] \x3d val);\n\n(added_leaf_QMARK_.val \x3d true);\n\nreturn (new cljs.core.HashCollisionNode(null,self__.collision_hash,(self__.cnt + (1)),new_arr));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((self__.arr[(idx + (1))]),val)){\nreturn inode;\n} else {\nreturn (new cljs.core.HashCollisionNode(null,self__.collision_hash,self__.cnt,cljs.core.clone_and_set.cljs$core$IFn$_invoke$arity$3(self__.arr,(idx + (1)),val)));\n}\n}\n} else {\nreturn (new cljs.core.BitmapIndexedNode(null,(1 \x3c\x3c ((self__.collision_hash \x3e\x3e\x3e shift) \x26 0x01f)),[null,inode])).inode_assoc(shift,hash,key,val,added_leaf_QMARK_);\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.ensure_editable_array \x3d (function (e,count,array){\nvar self__ \x3d this;\nvar inode \x3d this;\nif((e \x3d\x3d\x3d self__.edit)){\n(self__.arr \x3d array);\n\n(self__.cnt \x3d count);\n\nreturn inode;\n} else {\nreturn (new cljs.core.HashCollisionNode(self__.edit,self__.collision_hash,count,array));\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_find \x3d (function (shift,hash,key,not_found){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d cljs.core.hash_collision_node_find_index(self__.arr,self__.cnt,key);\nif((idx \x3c (0))){\nreturn not_found;\n} else {\nif(cljs.core.key_test(key,(self__.arr[idx]))){\nreturn (new cljs.core.MapEntry((self__.arr[idx]),(self__.arr[(idx + (1))]),null));\n} else {\nreturn not_found;\n\n}\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.inode_without \x3d (function (shift,hash,key){\nvar self__ \x3d this;\nvar inode \x3d this;\nvar idx \x3d cljs.core.hash_collision_node_find_index(self__.arr,self__.cnt,key);\nif((idx \x3d\x3d\x3d (-1))){\nreturn inode;\n} else {\nif((self__.cnt \x3d\x3d\x3d (1))){\nreturn null;\n} else {\nreturn (new cljs.core.HashCollisionNode(null,self__.collision_hash,(self__.cnt - (1)),cljs.core.remove_pair(self__.arr,cljs.core.quot(idx,(2)))));\n\n}\n}\n}));\n\n(cljs.core.HashCollisionNode.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.NodeIterator(self__.arr,(0),null,null));\n}));\n\n(cljs.core.HashCollisionNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22edit\x22,\x22edit\x22,-1302639,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22collision-hash\x22,\x22collision-hash\x22,-35831342,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.HashCollisionNode.cljs$lang$type \x3d true);\n\n(cljs.core.HashCollisionNode.cljs$lang$ctorStr \x3d \x22cljs.core/HashCollisionNode\x22);\n\n(cljs.core.HashCollisionNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/HashCollisionNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/HashCollisionNode.\n */\ncljs.core.__GT_HashCollisionNode \x3d (function cljs$core$__GT_HashCollisionNode(edit,collision_hash,cnt,arr){\nreturn (new cljs.core.HashCollisionNode(edit,collision_hash,cnt,arr));\n});\n\ncljs.core.create_node \x3d (function cljs$core$create_node(var_args){\nvar G__39211 \x3d arguments.length;\nswitch (G__39211) {\ncase 6:\nreturn cljs.core.create_node.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase 7:\nreturn cljs.core.create_node.cljs$core$IFn$_invoke$arity$7((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.create_node.cljs$core$IFn$_invoke$arity$6 \x3d (function (shift,key1,val1,key2hash,key2,val2){\nvar key1hash \x3d cljs.core.hash(key1);\nif((key1hash \x3d\x3d\x3d key2hash)){\nreturn (new cljs.core.HashCollisionNode(null,key1hash,(2),[key1,val1,key2,val2]));\n} else {\nvar added_leaf_QMARK_ \x3d (new cljs.core.Box(false));\nreturn cljs.core.BitmapIndexedNode.EMPTY.inode_assoc(shift,key1hash,key1,val1,added_leaf_QMARK_).inode_assoc(shift,key2hash,key2,val2,added_leaf_QMARK_);\n}\n}));\n\n(cljs.core.create_node.cljs$core$IFn$_invoke$arity$7 \x3d (function (edit,shift,key1,val1,key2hash,key2,val2){\nvar key1hash \x3d cljs.core.hash(key1);\nif((key1hash \x3d\x3d\x3d key2hash)){\nreturn (new cljs.core.HashCollisionNode(null,key1hash,(2),[key1,val1,key2,val2]));\n} else {\nvar added_leaf_QMARK_ \x3d (new cljs.core.Box(false));\nreturn 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_);\n}\n}));\n\n(cljs.core.create_node.cljs$lang$maxFixedArity \x3d 7);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.NodeSeq \x3d (function (meta,nodes,i,s,__hash){\nthis.meta \x3d meta;\nthis.nodes \x3d nodes;\nthis.i \x3d i;\nthis.s \x3d s;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.NodeSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.NodeSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.NodeSeq.prototype.indexOf \x3d (function() {\nvar G__46156 \x3d null;\nvar G__46156__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__46156__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46156 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46156__1.call(this,x);\ncase 2:\nreturn G__46156__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46156.cljs$core$IFn$_invoke$arity$1 \x3d G__46156__1;\nG__46156.cljs$core$IFn$_invoke$arity$2 \x3d G__46156__2;\nreturn G__46156;\n})()\n);\n\n(cljs.core.NodeSeq.prototype.lastIndexOf \x3d (function() {\nvar G__46159 \x3d null;\nvar G__46159__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__46159__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46159 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46159__1.call(this,x);\ncase 2:\nreturn G__46159__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46159.cljs$core$IFn$_invoke$arity$1 \x3d G__46159__1;\nG__46159.cljs$core$IFn$_invoke$arity$2 \x3d G__46159__2;\nreturn G__46159;\n})()\n);\n\n(cljs.core.NodeSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.s \x3d\x3d null)){\nvar G__39212 \x3d self__.nodes;\nvar G__39213 \x3d (self__.i + (2));\nvar G__39214 \x3d null;\nreturn (cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3 ? cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3(G__39212,G__39213,G__39214) : cljs.core.create_inode_seq.call(null,G__39212,G__39213,G__39214));\n} else {\nvar G__39215 \x3d self__.nodes;\nvar G__39216 \x3d self__.i;\nvar G__39217 \x3d cljs.core.next(self__.s);\nreturn (cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3 ? cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3(G__39215,G__39216,G__39217) : cljs.core.create_inode_seq.call(null,G__39215,G__39216,G__39217));\n}\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.s \x3d\x3d null)){\nreturn (new cljs.core.MapEntry((self__.nodes[self__.i]),(self__.nodes[(self__.i + (1))]),null));\n} else {\nreturn cljs.core.first(self__.s);\n}\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar ret \x3d (((self__.s \x3d\x3d null))?(function (){var G__39218 \x3d self__.nodes;\nvar G__39219 \x3d (self__.i + (2));\nvar G__39220 \x3d null;\nreturn (cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3 ? cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3(G__39218,G__39219,G__39220) : cljs.core.create_inode_seq.call(null,G__39218,G__39219,G__39220));\n})():(function (){var G__39221 \x3d self__.nodes;\nvar G__39222 \x3d self__.i;\nvar G__39223 \x3d cljs.core.next(self__.s);\nreturn (cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3 ? cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3(G__39221,G__39222,G__39223) : cljs.core.create_inode_seq.call(null,G__39221,G__39222,G__39223));\n})());\nif((!((ret \x3d\x3d null)))){\nreturn ret;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn this$__$1;\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.NodeSeq(new_meta,self__.nodes,self__.i,self__.s,self__.__hash));\n}\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.NodeSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22nodes\x22,\x22nodes\x22,-459054278,null),new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.NodeSeq.cljs$lang$type \x3d true);\n\n(cljs.core.NodeSeq.cljs$lang$ctorStr \x3d \x22cljs.core/NodeSeq\x22);\n\n(cljs.core.NodeSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/NodeSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/NodeSeq.\n */\ncljs.core.__GT_NodeSeq \x3d (function cljs$core$__GT_NodeSeq(meta,nodes,i,s,__hash){\nreturn (new cljs.core.NodeSeq(meta,nodes,i,s,__hash));\n});\n\ngoog.object.set(cljs.core.NodeSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.create_inode_seq \x3d (function cljs$core$create_inode_seq(var_args){\nvar G__39225 \x3d arguments.length;\nswitch (G__39225) {\ncase 1:\nreturn cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 3:\nreturn cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$1 \x3d (function (nodes){\nreturn cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3(nodes,(0),null);\n}));\n\n(cljs.core.create_inode_seq.cljs$core$IFn$_invoke$arity$3 \x3d (function (nodes,i,s){\nif((s \x3d\x3d null)){\nvar len \x3d nodes.length;\nvar j \x3d i;\nwhile(true){\nif((j \x3c len)){\nif((!(((nodes[j]) \x3d\x3d null)))){\nreturn (new cljs.core.NodeSeq(null,nodes,j,null,null));\n} else {\nvar temp__5751__auto__ \x3d (nodes[(j + (1))]);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar node \x3d temp__5751__auto__;\nvar temp__5751__auto____$1 \x3d node.inode_seq();\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar node_seq \x3d temp__5751__auto____$1;\nreturn (new cljs.core.NodeSeq(null,nodes,(j + (2)),node_seq,null));\n} else {\nvar G__46246 \x3d (j + (2));\nj \x3d G__46246;\ncontinue;\n}\n} else {\nvar G__46247 \x3d (j + (2));\nj \x3d G__46247;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\nbreak;\n}\n} else {\nreturn (new cljs.core.NodeSeq(null,nodes,i,s,null));\n}\n}));\n\n(cljs.core.create_inode_seq.cljs$lang$maxFixedArity \x3d 3);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.ArrayNodeSeq \x3d (function (meta,nodes,i,s,__hash){\nthis.meta \x3d meta;\nthis.nodes \x3d nodes;\nthis.i \x3d i;\nthis.s \x3d s;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.ArrayNodeSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.indexOf \x3d (function() {\nvar G__46250 \x3d null;\nvar G__46250__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__46250__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46250 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46250__1.call(this,x);\ncase 2:\nreturn G__46250__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46250.cljs$core$IFn$_invoke$arity$1 \x3d G__46250__1;\nG__46250.cljs$core$IFn$_invoke$arity$2 \x3d G__46250__2;\nreturn G__46250;\n})()\n);\n\n(cljs.core.ArrayNodeSeq.prototype.lastIndexOf \x3d (function() {\nvar G__46253 \x3d null;\nvar G__46253__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__46253__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46253 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46253__1.call(this,x);\ncase 2:\nreturn G__46253__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46253.cljs$core$IFn$_invoke$arity$1 \x3d G__46253__1;\nG__46253.cljs$core$IFn$_invoke$arity$2 \x3d G__46253__2;\nreturn G__46253;\n})()\n);\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar G__39226 \x3d self__.nodes;\nvar G__39227 \x3d self__.i;\nvar G__39228 \x3d cljs.core.next(self__.s);\nreturn (cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3 ? cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3(G__39226,G__39227,G__39228) : cljs.core.create_array_node_seq.call(null,G__39226,G__39227,G__39228));\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.first(self__.s);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar ret \x3d (function (){var G__39229 \x3d self__.nodes;\nvar G__39230 \x3d self__.i;\nvar G__39231 \x3d cljs.core.next(self__.s);\nreturn (cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3 ? cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3(G__39229,G__39230,G__39231) : cljs.core.create_array_node_seq.call(null,G__39229,G__39230,G__39231));\n})();\nif((!((ret \x3d\x3d null)))){\nreturn ret;\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn this$__$1;\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.ArrayNodeSeq(new_meta,self__.nodes,self__.i,self__.s,self__.__hash));\n}\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.ArrayNodeSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22nodes\x22,\x22nodes\x22,-459054278,null),new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ArrayNodeSeq.cljs$lang$type \x3d true);\n\n(cljs.core.ArrayNodeSeq.cljs$lang$ctorStr \x3d \x22cljs.core/ArrayNodeSeq\x22);\n\n(cljs.core.ArrayNodeSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ArrayNodeSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ArrayNodeSeq.\n */\ncljs.core.__GT_ArrayNodeSeq \x3d (function cljs$core$__GT_ArrayNodeSeq(meta,nodes,i,s,__hash){\nreturn (new cljs.core.ArrayNodeSeq(meta,nodes,i,s,__hash));\n});\n\ngoog.object.set(cljs.core.ArrayNodeSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.create_array_node_seq \x3d (function cljs$core$create_array_node_seq(var_args){\nvar G__39233 \x3d arguments.length;\nswitch (G__39233) {\ncase 1:\nreturn cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 3:\nreturn cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$1 \x3d (function (nodes){\nreturn cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3(nodes,(0),null);\n}));\n\n(cljs.core.create_array_node_seq.cljs$core$IFn$_invoke$arity$3 \x3d (function (nodes,i,s){\nif((s \x3d\x3d null)){\nvar len \x3d nodes.length;\nvar j \x3d i;\nwhile(true){\nif((j \x3c len)){\nvar temp__5751__auto__ \x3d (nodes[j]);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar nj \x3d temp__5751__auto__;\nvar temp__5751__auto____$1 \x3d nj.inode_seq();\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar ns \x3d temp__5751__auto____$1;\nreturn (new cljs.core.ArrayNodeSeq(null,nodes,(j + (1)),ns,null));\n} else {\nvar G__46282 \x3d (j + (1));\nj \x3d G__46282;\ncontinue;\n}\n} else {\nvar G__46283 \x3d (j + (1));\nj \x3d G__46283;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n} else {\nreturn (new cljs.core.ArrayNodeSeq(null,nodes,i,s,null));\n}\n}));\n\n(cljs.core.create_array_node_seq.cljs$lang$maxFixedArity \x3d 3);\n\n\n/**\n* @constructor\n*/\ncljs.core.HashMapIter \x3d (function (nil_val,root_iter,seen){\nthis.nil_val \x3d nil_val;\nthis.root_iter \x3d root_iter;\nthis.seen \x3d seen;\n});\n(cljs.core.HashMapIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (((!(self__.seen))) || (self__.root_iter.hasNext()));\n}));\n\n(cljs.core.HashMapIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((!(self__.seen))){\n(self__.seen \x3d true);\n\nreturn (new cljs.core.MapEntry(null,self__.nil_val,null));\n} else {\nreturn self__.root_iter.next();\n}\n}));\n\n(cljs.core.HashMapIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.HashMapIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22nil-val\x22,\x22nil-val\x22,-513933559,null),new cljs.core.Symbol(null,\x22root-iter\x22,\x22root-iter\x22,1974672108,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22seen\x22,\x22seen\x22,1121531738,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.HashMapIter.cljs$lang$type \x3d true);\n\n(cljs.core.HashMapIter.cljs$lang$ctorStr \x3d \x22cljs.core/HashMapIter\x22);\n\n(cljs.core.HashMapIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/HashMapIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/HashMapIter.\n */\ncljs.core.__GT_HashMapIter \x3d (function cljs$core$__GT_HashMapIter(nil_val,root_iter,seen){\nreturn (new cljs.core.HashMapIter(nil_val,root_iter,seen));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEditableCollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.PersistentHashMap \x3d (function (meta,cnt,root,has_nil_QMARK_,nil_val,__hash){\nthis.meta \x3d meta;\nthis.cnt \x3d cnt;\nthis.root \x3d root;\nthis.has_nil_QMARK_ \x3d has_nil_QMARK_;\nthis.nil_val \x3d nil_val;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 16123663;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139268;\n});\n(cljs.core.PersistentHashMap.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((k \x3d\x3d null)){\nif(self__.has_nil_QMARK_){\nreturn (new cljs.core.MapEntry(null,self__.nil_val,null));\n} else {\nreturn null;\n}\n} else {\nif((self__.root \x3d\x3d null)){\nreturn null;\n} else {\nreturn self__.root.inode_find((0),cljs.core.hash(k),k,null);\n\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentHashMap.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentHashMap.prototype.keys \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator((cljs.core.keys.cljs$core$IFn$_invoke$arity$1 ? cljs.core.keys.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.keys.call(null,coll)));\n}));\n\n(cljs.core.PersistentHashMap.prototype.entries \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_entries_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentHashMap.prototype.values \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator((cljs.core.vals.cljs$core$IFn$_invoke$arity$1 ? cljs.core.vals.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.vals.call(null,coll)));\n}));\n\n(cljs.core.PersistentHashMap.prototype.has \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.contains_QMARK_(coll,k);\n}));\n\n(cljs.core.PersistentHashMap.prototype.get \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentHashMap.prototype.forEach \x3d (function (f){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar seq__39235 \x3d cljs.core.seq(coll);\nvar chunk__39236 \x3d null;\nvar count__39237 \x3d (0);\nvar i__39238 \x3d (0);\nwhile(true){\nif((i__39238 \x3c count__39237)){\nvar vec__39245 \x3d chunk__39236.cljs$core$IIndexed$_nth$arity$2(null,i__39238);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39245,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39245,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__46339 \x3d seq__39235;\nvar G__46340 \x3d chunk__39236;\nvar G__46341 \x3d count__39237;\nvar G__46342 \x3d (i__39238 + (1));\nseq__39235 \x3d G__46339;\nchunk__39236 \x3d G__46340;\ncount__39237 \x3d G__46341;\ni__39238 \x3d G__46342;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39235);\nif(temp__5753__auto__){\nvar seq__39235__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39235__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39235__$1);\nvar G__46344 \x3d cljs.core.chunk_rest(seq__39235__$1);\nvar G__46345 \x3d c__4591__auto__;\nvar G__46346 \x3d cljs.core.count(c__4591__auto__);\nvar G__46347 \x3d (0);\nseq__39235 \x3d G__46344;\nchunk__39236 \x3d G__46345;\ncount__39237 \x3d G__46346;\ni__39238 \x3d G__46347;\ncontinue;\n} else {\nvar vec__39248 \x3d cljs.core.first(seq__39235__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39248,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39248,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__46350 \x3d cljs.core.next(seq__39235__$1);\nvar G__46351 \x3d null;\nvar G__46352 \x3d (0);\nvar G__46353 \x3d (0);\nseq__39235 \x3d G__46350;\nchunk__39236 \x3d G__46351;\ncount__39237 \x3d G__46352;\ni__39238 \x3d G__46353;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((k \x3d\x3d null)){\nif(self__.has_nil_QMARK_){\nreturn self__.nil_val;\n} else {\nreturn not_found;\n}\n} else {\nif((self__.root \x3d\x3d null)){\nreturn not_found;\n} else {\nreturn self__.root.inode_lookup((0),cljs.core.hash(k),k,not_found);\n\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (coll,f,init){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar init__$1 \x3d ((self__.has_nil_QMARK_)?(f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(init,null,self__.nil_val) : f.call(null,init,null,self__.nil_val)):init);\nif(cljs.core.reduced_QMARK_(init__$1)){\nreturn cljs.core.deref(init__$1);\n} else {\nif((!((self__.root \x3d\x3d null)))){\nreturn cljs.core.unreduced(self__.root.kv_reduce(f,init__$1));\n} else {\nreturn init__$1;\n\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar root_iter \x3d ((self__.root)?cljs.core._iterator(self__.root):cljs.core.nil_iter());\nif(self__.has_nil_QMARK_){\nreturn (new cljs.core.HashMapIter(self__.nil_val,root_iter,false));\n} else {\nreturn root_iter;\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.PersistentHashMap(self__.meta,self__.cnt,self__.root,self__.has_nil_QMARK_,self__.nil_val,self__.__hash));\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.cnt;\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_unordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_map(coll__$1,other);\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.TransientHashMap(({}),self__.root,self__.cnt,self__.has_nil_QMARK_,self__.nil_val));\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.PersistentHashMap.EMPTY,self__.meta);\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((k \x3d\x3d null)){\nif(self__.has_nil_QMARK_){\nreturn (new cljs.core.PersistentHashMap(self__.meta,(self__.cnt - (1)),self__.root,false,null,null));\n} else {\nreturn coll__$1;\n}\n} else {\nif((self__.root \x3d\x3d null)){\nreturn coll__$1;\n} else {\nvar new_root \x3d self__.root.inode_without((0),cljs.core.hash(k),k);\nif((new_root \x3d\x3d\x3d self__.root)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentHashMap(self__.meta,(self__.cnt - (1)),new_root,self__.has_nil_QMARK_,self__.nil_val,null));\n}\n\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (coll,k,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((k \x3d\x3d null)){\nif(((self__.has_nil_QMARK_) \x26\x26 ((v \x3d\x3d\x3d self__.nil_val)))){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentHashMap(self__.meta,((self__.has_nil_QMARK_)?self__.cnt:(self__.cnt + (1))),self__.root,true,v,null));\n}\n} else {\nvar added_leaf_QMARK_ \x3d (new cljs.core.Box(false));\nvar new_root \x3d (((self__.root \x3d\x3d null))?cljs.core.BitmapIndexedNode.EMPTY:self__.root).inode_assoc((0),cljs.core.hash(k),k,v,added_leaf_QMARK_);\nif((new_root \x3d\x3d\x3d self__.root)){\nreturn coll__$1;\n} else {\nreturn (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));\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((k \x3d\x3d null)){\nreturn self__.has_nil_QMARK_;\n} else {\nif((self__.root \x3d\x3d null)){\nreturn false;\n} else {\nreturn (!((self__.root.inode_lookup((0),cljs.core.hash(k),k,cljs.core.lookup_sentinel) \x3d\x3d\x3d cljs.core.lookup_sentinel)));\n\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nvar s \x3d (((!((self__.root \x3d\x3d null))))?self__.root.inode_seq():null);\nif(self__.has_nil_QMARK_){\nreturn cljs.core.cons((new cljs.core.MapEntry(null,self__.nil_val,null)),s);\n} else {\nreturn s;\n}\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentHashMap(new_meta,self__.cnt,self__.root,self__.has_nil_QMARK_,self__.nil_val,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,entry){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry)){\nreturn coll__$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry,(0)),cljs.core._nth(entry,(1)));\n} else {\nvar ret \x3d coll__$1;\nvar es \x3d cljs.core.seq(entry);\nwhile(true){\nif((es \x3d\x3d null)){\nreturn ret;\n} else {\nvar e \x3d cljs.core.first(es);\nif(cljs.core.vector_QMARK_(e)){\nvar G__46384 \x3d cljs.core._assoc(ret,cljs.core._nth(e,(0)),cljs.core._nth(e,(1)));\nvar G__46385 \x3d cljs.core.next(es);\nret \x3d G__46384;\nes \x3d G__46385;\ncontinue;\n} else {\nthrow (new Error(\x22conj on a map takes map entries or seqables of map entries\x22));\n}\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39253 \x3d (arguments.length - (1));\nswitch (G__39253) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.PersistentHashMap.prototype.apply \x3d (function (self__,args39234){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39234)));\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentHashMap.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.Symbol(null,\x22root\x22,\x22root\x22,1191874074,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22has-nil?\x22,\x22has-nil?\x22,825886722,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null)], null)),new cljs.core.Symbol(null,\x22nil-val\x22,\x22nil-val\x22,-513933559,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentHashMap.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentHashMap.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentHashMap\x22);\n\n(cljs.core.PersistentHashMap.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentHashMap\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentHashMap.\n */\ncljs.core.__GT_PersistentHashMap \x3d (function cljs$core$__GT_PersistentHashMap(meta,cnt,root,has_nil_QMARK_,nil_val,__hash){\nreturn (new cljs.core.PersistentHashMap(meta,cnt,root,has_nil_QMARK_,nil_val,__hash));\n});\n\n(cljs.core.PersistentHashMap.EMPTY \x3d (new cljs.core.PersistentHashMap(null,(0),null,false,null,cljs.core.empty_unordered_hash)));\n(cljs.core.PersistentHashMap.fromArray \x3d (function (arr,no_clone){\nvar arr__$1 \x3d ((no_clone)?arr:cljs.core.aclone(arr));\nvar len \x3d arr__$1.length;\nvar i \x3d (0);\nvar ret \x3d cljs.core.transient$(cljs.core.PersistentHashMap.EMPTY);\nwhile(true){\nif((i \x3c len)){\nvar G__46393 \x3d (i + (2));\nvar G__46394 \x3d cljs.core._assoc_BANG_(ret,(arr__$1[i]),(arr__$1[(i + (1))]));\ni \x3d G__46393;\nret \x3d G__46394;\ncontinue;\n} else {\nreturn cljs.core._persistent_BANG_(ret);\n}\nbreak;\n}\n}));\n(cljs.core.PersistentHashMap.fromArrays \x3d (function (ks,vs){\nvar len \x3d ks.length;\nvar i \x3d (0);\nvar out \x3d cljs.core.transient$(cljs.core.PersistentHashMap.EMPTY);\nwhile(true){\nif((i \x3c len)){\nvar G__46396 \x3d (i + (1));\nvar G__46397 \x3d cljs.core._assoc_BANG_(out,(ks[i]),(vs[i]));\ni \x3d G__46396;\nout \x3d G__46397;\ncontinue;\n} else {\nreturn cljs.core.persistent_BANG_(out);\n}\nbreak;\n}\n}));\n(cljs.core.PersistentHashMap.createWithCheck \x3d (function (arr){\nvar len \x3d arr.length;\nvar ret \x3d cljs.core.transient$(cljs.core.PersistentHashMap.EMPTY);\nvar i_46399 \x3d (0);\nwhile(true){\nif((i_46399 \x3c len)){\ncljs.core._assoc_BANG_(ret,(arr[i_46399]),(arr[(i_46399 + (1))]));\n\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core._count(ret),((i_46399 / (2)) + (1)))){\nthrow (new Error([\x22Duplicate key: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arr[i_46399]))].join(\x27\x27)));\n} else {\nvar G__46401 \x3d (i_46399 + (2));\ni_46399 \x3d G__46401;\ncontinue;\n}\n} else {\n}\nbreak;\n}\n\nreturn cljs.core._persistent_BANG_(ret);\n}));\ngoog.object.set(cljs.core.PersistentHashMap.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ITransientMap}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ITransientCollection}\n * @implements {cljs.core.ITransientAssociative}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.TransientHashMap \x3d (function (edit,root,count,has_nil_QMARK_,nil_val){\nthis.edit \x3d edit;\nthis.root \x3d root;\nthis.count \x3d count;\nthis.has_nil_QMARK_ \x3d has_nil_QMARK_;\nthis.nil_val \x3d nil_val;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 259;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 56;\n});\n(cljs.core.TransientHashMap.prototype.conj_BANG_ \x3d (function (o){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nif(self__.edit){\nif(cljs.core.map_entry_QMARK_(o)){\nreturn tcoll.assoc_BANG_((cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(o) : cljs.core.key.call(null,o)),(cljs.core.val.cljs$core$IFn$_invoke$arity$1 ? cljs.core.val.cljs$core$IFn$_invoke$arity$1(o) : cljs.core.val.call(null,o)));\n} else {\nif(cljs.core.vector_QMARK_(o)){\nreturn tcoll.assoc_BANG_((o.cljs$core$IFn$_invoke$arity$1 ? o.cljs$core$IFn$_invoke$arity$1((0)) : o.call(null,(0))),(o.cljs$core$IFn$_invoke$arity$1 ? o.cljs$core$IFn$_invoke$arity$1((1)) : o.call(null,(1))));\n} else {\nvar es \x3d cljs.core.seq(o);\nvar tcoll__$1 \x3d tcoll;\nwhile(true){\nvar temp__5751__auto__ \x3d cljs.core.first(es);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar e \x3d temp__5751__auto__;\nvar G__46402 \x3d cljs.core.next(es);\nvar G__46403 \x3d tcoll__$1.assoc_BANG_((cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(e) : cljs.core.key.call(null,e)),(cljs.core.val.cljs$core$IFn$_invoke$arity$1 ? cljs.core.val.cljs$core$IFn$_invoke$arity$1(e) : cljs.core.val.call(null,e)));\nes \x3d G__46402;\ntcoll__$1 \x3d G__46403;\ncontinue;\n} else {\nreturn tcoll__$1;\n}\nbreak;\n}\n\n}\n}\n} else {\nthrow (new Error(\x22conj! after persistent\x22));\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.assoc_BANG_ \x3d (function (k,v){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nif(self__.edit){\nif((k \x3d\x3d null)){\nif((self__.nil_val \x3d\x3d\x3d v)){\n} else {\n(self__.nil_val \x3d v);\n}\n\nif(self__.has_nil_QMARK_){\n} else {\n(self__.count \x3d (self__.count + (1)));\n\n(self__.has_nil_QMARK_ \x3d true);\n}\n\nreturn tcoll;\n} else {\nvar added_leaf_QMARK_ \x3d (new cljs.core.Box(false));\nvar node \x3d (((self__.root \x3d\x3d null))?cljs.core.BitmapIndexedNode.EMPTY:self__.root).inode_assoc_BANG_(self__.edit,(0),cljs.core.hash(k),k,v,added_leaf_QMARK_);\nif((node \x3d\x3d\x3d self__.root)){\n} else {\n(self__.root \x3d node);\n}\n\nif(added_leaf_QMARK_.val){\n(self__.count \x3d (self__.count + (1)));\n} else {\n}\n\nreturn tcoll;\n}\n} else {\nthrow (new Error(\x22assoc! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.without_BANG_ \x3d (function (k){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nif(self__.edit){\nif((k \x3d\x3d null)){\nif(self__.has_nil_QMARK_){\n(self__.has_nil_QMARK_ \x3d false);\n\n(self__.nil_val \x3d null);\n\n(self__.count \x3d (self__.count - (1)));\n\nreturn tcoll;\n} else {\nreturn tcoll;\n}\n} else {\nif((self__.root \x3d\x3d null)){\nreturn tcoll;\n} else {\nvar removed_leaf_QMARK_ \x3d (new cljs.core.Box(false));\nvar node \x3d self__.root.inode_without_BANG_(self__.edit,(0),cljs.core.hash(k),k,removed_leaf_QMARK_);\nif((node \x3d\x3d\x3d self__.root)){\n} else {\n(self__.root \x3d node);\n}\n\nif(removed_leaf_QMARK_.val){\n(self__.count \x3d (self__.count - (1)));\n} else {\n}\n\nreturn tcoll;\n}\n}\n} else {\nthrow (new Error(\x22dissoc! after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.persistent_BANG_ \x3d (function (){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nif(self__.edit){\n(self__.edit \x3d null);\n\nreturn (new cljs.core.PersistentHashMap(null,self__.count,self__.root,self__.has_nil_QMARK_,self__.nil_val,null));\n} else {\nthrow (new Error(\x22persistent! called twice\x22));\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(self__.edit){\nreturn self__.count;\n} else {\nthrow (new Error(\x22count after persistent!\x22));\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (tcoll,k){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif((k \x3d\x3d null)){\nif(self__.has_nil_QMARK_){\nreturn self__.nil_val;\n} else {\nreturn null;\n}\n} else {\nif((self__.root \x3d\x3d null)){\nreturn null;\n} else {\nreturn self__.root.inode_lookup((0),cljs.core.hash(k),k);\n}\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (tcoll,k,not_found){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif((k \x3d\x3d null)){\nif(self__.has_nil_QMARK_){\nreturn self__.nil_val;\n} else {\nreturn not_found;\n}\n} else {\nif((self__.root \x3d\x3d null)){\nreturn not_found;\n} else {\nreturn self__.root.inode_lookup((0),cljs.core.hash(k),k,not_found);\n}\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 \x3d (function (tcoll,val){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn tcoll__$1.conj_BANG_(val);\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn tcoll__$1.persistent_BANG_();\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ITransientAssociative$_assoc_BANG_$arity$3 \x3d (function (tcoll,key,val){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn tcoll__$1.assoc_BANG_(key,val);\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$ITransientMap$_dissoc_BANG_$arity$2 \x3d (function (tcoll,key){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn tcoll__$1.without_BANG_(key);\n}));\n\n(cljs.core.TransientHashMap.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39255 \x3d (arguments.length - (1));\nswitch (G__39255) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.TransientHashMap.prototype.apply \x3d (function (self__,args39254){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39254)));\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (key){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nreturn tcoll.cljs$core$ILookup$_lookup$arity$2(null,key);\n}));\n\n(cljs.core.TransientHashMap.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (key,not_found){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nreturn tcoll.cljs$core$ILookup$_lookup$arity$3(null,key,not_found);\n}));\n\n(cljs.core.TransientHashMap.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22edit\x22,\x22edit\x22,-1302639,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22root\x22,\x22root\x22,1191874074,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22has-nil?\x22,\x22has-nil?\x22,825886722,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22nil-val\x22,\x22nil-val\x22,-513933559,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.TransientHashMap.cljs$lang$type \x3d true);\n\n(cljs.core.TransientHashMap.cljs$lang$ctorStr \x3d \x22cljs.core/TransientHashMap\x22);\n\n(cljs.core.TransientHashMap.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/TransientHashMap\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/TransientHashMap.\n */\ncljs.core.__GT_TransientHashMap \x3d (function cljs$core$__GT_TransientHashMap(edit,root,count,has_nil_QMARK_,nil_val){\nreturn (new cljs.core.TransientHashMap(edit,root,count,has_nil_QMARK_,nil_val));\n});\n\ncljs.core.tree_map_seq_push \x3d (function cljs$core$tree_map_seq_push(node,stack,ascending_QMARK_){\nvar t \x3d node;\nvar stack__$1 \x3d stack;\nwhile(true){\nif((!((t \x3d\x3d null)))){\nvar G__46447 \x3d ((ascending_QMARK_)?t.left:t.right);\nvar G__46448 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(stack__$1,t);\nt \x3d G__46447;\nstack__$1 \x3d G__46448;\ncontinue;\n} else {\nreturn stack__$1;\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.PersistentTreeMapSeq \x3d (function (meta,stack,ascending_QMARK_,cnt,__hash){\nthis.meta \x3d meta;\nthis.stack \x3d stack;\nthis.ascending_QMARK_ \x3d ascending_QMARK_;\nthis.cnt \x3d cnt;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374990;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.PersistentTreeMapSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.indexOf \x3d (function() {\nvar G__46457 \x3d null;\nvar G__46457__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__46457__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46457 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46457__1.call(this,x);\ncase 2:\nreturn G__46457__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46457.cljs$core$IFn$_invoke$arity$1 \x3d G__46457__1;\nG__46457.cljs$core$IFn$_invoke$arity$2 \x3d G__46457__2;\nreturn G__46457;\n})()\n);\n\n(cljs.core.PersistentTreeMapSeq.prototype.lastIndexOf \x3d (function() {\nvar G__46466 \x3d null;\nvar G__46466__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__46466__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46466 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46466__1.call(this,x);\ncase 2:\nreturn G__46466__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46466.cljs$core$IFn$_invoke$arity$1 \x3d G__46466__1;\nG__46466.cljs$core$IFn$_invoke$arity$2 \x3d G__46466__2;\nreturn G__46466;\n})()\n);\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar t \x3d cljs.core.first(self__.stack);\nvar next_stack \x3d cljs.core.tree_map_seq_push(((self__.ascending_QMARK_)?t.right:t.left),cljs.core.next(self__.stack),self__.ascending_QMARK_);\nif((next_stack \x3d\x3d null)){\nreturn null;\n} else {\nreturn (new cljs.core.PersistentTreeMapSeq(null,next_stack,self__.ascending_QMARK_,(self__.cnt - (1)),null));\n}\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3c (0))){\nreturn (cljs.core.count(cljs.core.next(coll__$1)) + (1));\n} else {\nreturn self__.cnt;\n}\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core.peek(self__.stack);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar t \x3d cljs.core.first(self__.stack);\nvar next_stack \x3d cljs.core.tree_map_seq_push(((self__.ascending_QMARK_)?t.right:t.left),cljs.core.next(self__.stack),self__.ascending_QMARK_);\nif((!((next_stack \x3d\x3d null)))){\nreturn (new cljs.core.PersistentTreeMapSeq(null,next_stack,self__.ascending_QMARK_,(self__.cnt - (1)),null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn this$__$1;\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentTreeMapSeq(new_meta,self__.stack,self__.ascending_QMARK_,self__.cnt,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.PersistentTreeMapSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22stack\x22,\x22stack\x22,847125597,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22ascending?\x22,\x22ascending?\x22,-1938452653,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null)], null)),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentTreeMapSeq.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentTreeMapSeq.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentTreeMapSeq\x22);\n\n(cljs.core.PersistentTreeMapSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentTreeMapSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentTreeMapSeq.\n */\ncljs.core.__GT_PersistentTreeMapSeq \x3d (function cljs$core$__GT_PersistentTreeMapSeq(meta,stack,ascending_QMARK_,cnt,__hash){\nreturn (new cljs.core.PersistentTreeMapSeq(meta,stack,ascending_QMARK_,cnt,__hash));\n});\n\ngoog.object.set(cljs.core.PersistentTreeMapSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.create_tree_map_seq \x3d (function cljs$core$create_tree_map_seq(tree,ascending_QMARK_,cnt){\nreturn (new cljs.core.PersistentTreeMapSeq(null,cljs.core.tree_map_seq_push(tree,null,ascending_QMARK_),ascending_QMARK_,cnt,null));\n});\n\ncljs.core.balance_left \x3d (function cljs$core$balance_left(key,val,ins,right){\nif((ins instanceof cljs.core.RedNode)){\nif((ins.left instanceof cljs.core.RedNode)){\nreturn (new cljs.core.RedNode(ins.key,ins.val,ins.left.blacken(),(new cljs.core.BlackNode(key,val,ins.right,right,null)),null));\n} else {\nif((ins.right instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nreturn (new cljs.core.BlackNode(key,val,ins,right,null));\n\n}\n}\n} else {\nreturn (new cljs.core.BlackNode(key,val,ins,right,null));\n}\n});\ncljs.core.balance_right \x3d (function cljs$core$balance_right(key,val,left,ins){\nif((ins instanceof cljs.core.RedNode)){\nif((ins.right instanceof cljs.core.RedNode)){\nreturn (new cljs.core.RedNode(ins.key,ins.val,(new cljs.core.BlackNode(key,val,left,ins.left,null)),ins.right.blacken(),null));\n} else {\nif((ins.left instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nreturn (new cljs.core.BlackNode(key,val,left,ins,null));\n\n}\n}\n} else {\nreturn (new cljs.core.BlackNode(key,val,left,ins,null));\n}\n});\ncljs.core.balance_left_del \x3d (function cljs$core$balance_left_del(key,val,del,right){\nif((del instanceof cljs.core.RedNode)){\nreturn (new cljs.core.RedNode(key,val,del.blacken(),right,null));\n} else {\nif((right instanceof cljs.core.BlackNode)){\nreturn cljs.core.balance_right(key,val,del,right.redden());\n} else {\nif((((right instanceof cljs.core.RedNode)) \x26\x26 ((right.left instanceof cljs.core.BlackNode)))){\nreturn (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(right.key,right.val,right.left.right,right.right.redden()),null));\n} else {\nthrow (new Error(\x22red-black tree invariant violation\x22));\n\n}\n}\n}\n});\ncljs.core.balance_right_del \x3d (function cljs$core$balance_right_del(key,val,left,del){\nif((del instanceof cljs.core.RedNode)){\nreturn (new cljs.core.RedNode(key,val,left,del.blacken(),null));\n} else {\nif((left instanceof cljs.core.BlackNode)){\nreturn cljs.core.balance_left(key,val,left.redden(),del);\n} else {\nif((((left instanceof cljs.core.RedNode)) \x26\x26 ((left.right instanceof cljs.core.BlackNode)))){\nreturn (new cljs.core.RedNode(left.right.key,left.right.val,cljs.core.balance_left(left.key,left.val,left.left.redden(),left.right.left),(new cljs.core.BlackNode(key,val,left.right.right,del,null)),null));\n} else {\nthrow (new Error(\x22red-black tree invariant violation\x22));\n\n}\n}\n}\n});\ncljs.core.tree_map_kv_reduce \x3d (function cljs$core$tree_map_kv_reduce(node,f,init){\nvar init__$1 \x3d (((!((node.left \x3d\x3d null))))?(function (){var G__39256 \x3d node.left;\nvar G__39257 \x3d f;\nvar G__39258 \x3d init;\nreturn (cljs.core.tree_map_kv_reduce.cljs$core$IFn$_invoke$arity$3 ? cljs.core.tree_map_kv_reduce.cljs$core$IFn$_invoke$arity$3(G__39256,G__39257,G__39258) : cljs.core.tree_map_kv_reduce.call(null,G__39256,G__39257,G__39258));\n})():init);\nif(cljs.core.reduced_QMARK_(init__$1)){\nreturn init__$1;\n} else {\nvar init__$2 \x3d (function (){var G__39259 \x3d init__$1;\nvar G__39260 \x3d node.key;\nvar G__39261 \x3d node.val;\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__39259,G__39260,G__39261) : f.call(null,G__39259,G__39260,G__39261));\n})();\nif(cljs.core.reduced_QMARK_(init__$2)){\nreturn init__$2;\n} else {\nif((!((node.right \x3d\x3d null)))){\nvar G__39262 \x3d node.right;\nvar G__39263 \x3d f;\nvar G__39264 \x3d init__$2;\nreturn (cljs.core.tree_map_kv_reduce.cljs$core$IFn$_invoke$arity$3 ? cljs.core.tree_map_kv_reduce.cljs$core$IFn$_invoke$arity$3(G__39262,G__39263,G__39264) : cljs.core.tree_map_kv_reduce.call(null,G__39262,G__39263,G__39264));\n} else {\nreturn init__$2;\n}\n}\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IVector}\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.IMapEntry}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.ILookup}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.BlackNode \x3d (function (key,val,left,right,__hash){\nthis.key \x3d key;\nthis.val \x3d val;\nthis.left \x3d left;\nthis.right \x3d right;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 166619935;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.BlackNode.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.BlackNode.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nvar G__39266 \x3d k;\nswitch (G__39266) {\ncase (0):\nreturn (new cljs.core.MapEntry((0),self__.key,null));\n\nbreak;\ncase (1):\nreturn (new cljs.core.MapEntry((1),self__.val,null));\n\nbreak;\ndefault:\nreturn null;\n\n}\n}));\n\n(cljs.core.BlackNode.prototype.lastIndexOf \x3d (function() {\nvar G__46544 \x3d null;\nvar G__46544__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__46544__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46544 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46544__1.call(this,x);\ncase 2:\nreturn G__46544__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46544.cljs$core$IFn$_invoke$arity$1 \x3d G__46544__1;\nG__46544.cljs$core$IFn$_invoke$arity$2 \x3d G__46544__2;\nreturn G__46544;\n})()\n);\n\n(cljs.core.BlackNode.prototype.indexOf \x3d (function() {\nvar G__46550 \x3d null;\nvar G__46550__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__46550__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46550 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46550__1.call(this,x);\ncase 2:\nreturn G__46550__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46550.cljs$core$IFn$_invoke$arity$1 \x3d G__46550__1;\nG__46550.cljs$core$IFn$_invoke$arity$2 \x3d G__46550__2;\nreturn G__46550;\n})()\n);\n\n(cljs.core.BlackNode.prototype.add_right \x3d (function (ins){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn ins.balance_right(node);\n}));\n\n(cljs.core.BlackNode.prototype.redden \x3d (function (){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.RedNode(self__.key,self__.val,self__.left,self__.right,null));\n}));\n\n(cljs.core.BlackNode.prototype.blacken \x3d (function (){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node;\n}));\n\n(cljs.core.BlackNode.prototype.add_left \x3d (function (ins){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn ins.balance_left(node);\n}));\n\n(cljs.core.BlackNode.prototype.replace \x3d (function (key__$1,val__$1,left__$1,right__$1){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.BlackNode(key__$1,val__$1,left__$1,right__$1,null));\n}));\n\n(cljs.core.BlackNode.prototype.balance_left \x3d (function (parent){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.BlackNode(parent.key,parent.val,node,parent.right,null));\n}));\n\n(cljs.core.BlackNode.prototype.balance_right \x3d (function (parent){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.BlackNode(parent.key,parent.val,parent.left,node,null));\n}));\n\n(cljs.core.BlackNode.prototype.remove_left \x3d (function (del){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn cljs.core.balance_left_del(self__.key,self__.val,del,self__.right);\n}));\n\n(cljs.core.BlackNode.prototype.kv_reduce \x3d (function (f,init){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn cljs.core.tree_map_kv_reduce(node,f,init);\n}));\n\n(cljs.core.BlackNode.prototype.remove_right \x3d (function (del){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn cljs.core.balance_right_del(self__.key,self__.val,self__.left,del);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn node__$1.cljs$core$IIndexed$_nth$arity$3(null,k,null);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (node,k,not_found){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn node__$1.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (node,n){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nif((n \x3d\x3d\x3d (0))){\nreturn self__.key;\n} else {\nif((n \x3d\x3d\x3d (1))){\nreturn self__.val;\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n\n}\n}\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (node,n,not_found){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nif((n \x3d\x3d\x3d (0))){\nreturn self__.key;\n} else {\nif((n \x3d\x3d\x3d (1))){\nreturn self__.val;\n} else {\nreturn not_found;\n\n}\n}\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IVector$_assoc_n$arity$3 \x3d (function (node,n,v){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn 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);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (2);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IMapEntry$_key$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.key;\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IMapEntry$_val$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key], null);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (new cljs.core.IndexedSeq([self__.val,self__.key],(0),null));\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (node,f){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2(node__$1,f);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (node,f,start){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$3(node__$1,f,start);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (node,k,v){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val], null),k,v);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (((k \x3d\x3d\x3d (0))) || ((k \x3d\x3d\x3d (1))));\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (new cljs.core.IndexedSeq([self__.key,self__.val],(0),null));\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (node,meta){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core._with_meta(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val], null),meta);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (node,o){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val,o], null);\n}));\n\n(cljs.core.BlackNode.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39267 \x3d (arguments.length - (1));\nswitch (G__39267) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.BlackNode.prototype.apply \x3d (function (self__,args39265){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39265)));\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node.cljs$core$IIndexed$_nth$arity$2(null,k);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.BlackNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22left\x22,\x22left\x22,1241415590,null),new cljs.core.Symbol(null,\x22right\x22,\x22right\x22,1187949694,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.BlackNode.cljs$lang$type \x3d true);\n\n(cljs.core.BlackNode.cljs$lang$ctorStr \x3d \x22cljs.core/BlackNode\x22);\n\n(cljs.core.BlackNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/BlackNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/BlackNode.\n */\ncljs.core.__GT_BlackNode \x3d (function cljs$core$__GT_BlackNode(key,val,left,right,__hash){\nreturn (new cljs.core.BlackNode(key,val,left,right,__hash));\n});\n\ngoog.object.set(cljs.core.BlackNode.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IVector}\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IStack}\n * @implements {cljs.core.IMapEntry}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.ILookup}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.RedNode \x3d (function (key,val,left,right,__hash){\nthis.key \x3d key;\nthis.val \x3d val;\nthis.left \x3d left;\nthis.right \x3d right;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 166619935;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.RedNode.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.RedNode.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nvar G__39269 \x3d k;\nswitch (G__39269) {\ncase (0):\nreturn (new cljs.core.MapEntry((0),self__.key,null));\n\nbreak;\ncase (1):\nreturn (new cljs.core.MapEntry((1),self__.val,null));\n\nbreak;\ndefault:\nreturn null;\n\n}\n}));\n\n(cljs.core.RedNode.prototype.lastIndexOf \x3d (function() {\nvar G__46618 \x3d null;\nvar G__46618__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__46618__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46618 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46618__1.call(this,x);\ncase 2:\nreturn G__46618__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46618.cljs$core$IFn$_invoke$arity$1 \x3d G__46618__1;\nG__46618.cljs$core$IFn$_invoke$arity$2 \x3d G__46618__2;\nreturn G__46618;\n})()\n);\n\n(cljs.core.RedNode.prototype.indexOf \x3d (function() {\nvar G__46625 \x3d null;\nvar G__46625__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__46625__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46625 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46625__1.call(this,x);\ncase 2:\nreturn G__46625__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46625.cljs$core$IFn$_invoke$arity$1 \x3d G__46625__1;\nG__46625.cljs$core$IFn$_invoke$arity$2 \x3d G__46625__2;\nreturn G__46625;\n})()\n);\n\n(cljs.core.RedNode.prototype.add_right \x3d (function (ins){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.RedNode(self__.key,self__.val,self__.left,ins,null));\n}));\n\n(cljs.core.RedNode.prototype.redden \x3d (function (){\nvar self__ \x3d this;\nvar node \x3d this;\nthrow (new Error(\x22red-black tree invariant violation\x22));\n}));\n\n(cljs.core.RedNode.prototype.blacken \x3d (function (){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.BlackNode(self__.key,self__.val,self__.left,self__.right,null));\n}));\n\n(cljs.core.RedNode.prototype.add_left \x3d (function (ins){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.RedNode(self__.key,self__.val,ins,self__.right,null));\n}));\n\n(cljs.core.RedNode.prototype.replace \x3d (function (key__$1,val__$1,left__$1,right__$1){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.RedNode(key__$1,val__$1,left__$1,right__$1,null));\n}));\n\n(cljs.core.RedNode.prototype.balance_left \x3d (function (parent){\nvar self__ \x3d this;\nvar node \x3d this;\nif((self__.left instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nif((self__.right instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nreturn (new cljs.core.BlackNode(parent.key,parent.val,node,parent.right,null));\n\n}\n}\n}));\n\n(cljs.core.RedNode.prototype.balance_right \x3d (function (parent){\nvar self__ \x3d this;\nvar node \x3d this;\nif((self__.right instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nif((self__.left instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nreturn (new cljs.core.BlackNode(parent.key,parent.val,parent.left,node,null));\n\n}\n}\n}));\n\n(cljs.core.RedNode.prototype.remove_left \x3d (function (del){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.RedNode(self__.key,self__.val,del,self__.right,null));\n}));\n\n(cljs.core.RedNode.prototype.kv_reduce \x3d (function (f,init){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn cljs.core.tree_map_kv_reduce(node,f,init);\n}));\n\n(cljs.core.RedNode.prototype.remove_right \x3d (function (del){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn (new cljs.core.RedNode(self__.key,self__.val,self__.left,del,null));\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn node__$1.cljs$core$IIndexed$_nth$arity$3(null,k,null);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (node,k,not_found){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn node__$1.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (node,n){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nif((n \x3d\x3d\x3d (0))){\nreturn self__.key;\n} else {\nif((n \x3d\x3d\x3d (1))){\nreturn self__.val;\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n\n}\n}\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (node,n,not_found){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nif((n \x3d\x3d\x3d (0))){\nreturn self__.key;\n} else {\nif((n \x3d\x3d\x3d (1))){\nreturn self__.val;\n} else {\nreturn not_found;\n\n}\n}\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IVector$_assoc_n$arity$3 \x3d (function (node,n,v){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn 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);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (2);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IMapEntry$_key$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.key;\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IMapEntry$_val$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IStack$_peek$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IStack$_pop$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key], null);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (new cljs.core.IndexedSeq([self__.val,self__.key],(0),null));\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (node,f){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2(node__$1,f);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (node,f,start){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$3(node__$1,f,start);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (node,k,v){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val], null),k,v);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (node,k){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (((k \x3d\x3d\x3d (0))) || ((k \x3d\x3d\x3d (1))));\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (node){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn (new cljs.core.IndexedSeq([self__.key,self__.val],(0),null));\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (node,meta){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn cljs.core._with_meta(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val], null),meta);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (node,o){\nvar self__ \x3d this;\nvar node__$1 \x3d this;\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [self__.key,self__.val,o], null);\n}));\n\n(cljs.core.RedNode.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39270 \x3d (arguments.length - (1));\nswitch (G__39270) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.RedNode.prototype.apply \x3d (function (self__,args39268){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39268)));\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node.cljs$core$IIndexed$_nth$arity$2(null,k);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar node \x3d this;\nreturn node.cljs$core$IIndexed$_nth$arity$3(null,k,not_found);\n}));\n\n(cljs.core.RedNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22left\x22,\x22left\x22,1241415590,null),new cljs.core.Symbol(null,\x22right\x22,\x22right\x22,1187949694,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.RedNode.cljs$lang$type \x3d true);\n\n(cljs.core.RedNode.cljs$lang$ctorStr \x3d \x22cljs.core/RedNode\x22);\n\n(cljs.core.RedNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/RedNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/RedNode.\n */\ncljs.core.__GT_RedNode \x3d (function cljs$core$__GT_RedNode(key,val,left,right,__hash){\nreturn (new cljs.core.RedNode(key,val,left,right,__hash));\n});\n\ngoog.object.set(cljs.core.RedNode.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.tree_map_add \x3d (function cljs$core$tree_map_add(comp,tree,k,v,found){\nif((tree \x3d\x3d null)){\nreturn (new cljs.core.RedNode(k,v,null,null,null));\n} else {\nvar c \x3d (function (){var G__39271 \x3d k;\nvar G__39272 \x3d tree.key;\nreturn (comp.cljs$core$IFn$_invoke$arity$2 ? comp.cljs$core$IFn$_invoke$arity$2(G__39271,G__39272) : comp.call(null,G__39271,G__39272));\n})();\nif((c \x3d\x3d\x3d (0))){\n(found[(0)] \x3d tree);\n\nreturn null;\n} else {\nif((c \x3c (0))){\nvar ins \x3d (function (){var G__39273 \x3d comp;\nvar G__39274 \x3d tree.left;\nvar G__39275 \x3d k;\nvar G__39276 \x3d v;\nvar G__39277 \x3d found;\nreturn (cljs.core.tree_map_add.cljs$core$IFn$_invoke$arity$5 ? cljs.core.tree_map_add.cljs$core$IFn$_invoke$arity$5(G__39273,G__39274,G__39275,G__39276,G__39277) : cljs.core.tree_map_add.call(null,G__39273,G__39274,G__39275,G__39276,G__39277));\n})();\nif((!((ins \x3d\x3d null)))){\nreturn tree.add_left(ins);\n} else {\nreturn null;\n}\n} else {\nvar ins \x3d (function (){var G__39278 \x3d comp;\nvar G__39279 \x3d tree.right;\nvar G__39280 \x3d k;\nvar G__39281 \x3d v;\nvar G__39282 \x3d found;\nreturn (cljs.core.tree_map_add.cljs$core$IFn$_invoke$arity$5 ? cljs.core.tree_map_add.cljs$core$IFn$_invoke$arity$5(G__39278,G__39279,G__39280,G__39281,G__39282) : cljs.core.tree_map_add.call(null,G__39278,G__39279,G__39280,G__39281,G__39282));\n})();\nif((!((ins \x3d\x3d null)))){\nreturn tree.add_right(ins);\n} else {\nreturn null;\n}\n\n}\n}\n}\n});\ncljs.core.tree_map_append \x3d (function cljs$core$tree_map_append(left,right){\nif((left \x3d\x3d null)){\nreturn right;\n} else {\nif((right \x3d\x3d null)){\nreturn left;\n} else {\nif((left instanceof cljs.core.RedNode)){\nif((right instanceof cljs.core.RedNode)){\nvar app \x3d (function (){var G__39283 \x3d left.right;\nvar G__39284 \x3d right.left;\nreturn (cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2 ? cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2(G__39283,G__39284) : cljs.core.tree_map_append.call(null,G__39283,G__39284));\n})();\nif((app instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nreturn (new cljs.core.RedNode(left.key,left.val,left.left,(new cljs.core.RedNode(right.key,right.val,app,right.right,null)),null));\n}\n} else {\nreturn (new cljs.core.RedNode(left.key,left.val,left.left,(function (){var G__39285 \x3d left.right;\nvar G__39286 \x3d right;\nreturn (cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2 ? cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2(G__39285,G__39286) : cljs.core.tree_map_append.call(null,G__39285,G__39286));\n})(),null));\n}\n} else {\nif((right instanceof cljs.core.RedNode)){\nreturn (new cljs.core.RedNode(right.key,right.val,(function (){var G__39287 \x3d left;\nvar G__39288 \x3d right.left;\nreturn (cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2 ? cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2(G__39287,G__39288) : cljs.core.tree_map_append.call(null,G__39287,G__39288));\n})(),right.right,null));\n} else {\nvar app \x3d (function (){var G__39289 \x3d left.right;\nvar G__39290 \x3d right.left;\nreturn (cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2 ? cljs.core.tree_map_append.cljs$core$IFn$_invoke$arity$2(G__39289,G__39290) : cljs.core.tree_map_append.call(null,G__39289,G__39290));\n})();\nif((app instanceof cljs.core.RedNode)){\nreturn (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));\n} else {\nreturn cljs.core.balance_left_del(left.key,left.val,left.left,(new cljs.core.BlackNode(right.key,right.val,app,right.right,null)));\n}\n\n}\n}\n}\n}\n});\ncljs.core.tree_map_remove \x3d (function cljs$core$tree_map_remove(comp,tree,k,found){\nif((!((tree \x3d\x3d null)))){\nvar c \x3d (function (){var G__39291 \x3d k;\nvar G__39292 \x3d tree.key;\nreturn (comp.cljs$core$IFn$_invoke$arity$2 ? comp.cljs$core$IFn$_invoke$arity$2(G__39291,G__39292) : comp.call(null,G__39291,G__39292));\n})();\nif((c \x3d\x3d\x3d (0))){\n(found[(0)] \x3d tree);\n\nreturn cljs.core.tree_map_append(tree.left,tree.right);\n} else {\nif((c \x3c (0))){\nvar del \x3d (function (){var G__39293 \x3d comp;\nvar G__39294 \x3d tree.left;\nvar G__39295 \x3d k;\nvar G__39296 \x3d found;\nreturn (cljs.core.tree_map_remove.cljs$core$IFn$_invoke$arity$4 ? cljs.core.tree_map_remove.cljs$core$IFn$_invoke$arity$4(G__39293,G__39294,G__39295,G__39296) : cljs.core.tree_map_remove.call(null,G__39293,G__39294,G__39295,G__39296));\n})();\nif((((!((del \x3d\x3d null)))) || ((!(((found[(0)]) \x3d\x3d null)))))){\nif((tree.left instanceof cljs.core.BlackNode)){\nreturn cljs.core.balance_left_del(tree.key,tree.val,del,tree.right);\n} else {\nreturn (new cljs.core.RedNode(tree.key,tree.val,del,tree.right,null));\n}\n} else {\nreturn null;\n}\n} else {\nvar del \x3d (function (){var G__39297 \x3d comp;\nvar G__39298 \x3d tree.right;\nvar G__39299 \x3d k;\nvar G__39300 \x3d found;\nreturn (cljs.core.tree_map_remove.cljs$core$IFn$_invoke$arity$4 ? cljs.core.tree_map_remove.cljs$core$IFn$_invoke$arity$4(G__39297,G__39298,G__39299,G__39300) : cljs.core.tree_map_remove.call(null,G__39297,G__39298,G__39299,G__39300));\n})();\nif((((!((del \x3d\x3d null)))) || ((!(((found[(0)]) \x3d\x3d null)))))){\nif((tree.right instanceof cljs.core.BlackNode)){\nreturn cljs.core.balance_right_del(tree.key,tree.val,tree.left,del);\n} else {\nreturn (new cljs.core.RedNode(tree.key,tree.val,tree.left,del,null));\n}\n} else {\nreturn null;\n}\n\n}\n}\n} else {\nreturn null;\n}\n});\ncljs.core.tree_map_replace \x3d (function cljs$core$tree_map_replace(comp,tree,k,v){\nvar tk \x3d tree.key;\nvar c \x3d (comp.cljs$core$IFn$_invoke$arity$2 ? comp.cljs$core$IFn$_invoke$arity$2(k,tk) : comp.call(null,k,tk));\nif((c \x3d\x3d\x3d (0))){\nreturn tree.replace(tk,v,tree.left,tree.right);\n} else {\nif((c \x3c (0))){\nreturn tree.replace(tk,tree.val,(function (){var G__39301 \x3d comp;\nvar G__39302 \x3d tree.left;\nvar G__39303 \x3d k;\nvar G__39304 \x3d v;\nreturn (cljs.core.tree_map_replace.cljs$core$IFn$_invoke$arity$4 ? cljs.core.tree_map_replace.cljs$core$IFn$_invoke$arity$4(G__39301,G__39302,G__39303,G__39304) : cljs.core.tree_map_replace.call(null,G__39301,G__39302,G__39303,G__39304));\n})(),tree.right);\n} else {\nreturn tree.replace(tk,tree.val,tree.left,(function (){var G__39305 \x3d comp;\nvar G__39306 \x3d tree.right;\nvar G__39307 \x3d k;\nvar G__39308 \x3d v;\nreturn (cljs.core.tree_map_replace.cljs$core$IFn$_invoke$arity$4 ? cljs.core.tree_map_replace.cljs$core$IFn$_invoke$arity$4(G__39305,G__39306,G__39307,G__39308) : cljs.core.tree_map_replace.call(null,G__39305,G__39306,G__39307,G__39308));\n})());\n\n}\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IFind}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISorted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.PersistentTreeMap \x3d (function (comp,tree,cnt,meta,__hash){\nthis.comp \x3d comp;\nthis.tree \x3d tree;\nthis.cnt \x3d cnt;\nthis.meta \x3d meta;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 418776847;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 8192;\n});\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IFind$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IFind$_find$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.entry_at(k);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.forEach \x3d (function (f){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar seq__39310 \x3d cljs.core.seq(coll);\nvar chunk__39311 \x3d null;\nvar count__39312 \x3d (0);\nvar i__39313 \x3d (0);\nwhile(true){\nif((i__39313 \x3c count__39312)){\nvar vec__39320 \x3d chunk__39311.cljs$core$IIndexed$_nth$arity$2(null,i__39313);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39320,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39320,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__46776 \x3d seq__39310;\nvar G__46777 \x3d chunk__39311;\nvar G__46778 \x3d count__39312;\nvar G__46779 \x3d (i__39313 + (1));\nseq__39310 \x3d G__46776;\nchunk__39311 \x3d G__46777;\ncount__39312 \x3d G__46778;\ni__39313 \x3d G__46779;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39310);\nif(temp__5753__auto__){\nvar seq__39310__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39310__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39310__$1);\nvar G__46784 \x3d cljs.core.chunk_rest(seq__39310__$1);\nvar G__46785 \x3d c__4591__auto__;\nvar G__46786 \x3d cljs.core.count(c__4591__auto__);\nvar G__46787 \x3d (0);\nseq__39310 \x3d G__46784;\nchunk__39311 \x3d G__46785;\ncount__39312 \x3d G__46786;\ni__39313 \x3d G__46787;\ncontinue;\n} else {\nvar vec__39323 \x3d cljs.core.first(seq__39310__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39323,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39323,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__46790 \x3d cljs.core.next(seq__39310__$1);\nvar G__46791 \x3d null;\nvar G__46792 \x3d (0);\nvar G__46793 \x3d (0);\nseq__39310 \x3d G__46790;\nchunk__39311 \x3d G__46791;\ncount__39312 \x3d G__46792;\ni__39313 \x3d G__46793;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.get \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.entries \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_entries_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.keys \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator((cljs.core.keys.cljs$core$IFn$_invoke$arity$1 ? cljs.core.keys.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.keys.call(null,coll)));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.values \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator((cljs.core.vals.cljs$core$IFn$_invoke$arity$1 ? cljs.core.vals.cljs$core$IFn$_invoke$arity$1(coll) : cljs.core.vals.call(null,coll)));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.entry_at \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar t \x3d self__.tree;\nwhile(true){\nif((!((t \x3d\x3d null)))){\nvar c \x3d (function (){var G__39326 \x3d k;\nvar G__39327 \x3d t.key;\nreturn (self__.comp.cljs$core$IFn$_invoke$arity$2 ? self__.comp.cljs$core$IFn$_invoke$arity$2(G__39326,G__39327) : self__.comp.call(null,G__39326,G__39327));\n})();\nif((c \x3d\x3d\x3d (0))){\nreturn t;\n} else {\nif((c \x3c (0))){\nvar G__46808 \x3d t.left;\nt \x3d G__46808;\ncontinue;\n} else {\nvar G__46809 \x3d t.right;\nt \x3d G__46809;\ncontinue;\n\n}\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.has \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.contains_QMARK_(coll,k);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,k,null);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,k,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar n \x3d coll__$1.entry_at(k);\nif((!((n \x3d\x3d null)))){\nreturn n.val;\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (coll,f,init){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((!((self__.tree \x3d\x3d null)))){\nreturn cljs.core.unreduced(cljs.core.tree_map_kv_reduce(self__.tree,f,init));\n} else {\nreturn init;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.PersistentTreeMap(self__.comp,self__.tree,self__.cnt,self__.meta,self__.__hash));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.cnt;\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nreturn cljs.core.create_tree_map_seq(self__.tree,false,self__.cnt);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_unordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_map(coll__$1,other);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentTreeMap(self__.comp,null,(0),self__.meta,(0)));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar found \x3d [null];\nvar t \x3d cljs.core.tree_map_remove(self__.comp,self__.tree,k,found);\nif((t \x3d\x3d null)){\nif((cljs.core.nth.cljs$core$IFn$_invoke$arity$2(found,(0)) \x3d\x3d null)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentTreeMap(self__.comp,null,(0),self__.meta,null));\n}\n} else {\nreturn (new cljs.core.PersistentTreeMap(self__.comp,t.blacken(),(self__.cnt - (1)),self__.meta,null));\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (coll,k,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar found \x3d [null];\nvar t \x3d cljs.core.tree_map_add(self__.comp,self__.tree,k,v,found);\nif((t \x3d\x3d null)){\nvar found_node \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(found,(0));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(v,found_node.val)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentTreeMap(self__.comp,cljs.core.tree_map_replace(self__.comp,self__.tree,k,v),self__.cnt,self__.meta,null));\n}\n} else {\nreturn (new cljs.core.PersistentTreeMap(self__.comp,t.blacken(),(self__.cnt + (1)),self__.meta,null));\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IAssociative$_contains_key_QMARK_$arity$2 \x3d (function (coll,k){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (!((coll__$1.entry_at(k) \x3d\x3d null)));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nreturn cljs.core.create_tree_map_seq(self__.tree,true,self__.cnt);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentTreeMap(self__.comp,self__.tree,self__.cnt,new_meta,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,entry){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry)){\nreturn coll__$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry,(0)),cljs.core._nth(entry,(1)));\n} else {\nvar ret \x3d coll__$1;\nvar es \x3d cljs.core.seq(entry);\nwhile(true){\nif((es \x3d\x3d null)){\nreturn ret;\n} else {\nvar e \x3d cljs.core.first(es);\nif(cljs.core.vector_QMARK_(e)){\nvar G__46861 \x3d cljs.core._assoc(ret,cljs.core._nth(e,(0)),cljs.core._nth(e,(1)));\nvar G__46862 \x3d cljs.core.next(es);\nret \x3d G__46861;\nes \x3d G__46862;\ncontinue;\n} else {\nthrow (new Error(\x22conj on a map takes map entries or seqables of map entries\x22));\n}\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39328 \x3d (arguments.length - (1));\nswitch (G__39328) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.apply \x3d (function (self__,args39309){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39309)));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_sorted_seq$arity$2 \x3d (function (coll,ascending_QMARK_){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nreturn cljs.core.create_tree_map_seq(self__.tree,ascending_QMARK_,self__.cnt);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_sorted_seq_from$arity$3 \x3d (function (coll,k,ascending_QMARK_){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.cnt \x3e (0))){\nvar stack \x3d null;\nvar t \x3d self__.tree;\nwhile(true){\nif((!((t \x3d\x3d null)))){\nvar c \x3d (function (){var G__39331 \x3d k;\nvar G__39332 \x3d t.key;\nreturn (self__.comp.cljs$core$IFn$_invoke$arity$2 ? self__.comp.cljs$core$IFn$_invoke$arity$2(G__39331,G__39332) : self__.comp.call(null,G__39331,G__39332));\n})();\nif((c \x3d\x3d\x3d (0))){\nreturn (new cljs.core.PersistentTreeMapSeq(null,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(stack,t),ascending_QMARK_,(-1),null));\n} else {\nif(cljs.core.truth_(ascending_QMARK_)){\nif((c \x3c (0))){\nvar G__46875 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(stack,t);\nvar G__46876 \x3d t.left;\nstack \x3d G__46875;\nt \x3d G__46876;\ncontinue;\n} else {\nvar G__46878 \x3d stack;\nvar G__46879 \x3d t.right;\nstack \x3d G__46878;\nt \x3d G__46879;\ncontinue;\n}\n} else {\nif((c \x3e (0))){\nvar G__46881 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(stack,t);\nvar G__46882 \x3d t.right;\nstack \x3d G__46881;\nt \x3d G__46882;\ncontinue;\n} else {\nvar G__46884 \x3d stack;\nvar G__46885 \x3d t.left;\nstack \x3d G__46884;\nt \x3d G__46885;\ncontinue;\n}\n\n}\n}\n} else {\nif((stack \x3d\x3d null)){\nreturn null;\n} else {\nreturn (new cljs.core.PersistentTreeMapSeq(null,stack,ascending_QMARK_,(-1),null));\n}\n}\nbreak;\n}\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_entry_key$arity$2 \x3d (function (coll,entry){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (cljs.core.key.cljs$core$IFn$_invoke$arity$1 ? cljs.core.key.cljs$core$IFn$_invoke$arity$1(entry) : cljs.core.key.call(null,entry));\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$ISorted$_comparator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.comp;\n}));\n\n(cljs.core.PersistentTreeMap.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22tree\x22,\x22tree\x22,1444219499,null),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentTreeMap.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentTreeMap.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentTreeMap\x22);\n\n(cljs.core.PersistentTreeMap.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentTreeMap\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentTreeMap.\n */\ncljs.core.__GT_PersistentTreeMap \x3d (function cljs$core$__GT_PersistentTreeMap(comp,tree,cnt,meta,__hash){\nreturn (new cljs.core.PersistentTreeMap(comp,tree,cnt,meta,__hash));\n});\n\n(cljs.core.PersistentTreeMap.EMPTY \x3d (new cljs.core.PersistentTreeMap(cljs.core.compare,null,(0),null,cljs.core.empty_unordered_hash)));\ngoog.object.set(cljs.core.PersistentTreeMap.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * keyval \x3d\x3e key val\n *   Returns a new hash map with supplied mappings.\n */\ncljs.core.hash_map \x3d (function cljs$core$hash_map(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46896 \x3d arguments.length;\nvar i__4772__auto___46897 \x3d (0);\nwhile(true){\nif((i__4772__auto___46897 \x3c len__4771__auto___46896)){\nargs__4777__auto__.push((arguments[i__4772__auto___46897]));\n\nvar G__46899 \x3d (i__4772__auto___46897 + (1));\ni__4772__auto___46897 \x3d G__46899;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.hash_map.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.hash_map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keyvals){\nvar in$ \x3d cljs.core.seq(keyvals);\nvar out \x3d cljs.core.transient$(cljs.core.PersistentHashMap.EMPTY);\nwhile(true){\nif(in$){\nvar G__46902 \x3d cljs.core.nnext(in$);\nvar G__46903 \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(out,cljs.core.first(in$),cljs.core.second(in$));\nin$ \x3d G__46902;\nout \x3d G__46903;\ncontinue;\n} else {\nreturn cljs.core.persistent_BANG_(out);\n}\nbreak;\n}\n}));\n\n(cljs.core.hash_map.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.hash_map.cljs$lang$applyTo \x3d (function (seq39333){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39333));\n}));\n\n/**\n * keyval \x3d\x3e key val\n *   Returns a new array map with supplied mappings.\n */\ncljs.core.array_map \x3d (function cljs$core$array_map(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46909 \x3d arguments.length;\nvar i__4772__auto___46910 \x3d (0);\nwhile(true){\nif((i__4772__auto___46910 \x3c len__4771__auto___46909)){\nargs__4777__auto__.push((arguments[i__4772__auto___46910]));\n\nvar G__46911 \x3d (i__4772__auto___46910 + (1));\ni__4772__auto___46910 \x3d G__46911;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.array_map.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.array_map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keyvals){\nvar arr \x3d (((((keyvals instanceof cljs.core.IndexedSeq)) \x26\x26 ((keyvals.i \x3d\x3d\x3d (0)))))?keyvals.arr:cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(keyvals));\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc(arr);\n}));\n\n(cljs.core.array_map.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.array_map.cljs$lang$applyTo \x3d (function (seq39334){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39334));\n}));\n\n/**\n * keyval \x3d\x3e key val\n *   Returns a new object map with supplied mappings.\n */\ncljs.core.obj_map \x3d (function cljs$core$obj_map(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46921 \x3d arguments.length;\nvar i__4772__auto___46922 \x3d (0);\nwhile(true){\nif((i__4772__auto___46922 \x3c len__4771__auto___46921)){\nargs__4777__auto__.push((arguments[i__4772__auto___46922]));\n\nvar G__46929 \x3d (i__4772__auto___46922 + (1));\ni__4772__auto___46922 \x3d G__46929;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.obj_map.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.obj_map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keyvals){\nvar ks \x3d [];\nvar obj \x3d ({});\nvar kvs \x3d cljs.core.seq(keyvals);\nwhile(true){\nif(kvs){\nks.push(cljs.core.first(kvs));\n\ngoog.object.set(obj,cljs.core.first(kvs),cljs.core.second(kvs));\n\nvar G__46936 \x3d cljs.core.nnext(kvs);\nkvs \x3d G__46936;\ncontinue;\n} else {\nreturn cljs.core.ObjMap.fromObject(ks,obj);\n}\nbreak;\n}\n}));\n\n(cljs.core.obj_map.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.obj_map.cljs$lang$applyTo \x3d (function (seq39335){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39335));\n}));\n\n/**\n * keyval \x3d\x3e key val\n *   Returns a new sorted map with supplied mappings.\n */\ncljs.core.sorted_map \x3d (function cljs$core$sorted_map(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46944 \x3d arguments.length;\nvar i__4772__auto___46945 \x3d (0);\nwhile(true){\nif((i__4772__auto___46945 \x3c len__4771__auto___46944)){\nargs__4777__auto__.push((arguments[i__4772__auto___46945]));\n\nvar G__46950 \x3d (i__4772__auto___46945 + (1));\ni__4772__auto___46945 \x3d G__46950;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.sorted_map.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.sorted_map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keyvals){\nvar in$ \x3d cljs.core.seq(keyvals);\nvar out \x3d cljs.core.PersistentTreeMap.EMPTY;\nwhile(true){\nif(in$){\nvar G__46956 \x3d cljs.core.nnext(in$);\nvar G__46957 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(out,cljs.core.first(in$),cljs.core.second(in$));\nin$ \x3d G__46956;\nout \x3d G__46957;\ncontinue;\n} else {\nreturn out;\n}\nbreak;\n}\n}));\n\n(cljs.core.sorted_map.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.sorted_map.cljs$lang$applyTo \x3d (function (seq39338){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39338));\n}));\n\n/**\n * keyval \x3d\x3e key val\n *   Returns a new sorted map with supplied mappings, using the supplied comparator.\n */\ncljs.core.sorted_map_by \x3d (function cljs$core$sorted_map_by(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46964 \x3d arguments.length;\nvar i__4772__auto___46965 \x3d (0);\nwhile(true){\nif((i__4772__auto___46965 \x3c len__4771__auto___46964)){\nargs__4777__auto__.push((arguments[i__4772__auto___46965]));\n\nvar G__46967 \x3d (i__4772__auto___46965 + (1));\ni__4772__auto___46965 \x3d G__46967;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.sorted_map_by.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.sorted_map_by.cljs$core$IFn$_invoke$arity$variadic \x3d (function (comparator,keyvals){\nvar in$ \x3d cljs.core.seq(keyvals);\nvar out \x3d (new cljs.core.PersistentTreeMap(cljs.core.fn__GT_comparator(comparator),null,(0),null,(0)));\nwhile(true){\nif(in$){\nvar G__46979 \x3d cljs.core.nnext(in$);\nvar G__46980 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(out,cljs.core.first(in$),cljs.core.second(in$));\nin$ \x3d G__46979;\nout \x3d G__46980;\ncontinue;\n} else {\nreturn out;\n}\nbreak;\n}\n}));\n\n(cljs.core.sorted_map_by.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.sorted_map_by.cljs$lang$applyTo \x3d (function (seq39339){\nvar G__39340 \x3d cljs.core.first(seq39339);\nvar seq39339__$1 \x3d cljs.core.next(seq39339);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39340,seq39339__$1);\n}));\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.KeySeq \x3d (function (mseq,_meta){\nthis.mseq \x3d mseq;\nthis._meta \x3d _meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.KeySeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.KeySeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.KeySeq.prototype.indexOf \x3d (function() {\nvar G__46990 \x3d null;\nvar G__46990__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__46990__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46990 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46990__1.call(this,x);\ncase 2:\nreturn G__46990__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46990.cljs$core$IFn$_invoke$arity$1 \x3d G__46990__1;\nG__46990.cljs$core$IFn$_invoke$arity$2 \x3d G__46990__2;\nreturn G__46990;\n})()\n);\n\n(cljs.core.KeySeq.prototype.lastIndexOf \x3d (function() {\nvar G__46994 \x3d null;\nvar G__46994__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__46994__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__46994 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__46994__1.call(this,x);\ncase 2:\nreturn G__46994__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46994.cljs$core$IFn$_invoke$arity$1 \x3d G__46994__1;\nG__46994.cljs$core$IFn$_invoke$arity$2 \x3d G__46994__2;\nreturn G__46994;\n})()\n);\n\n(cljs.core.KeySeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__._meta;\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar nseq \x3d (((((!((self__.mseq \x3d\x3d null))))?(((((self__.mseq.cljs$lang$protocol_mask$partition0$ \x26 (128))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.mseq.cljs$core$INext$))))?true:(((!self__.mseq.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq):false)):cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq)))?self__.mseq.cljs$core$INext$_next$arity$1(null):cljs.core.next(self__.mseq));\nif((nseq \x3d\x3d null)){\nreturn null;\n} else {\nreturn (new cljs.core.KeySeq(nseq,null));\n}\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.hash_ordered_coll(coll__$1);\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar me \x3d self__.mseq.cljs$core$ISeq$_first$arity$1(null);\nreturn me.cljs$core$IMapEntry$_key$arity$1(null);\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar nseq \x3d (((((!((self__.mseq \x3d\x3d null))))?(((((self__.mseq.cljs$lang$protocol_mask$partition0$ \x26 (128))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.mseq.cljs$core$INext$))))?true:(((!self__.mseq.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq):false)):cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq)))?self__.mseq.cljs$core$INext$_next$arity$1(null):cljs.core.next(self__.mseq));\nif((!((nseq \x3d\x3d null)))){\nreturn (new cljs.core.KeySeq(nseq,null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__._meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.KeySeq(self__.mseq,new_meta));\n}\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.KeySeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22mseq\x22,\x22mseq\x22,1602647196,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),new cljs.core.Symbol(null,\x22_meta\x22,\x22_meta\x22,-1716892533,null)], null);\n}));\n\n(cljs.core.KeySeq.cljs$lang$type \x3d true);\n\n(cljs.core.KeySeq.cljs$lang$ctorStr \x3d \x22cljs.core/KeySeq\x22);\n\n(cljs.core.KeySeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/KeySeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/KeySeq.\n */\ncljs.core.__GT_KeySeq \x3d (function cljs$core$__GT_KeySeq(mseq,_meta){\nreturn (new cljs.core.KeySeq(mseq,_meta));\n});\n\ngoog.object.set(cljs.core.KeySeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Returns a sequence of the map\x27s keys, in the same order as (seq map).\n */\ncljs.core.keys \x3d (function cljs$core$keys(map){\nvar temp__5753__auto__ \x3d cljs.core.seq(map);\nif(temp__5753__auto__){\nvar mseq \x3d temp__5753__auto__;\nreturn (new cljs.core.KeySeq(mseq,null));\n} else {\nreturn null;\n}\n});\n/**\n * Returns the key of the map entry.\n */\ncljs.core.key \x3d (function cljs$core$key(map_entry){\nreturn cljs.core._key(map_entry);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.ValSeq \x3d (function (mseq,_meta){\nthis.mseq \x3d mseq;\nthis._meta \x3d _meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.ValSeq.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.ValSeq.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.ValSeq.prototype.indexOf \x3d (function() {\nvar G__47069 \x3d null;\nvar G__47069__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__47069__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__47069 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__47069__1.call(this,x);\ncase 2:\nreturn G__47069__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47069.cljs$core$IFn$_invoke$arity$1 \x3d G__47069__1;\nG__47069.cljs$core$IFn$_invoke$arity$2 \x3d G__47069__2;\nreturn G__47069;\n})()\n);\n\n(cljs.core.ValSeq.prototype.lastIndexOf \x3d (function() {\nvar G__47078 \x3d null;\nvar G__47078__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__47078__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start);\n});\nG__47078 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__47078__1.call(this,x);\ncase 2:\nreturn G__47078__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47078.cljs$core$IFn$_invoke$arity$1 \x3d G__47078__1;\nG__47078.cljs$core$IFn$_invoke$arity$2 \x3d G__47078__2;\nreturn G__47078;\n})()\n);\n\n(cljs.core.ValSeq.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__._meta;\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$INext$_next$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar nseq \x3d (((((!((self__.mseq \x3d\x3d null))))?(((((self__.mseq.cljs$lang$protocol_mask$partition0$ \x26 (128))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.mseq.cljs$core$INext$))))?true:(((!self__.mseq.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq):false)):cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq)))?self__.mseq.cljs$core$INext$_next$arity$1(null):cljs.core.next(self__.mseq));\nif((nseq \x3d\x3d null)){\nreturn null;\n} else {\nreturn (new cljs.core.ValSeq(nseq,null));\n}\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.hash_ordered_coll(coll__$1);\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.equiv_sequential(coll__$1,other);\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (coll,f){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,coll__$1);\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (coll,f,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$3(f,start,coll__$1);\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar me \x3d self__.mseq.cljs$core$ISeq$_first$arity$1(null);\nreturn me.cljs$core$IMapEntry$_val$arity$1(null);\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar nseq \x3d (((((!((self__.mseq \x3d\x3d null))))?(((((self__.mseq.cljs$lang$protocol_mask$partition0$ \x26 (128))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d self__.mseq.cljs$core$INext$))))?true:(((!self__.mseq.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq):false)):cljs.core.native_satisfies_QMARK_(cljs.core.INext,self__.mseq)))?self__.mseq.cljs$core$INext$_next$arity$1(null):cljs.core.next(self__.mseq));\nif((!((nseq \x3d\x3d null)))){\nreturn (new cljs.core.ValSeq(nseq,null));\n} else {\nreturn cljs.core.List.EMPTY;\n}\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1;\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__._meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.ValSeq(self__.mseq,new_meta));\n}\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.cons(o,coll__$1);\n}));\n\n(cljs.core.ValSeq.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22mseq\x22,\x22mseq\x22,1602647196,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),new cljs.core.Symbol(null,\x22_meta\x22,\x22_meta\x22,-1716892533,null)], null);\n}));\n\n(cljs.core.ValSeq.cljs$lang$type \x3d true);\n\n(cljs.core.ValSeq.cljs$lang$ctorStr \x3d \x22cljs.core/ValSeq\x22);\n\n(cljs.core.ValSeq.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ValSeq\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ValSeq.\n */\ncljs.core.__GT_ValSeq \x3d (function cljs$core$__GT_ValSeq(mseq,_meta){\nreturn (new cljs.core.ValSeq(mseq,_meta));\n});\n\ngoog.object.set(cljs.core.ValSeq.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Returns a sequence of the map\x27s values, in the same order as (seq map).\n */\ncljs.core.vals \x3d (function cljs$core$vals(map){\nvar temp__5753__auto__ \x3d cljs.core.seq(map);\nif(temp__5753__auto__){\nvar mseq \x3d temp__5753__auto__;\nreturn (new cljs.core.ValSeq(mseq,null));\n} else {\nreturn null;\n}\n});\n/**\n * Returns the value in the map entry.\n */\ncljs.core.val \x3d (function cljs$core$val(map_entry){\nreturn cljs.core._val(map_entry);\n});\n/**\n * Returns a map that consists of the rest of the maps conj-ed onto\n *   the first.  If a key occurs in more than one map, the mapping from\n *   the latter (left-to-right) will be the mapping in the result.\n */\ncljs.core.merge \x3d (function cljs$core$merge(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___47132 \x3d arguments.length;\nvar i__4772__auto___47133 \x3d (0);\nwhile(true){\nif((i__4772__auto___47133 \x3c len__4771__auto___47132)){\nargs__4777__auto__.push((arguments[i__4772__auto___47133]));\n\nvar G__47136 \x3d (i__4772__auto___47133 + (1));\ni__4772__auto___47133 \x3d G__47136;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic \x3d (function (maps){\nif(cljs.core.truth_(cljs.core.some(cljs.core.identity,maps))){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$2((function (p1__39345_SHARP_,p2__39346_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2((function (){var or__4160__auto__ \x3d p1__39345_SHARP_;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}\n})(),p2__39346_SHARP_);\n}),maps);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.merge.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.merge.cljs$lang$applyTo \x3d (function (seq39347){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39347));\n}));\n\n/**\n * Returns a map that consists of the rest of the maps conj-ed onto\n *   the first.  If a key occurs in more than one map, the mapping(s)\n *   from the latter (left-to-right) will be combined with the mapping in\n *   the result by calling (f val-in-result val-in-latter).\n */\ncljs.core.merge_with \x3d (function cljs$core$merge_with(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___47146 \x3d arguments.length;\nvar i__4772__auto___47148 \x3d (0);\nwhile(true){\nif((i__4772__auto___47148 \x3c len__4771__auto___47146)){\nargs__4777__auto__.push((arguments[i__4772__auto___47148]));\n\nvar G__47156 \x3d (i__4772__auto___47148 + (1));\ni__4772__auto___47148 \x3d G__47156;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,maps){\nif(cljs.core.truth_(cljs.core.some(cljs.core.identity,maps))){\nvar merge_entry \x3d (function (m,e){\nvar k \x3d cljs.core.key(e);\nvar v \x3d cljs.core.val(e);\nif(cljs.core.contains_QMARK_(m,k)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,(function (){var G__39350 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nvar G__39351 \x3d v;\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__39350,G__39351) : f.call(null,G__39350,G__39351));\n})());\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,v);\n}\n});\nvar merge2 \x3d (function (m1,m2){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(merge_entry,(function (){var or__4160__auto__ \x3d m1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}\n})(),cljs.core.seq(m2));\n});\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$2(merge2,maps);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.merge_with.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.merge_with.cljs$lang$applyTo \x3d (function (seq39348){\nvar G__39349 \x3d cljs.core.first(seq39348);\nvar seq39348__$1 \x3d cljs.core.next(seq39348);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39349,seq39348__$1);\n}));\n\n/**\n * Returns a map containing only those entries in map whose key is in keys\n */\ncljs.core.select_keys \x3d (function cljs$core$select_keys(map,keyseq){\nvar ret \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar keys \x3d cljs.core.seq(keyseq);\nwhile(true){\nif(keys){\nvar key \x3d cljs.core.first(keys);\nvar entry \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map,key,new cljs.core.Keyword(\x22cljs.core\x22,\x22not-found\x22,\x22cljs.core/not-found\x22,-1572889185));\nvar G__47202 \x3d ((cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(entry,new cljs.core.Keyword(\x22cljs.core\x22,\x22not-found\x22,\x22cljs.core/not-found\x22,-1572889185)))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,key,entry):ret);\nvar G__47203 \x3d cljs.core.next(keys);\nret \x3d G__47202;\nkeys \x3d G__47203;\ncontinue;\n} else {\nreturn cljs.core._with_meta(ret,cljs.core.meta(map));\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.HashSetIter \x3d (function (iter){\nthis.iter \x3d iter;\n});\n(cljs.core.HashSetIter.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.iter.hasNext();\n}));\n\n(cljs.core.HashSetIter.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif(self__.iter.hasNext()){\nreturn self__.iter.next().key;\n} else {\nthrow (new Error(\x22No such element\x22));\n}\n}));\n\n(cljs.core.HashSetIter.prototype.remove \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (new Error(\x22Unsupported operation\x22));\n}));\n\n(cljs.core.HashSetIter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iter\x22,\x22iter\x22,-1346195486,null)], null);\n}));\n\n(cljs.core.HashSetIter.cljs$lang$type \x3d true);\n\n(cljs.core.HashSetIter.cljs$lang$ctorStr \x3d \x22cljs.core/HashSetIter\x22);\n\n(cljs.core.HashSetIter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/HashSetIter\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/HashSetIter.\n */\ncljs.core.__GT_HashSetIter \x3d (function cljs$core$__GT_HashSetIter(iter){\nreturn (new cljs.core.HashSetIter(iter));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IEditableCollection}\n * @implements {cljs.core.ISet}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.PersistentHashSet \x3d (function (meta,hash_map,__hash){\nthis.meta \x3d meta;\nthis.hash_map \x3d hash_map;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 15077647;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139268;\n});\n(cljs.core.PersistentHashSet.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentHashSet.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentHashSet.prototype.keys \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentHashSet.prototype.entries \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_set_entries_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentHashSet.prototype.values \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentHashSet.prototype.has \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.contains_QMARK_(coll,k);\n}));\n\n(cljs.core.PersistentHashSet.prototype.forEach \x3d (function (f){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar seq__39355 \x3d cljs.core.seq(coll);\nvar chunk__39356 \x3d null;\nvar count__39357 \x3d (0);\nvar i__39358 \x3d (0);\nwhile(true){\nif((i__39358 \x3c count__39357)){\nvar vec__39365 \x3d chunk__39356.cljs$core$IIndexed$_nth$arity$2(null,i__39358);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39365,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39365,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__47276 \x3d seq__39355;\nvar G__47277 \x3d chunk__39356;\nvar G__47278 \x3d count__39357;\nvar G__47279 \x3d (i__39358 + (1));\nseq__39355 \x3d G__47276;\nchunk__39356 \x3d G__47277;\ncount__39357 \x3d G__47278;\ni__39358 \x3d G__47279;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39355);\nif(temp__5753__auto__){\nvar seq__39355__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39355__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39355__$1);\nvar G__47293 \x3d cljs.core.chunk_rest(seq__39355__$1);\nvar G__47294 \x3d c__4591__auto__;\nvar G__47295 \x3d cljs.core.count(c__4591__auto__);\nvar G__47296 \x3d (0);\nseq__39355 \x3d G__47293;\nchunk__39356 \x3d G__47294;\ncount__39357 \x3d G__47295;\ni__39358 \x3d G__47296;\ncontinue;\n} else {\nvar vec__39368 \x3d cljs.core.first(seq__39355__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39368,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39368,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__47300 \x3d cljs.core.next(seq__39355__$1);\nvar G__47301 \x3d null;\nvar G__47302 \x3d (0);\nvar G__47303 \x3d (0);\nseq__39355 \x3d G__47300;\nchunk__39356 \x3d G__47301;\ncount__39357 \x3d G__47302;\ni__39358 \x3d G__47303;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,v,null);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,v,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar temp__5751__auto__ \x3d cljs.core._find(self__.hash_map,v);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar entry \x3d temp__5751__auto__;\nreturn cljs.core.key(entry);\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.HashSetIter(cljs.core._iterator(self__.hash_map)));\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.PersistentHashSet(self__.meta,self__.hash_map,self__.__hash));\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._count(self__.hash_map);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_unordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.set_QMARK_(other)){\nif((cljs.core.count(coll__$1) \x3d\x3d\x3d cljs.core.count(other))){\ntry{return cljs.core.reduce_kv((function (p1__39353_SHARP_,p2__39352_SHARP_){\nvar or__4160__auto__ \x3d cljs.core.contains_QMARK_(other,p2__39352_SHARP_);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.reduced(false);\n}\n}),true,self__.hash_map);\n}catch (e39373){if((e39373 instanceof Error)){\nvar ex \x3d e39373;\nreturn false;\n} else {\nthrow e39373;\n\n}\n}} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IEditableCollection$_as_transient$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.TransientHashSet(cljs.core._as_transient(self__.hash_map)));\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._with_meta(cljs.core.PersistentHashSet.EMPTY,self__.meta);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ISet$_disjoin$arity$2 \x3d (function (coll,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentHashSet(self__.meta,cljs.core._dissoc(self__.hash_map,v),null));\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.keys(self__.hash_map);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentHashSet(new_meta,self__.hash_map,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentHashSet(self__.meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.hash_map,o,null),null));\n}));\n\n(cljs.core.PersistentHashSet.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39374 \x3d (arguments.length - (1));\nswitch (G__39374) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.PersistentHashSet.prototype.apply \x3d (function (self__,args39354){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39354)));\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentHashSet.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22hash-map\x22,\x22hash-map\x22,-439030950,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentHashSet.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentHashSet.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentHashSet\x22);\n\n(cljs.core.PersistentHashSet.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentHashSet\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentHashSet.\n */\ncljs.core.__GT_PersistentHashSet \x3d (function cljs$core$__GT_PersistentHashSet(meta,hash_map,__hash){\nreturn (new cljs.core.PersistentHashSet(meta,hash_map,__hash));\n});\n\n(cljs.core.PersistentHashSet.EMPTY \x3d (new cljs.core.PersistentHashSet(null,cljs.core.PersistentArrayMap.EMPTY,cljs.core.empty_unordered_hash)));\n(cljs.core.PersistentHashSet.fromArray \x3d (function (items,no_clone){\nvar len \x3d items.length;\nif((len \x3c\x3d cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD)){\nvar arr \x3d ((no_clone)?items:cljs.core.aclone(items));\nvar i \x3d (0);\nvar out \x3d cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY);\nwhile(true){\nif((i \x3c len)){\nvar G__47358 \x3d (i + (1));\nvar G__47359 \x3d cljs.core._assoc_BANG_(out,(items[i]),null);\ni \x3d G__47358;\nout \x3d G__47359;\ncontinue;\n} else {\nreturn (new cljs.core.PersistentHashSet(null,cljs.core._persistent_BANG_(out),null));\n}\nbreak;\n}\n} else {\nvar i \x3d (0);\nvar out \x3d cljs.core.transient$(cljs.core.PersistentHashSet.EMPTY);\nwhile(true){\nif((i \x3c len)){\nvar G__47364 \x3d (i + (1));\nvar G__47365 \x3d cljs.core._conj_BANG_(out,(items[i]));\ni \x3d G__47364;\nout \x3d G__47365;\ncontinue;\n} else {\nreturn cljs.core._persistent_BANG_(out);\n}\nbreak;\n}\n}\n}));\n(cljs.core.PersistentHashSet.createWithCheck \x3d (function (items){\nvar len \x3d items.length;\nvar t \x3d cljs.core._as_transient(cljs.core.PersistentHashSet.EMPTY);\nvar n__4648__auto___47372 \x3d len;\nvar i_47373 \x3d (0);\nwhile(true){\nif((i_47373 \x3c n__4648__auto___47372)){\ncljs.core._conj_BANG_(t,(items[i_47373]));\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(t),(i_47373 + (1)))){\n} else {\nthrow (new Error([\x22Duplicate key: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((items[i_47373]))].join(\x27\x27)));\n}\n\nvar G__47377 \x3d (i_47373 + (1));\ni_47373 \x3d G__47377;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core._persistent_BANG_(t);\n}));\n(cljs.core.PersistentHashSet.createAsIfByAssoc \x3d (function (items){\nvar len \x3d items.length;\nvar t \x3d cljs.core._as_transient(cljs.core.PersistentHashSet.EMPTY);\nvar n__4648__auto___47387 \x3d len;\nvar i_47388 \x3d (0);\nwhile(true){\nif((i_47388 \x3c n__4648__auto___47387)){\ncljs.core._conj_BANG_(t,(items[i_47388]));\n\nvar G__47391 \x3d (i_47388 + (1));\ni_47388 \x3d G__47391;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn cljs.core._persistent_BANG_(t);\n}));\ngoog.object.set(cljs.core.PersistentHashSet.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.ITransientSet}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ITransientCollection}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.TransientHashSet \x3d (function (transient_map){\nthis.transient_map \x3d transient_map;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 136;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 259;\n});\n(cljs.core.TransientHashSet.prototype.cljs$core$ITransientCollection$_conj_BANG_$arity$2 \x3d (function (tcoll,o){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\n(self__.transient_map \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(self__.transient_map,o,null));\n\nreturn tcoll__$1;\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$ITransientCollection$_persistent_BANG_$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn (new cljs.core.PersistentHashSet(null,cljs.core.persistent_BANG_(self__.transient_map),null));\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$ITransientSet$_disjoin_BANG_$arity$2 \x3d (function (tcoll,v){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\n(self__.transient_map \x3d cljs.core.dissoc_BANG_.cljs$core$IFn$_invoke$arity$2(self__.transient_map,v));\n\nreturn tcoll__$1;\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (tcoll){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn cljs.core.count(self__.transient_map);\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (tcoll,v){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nreturn tcoll__$1.cljs$core$ILookup$_lookup$arity$3(null,v,null);\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (tcoll,v,not_found){\nvar self__ \x3d this;\nvar tcoll__$1 \x3d this;\nif((cljs.core._lookup(self__.transient_map,v,cljs.core.lookup_sentinel) \x3d\x3d\x3d cljs.core.lookup_sentinel)){\nreturn not_found;\n} else {\nreturn v;\n}\n}));\n\n(cljs.core.TransientHashSet.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39376 \x3d (arguments.length - (1));\nswitch (G__39376) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.TransientHashSet.prototype.apply \x3d (function (self__,args39375){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39375)));\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nif((cljs.core._lookup(self__.transient_map,k,cljs.core.lookup_sentinel) \x3d\x3d\x3d cljs.core.lookup_sentinel)){\nreturn null;\n} else {\nreturn k;\n}\n}));\n\n(cljs.core.TransientHashSet.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar tcoll \x3d this;\nif((cljs.core._lookup(self__.transient_map,k,cljs.core.lookup_sentinel) \x3d\x3d\x3d cljs.core.lookup_sentinel)){\nreturn not_found;\n} else {\nreturn k;\n}\n}));\n\n(cljs.core.TransientHashSet.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22transient-map\x22,\x22transient-map\x22,351764893,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.TransientHashSet.cljs$lang$type \x3d true);\n\n(cljs.core.TransientHashSet.cljs$lang$ctorStr \x3d \x22cljs.core/TransientHashSet\x22);\n\n(cljs.core.TransientHashSet.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/TransientHashSet\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/TransientHashSet.\n */\ncljs.core.__GT_TransientHashSet \x3d (function cljs$core$__GT_TransientHashSet(transient_map){\nreturn (new cljs.core.TransientHashSet(transient_map));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IReversible}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ISet}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISorted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.PersistentTreeSet \x3d (function (meta,tree_map,__hash){\nthis.meta \x3d meta;\nthis.tree_map \x3d tree_map;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 417730831;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 8192;\n});\n(cljs.core.PersistentTreeSet.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.keys \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.entries \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_set_entries_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.values \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.es6_iterator(cljs.core.seq(coll));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.has \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.contains_QMARK_(coll,k);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.forEach \x3d (function (f){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar seq__39380 \x3d cljs.core.seq(coll);\nvar chunk__39381 \x3d null;\nvar count__39382 \x3d (0);\nvar i__39383 \x3d (0);\nwhile(true){\nif((i__39383 \x3c count__39382)){\nvar vec__39390 \x3d chunk__39381.cljs$core$IIndexed$_nth$arity$2(null,i__39383);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39390,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39390,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__47482 \x3d seq__39380;\nvar G__47483 \x3d chunk__39381;\nvar G__47484 \x3d count__39382;\nvar G__47485 \x3d (i__39383 + (1));\nseq__39380 \x3d G__47482;\nchunk__39381 \x3d G__47483;\ncount__39382 \x3d G__47484;\ni__39383 \x3d G__47485;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39380);\nif(temp__5753__auto__){\nvar seq__39380__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39380__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39380__$1);\nvar G__47493 \x3d cljs.core.chunk_rest(seq__39380__$1);\nvar G__47494 \x3d c__4591__auto__;\nvar G__47495 \x3d cljs.core.count(c__4591__auto__);\nvar G__47496 \x3d (0);\nseq__39380 \x3d G__47493;\nchunk__39381 \x3d G__47494;\ncount__39382 \x3d G__47495;\ni__39383 \x3d G__47496;\ncontinue;\n} else {\nvar vec__39393 \x3d cljs.core.first(seq__39380__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39393,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39393,(1),null);\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n\n\nvar G__47500 \x3d cljs.core.next(seq__39380__$1);\nvar G__47501 \x3d null;\nvar G__47502 \x3d (0);\nvar G__47503 \x3d (0);\nseq__39380 \x3d G__47500;\nchunk__39381 \x3d G__47501;\ncount__39382 \x3d G__47502;\ni__39383 \x3d G__47503;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (coll,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn coll__$1.cljs$core$ILookup$_lookup$arity$3(null,v,null);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (coll,v,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar n \x3d self__.tree_map.entry_at(v);\nif((!((n \x3d\x3d null)))){\nreturn n.key;\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.PersistentTreeSet(self__.meta,self__.tree_map,self__.__hash));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.count(self__.tree_map);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IReversible$_rseq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((cljs.core.count(self__.tree_map) \x3e (0))){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.key,cljs.core.rseq(self__.tree_map));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_unordered_coll(coll__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (coll,other){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif(cljs.core.set_QMARK_(other)){\nif((cljs.core.count(coll__$1) \x3d\x3d\x3d cljs.core.count(other))){\ntry{return cljs.core.reduce_kv((function (p1__39378_SHARP_,p2__39377_SHARP_){\nvar or__4160__auto__ \x3d cljs.core.contains_QMARK_(other,p2__39377_SHARP_);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.reduced(false);\n}\n}),true,self__.tree_map);\n}catch (e39398){if((e39398 instanceof Error)){\nvar ex \x3d e39398;\nreturn false;\n} else {\nthrow e39398;\n\n}\n}} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentTreeSet(self__.meta,cljs.core._empty(self__.tree_map),(0)));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ISet$_disjoin$arity$2 \x3d (function (coll,v){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentTreeSet(self__.meta,cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.tree_map,v),null));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.keys(self__.tree_map);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (coll,new_meta){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn coll__$1;\n} else {\nreturn (new cljs.core.PersistentTreeSet(new_meta,self__.tree_map,self__.__hash));\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (coll,o){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.PersistentTreeSet(self__.meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.tree_map,o,null),null));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39399 \x3d (arguments.length - (1));\nswitch (G__39399) {\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.PersistentTreeSet.prototype.apply \x3d (function (self__,args39379){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39379)));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$2(null,k);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,not_found){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn coll.cljs$core$ILookup$_lookup$arity$3(null,k,not_found);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_sorted_seq$arity$2 \x3d (function (coll,ascending_QMARK_){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.key,cljs.core._sorted_seq(self__.tree_map,ascending_QMARK_));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_sorted_seq_from$arity$3 \x3d (function (coll,k,ascending_QMARK_){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.key,cljs.core._sorted_seq_from(self__.tree_map,k,ascending_QMARK_));\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_entry_key$arity$2 \x3d (function (coll,entry){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn entry;\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$ISorted$_comparator$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._comparator(self__.tree_map);\n}));\n\n(cljs.core.PersistentTreeSet.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22tree-map\x22,\x22tree-map\x22,1373073049,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.PersistentTreeSet.cljs$lang$type \x3d true);\n\n(cljs.core.PersistentTreeSet.cljs$lang$ctorStr \x3d \x22cljs.core/PersistentTreeSet\x22);\n\n(cljs.core.PersistentTreeSet.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/PersistentTreeSet\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/PersistentTreeSet.\n */\ncljs.core.__GT_PersistentTreeSet \x3d (function cljs$core$__GT_PersistentTreeSet(meta,tree_map,__hash){\nreturn (new cljs.core.PersistentTreeSet(meta,tree_map,__hash));\n});\n\n(cljs.core.PersistentTreeSet.EMPTY \x3d (new cljs.core.PersistentTreeSet(null,cljs.core.PersistentTreeMap.EMPTY,cljs.core.empty_unordered_hash)));\ngoog.object.set(cljs.core.PersistentTreeSet.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\ncljs.core.set_from_indexed_seq \x3d (function cljs$core$set_from_indexed_seq(iseq){\nvar arr \x3d iseq.arr;\nvar ret \x3d (function (){var a__4645__auto__ \x3d arr;\nvar l__4646__auto__ \x3d a__4645__auto__.length;\nvar i \x3d (0);\nvar res \x3d cljs.core._as_transient(cljs.core.PersistentHashSet.EMPTY);\nwhile(true){\nif((i \x3c l__4646__auto__)){\nvar G__47593 \x3d (i + (1));\nvar G__47594 \x3d cljs.core._conj_BANG_(res,(arr[i]));\ni \x3d G__47593;\nres \x3d G__47594;\ncontinue;\n} else {\nreturn res;\n}\nbreak;\n}\n})();\nreturn ret.cljs$core$ITransientCollection$_persistent_BANG_$arity$1(null);\n});\n/**\n * Returns a set of the distinct elements of coll.\n */\ncljs.core.set \x3d (function cljs$core$set(coll){\nif(cljs.core.set_QMARK_(coll)){\nreturn cljs.core.with_meta(coll,null);\n} else {\nvar in$ \x3d cljs.core.seq(coll);\nif((in$ \x3d\x3d null)){\nreturn cljs.core.PersistentHashSet.EMPTY;\n} else {\nif((((in$ instanceof cljs.core.IndexedSeq)) \x26\x26 ((in$.i \x3d\x3d\x3d (0))))){\nreturn cljs.core.PersistentHashSet.createAsIfByAssoc(in$.arr);\n} else {\nvar in$__$1 \x3d in$;\nvar out \x3d cljs.core._as_transient(cljs.core.PersistentHashSet.EMPTY);\nwhile(true){\nif((!((in$__$1 \x3d\x3d null)))){\nvar G__47600 \x3d cljs.core.next(in$__$1);\nvar G__47601 \x3d cljs.core._conj_BANG_(out,cljs.core._first(in$__$1));\nin$__$1 \x3d G__47600;\nout \x3d G__47601;\ncontinue;\n} else {\nreturn cljs.core.persistent_BANG_(out);\n}\nbreak;\n}\n\n}\n}\n}\n});\n/**\n * Returns a new hash set with supplied keys.  Any equal keys are\n *   handled as if by repeated uses of conj.\n */\ncljs.core.hash_set \x3d (function cljs$core$hash_set(var_args){\nvar G__39402 \x3d arguments.length;\nswitch (G__39402) {\ncase 0:\nreturn cljs.core.hash_set.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___47607 \x3d arguments.length;\nvar i__4772__auto___47608 \x3d (0);\nwhile(true){\nif((i__4772__auto___47608 \x3c len__4771__auto___47607)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___47608]));\n\nvar G__47609 \x3d (i__4772__auto___47608 + (1));\ni__4772__auto___47608 \x3d G__47609;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((0)),(0),null));\nreturn cljs.core.hash_set.cljs$core$IFn$_invoke$arity$variadic(argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.hash_set.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.PersistentHashSet.EMPTY;\n}));\n\n(cljs.core.hash_set.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keys){\nreturn cljs.core.set(keys);\n}));\n\n/** @this {Function} */\n(cljs.core.hash_set.cljs$lang$applyTo \x3d (function (seq39401){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39401));\n}));\n\n(cljs.core.hash_set.cljs$lang$maxFixedArity \x3d (0));\n\n/**\n * Returns a new sorted set with supplied keys.\n */\ncljs.core.sorted_set \x3d (function cljs$core$sorted_set(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___47614 \x3d arguments.length;\nvar i__4772__auto___47615 \x3d (0);\nwhile(true){\nif((i__4772__auto___47615 \x3c len__4771__auto___47614)){\nargs__4777__auto__.push((arguments[i__4772__auto___47615]));\n\nvar G__47618 \x3d (i__4772__auto___47615 + (1));\ni__4772__auto___47615 \x3d G__47618;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.sorted_set.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.sorted_set.cljs$core$IFn$_invoke$arity$variadic \x3d (function (keys){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,cljs.core.PersistentTreeSet.EMPTY,keys);\n}));\n\n(cljs.core.sorted_set.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.sorted_set.cljs$lang$applyTo \x3d (function (seq39403){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39403));\n}));\n\n/**\n * Returns a new sorted set with supplied keys, using the supplied comparator.\n */\ncljs.core.sorted_set_by \x3d (function cljs$core$sorted_set_by(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___47625 \x3d arguments.length;\nvar i__4772__auto___47627 \x3d (0);\nwhile(true){\nif((i__4772__auto___47627 \x3c len__4771__auto___47625)){\nargs__4777__auto__.push((arguments[i__4772__auto___47627]));\n\nvar G__47629 \x3d (i__4772__auto___47627 + (1));\ni__4772__auto___47627 \x3d G__47629;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.sorted_set_by.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.sorted_set_by.cljs$core$IFn$_invoke$arity$variadic \x3d (function (comparator,keys){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,(new cljs.core.PersistentTreeSet(null,cljs.core.sorted_map_by(comparator),(0))),keys);\n}));\n\n(cljs.core.sorted_set_by.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.sorted_set_by.cljs$lang$applyTo \x3d (function (seq39404){\nvar G__39405 \x3d cljs.core.first(seq39404);\nvar seq39404__$1 \x3d cljs.core.next(seq39404);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39405,seq39404__$1);\n}));\n\n/**\n * Given a map of replacement pairs and a vector/collection, returns a\n *   vector/seq with any elements \x3d a key in smap replaced with the\n *   corresponding val in smap.  Returns a transducer when no collection\n *   is provided.\n */\ncljs.core.replace \x3d (function cljs$core$replace(var_args){\nvar G__39409 \x3d arguments.length;\nswitch (G__39409) {\ncase 1:\nreturn cljs.core.replace.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.replace.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.replace.cljs$core$IFn$_invoke$arity$1 \x3d (function (smap){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$1((function (p1__39406_SHARP_){\nvar temp__5751__auto__ \x3d cljs.core.find(smap,p1__39406_SHARP_);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar e \x3d temp__5751__auto__;\nreturn cljs.core.val(e);\n} else {\nreturn p1__39406_SHARP_;\n}\n}));\n}));\n\n(cljs.core.replace.cljs$core$IFn$_invoke$arity$2 \x3d (function (smap,coll){\nif(cljs.core.vector_QMARK_(coll)){\nvar n \x3d cljs.core.count(coll);\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (v,i){\nvar temp__5751__auto__ \x3d cljs.core.find(smap,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(v,i));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar e \x3d temp__5751__auto__;\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(v,i,cljs.core.second(e));\n} else {\nreturn v;\n}\n}),coll,cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,cljs.core.iterate(cljs.core.inc,(0))));\n} else {\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__39407_SHARP_){\nvar temp__5751__auto__ \x3d cljs.core.find(smap,p1__39407_SHARP_);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar e \x3d temp__5751__auto__;\nreturn cljs.core.second(e);\n} else {\nreturn p1__39407_SHARP_;\n}\n}),coll);\n}\n}));\n\n(cljs.core.replace.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a lazy sequence of the elements of coll with duplicates removed.\n *   Returns a stateful transducer when no collection is provided.\n */\ncljs.core.distinct \x3d (function cljs$core$distinct(var_args){\nvar G__39411 \x3d arguments.length;\nswitch (G__39411) {\ncase 0:\nreturn cljs.core.distinct.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.distinct.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.distinct.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (function (rf){\nvar seen \x3d cljs.core.volatile_BANG_(cljs.core.PersistentHashSet.EMPTY);\nreturn (function() {\nvar G__47666 \x3d null;\nvar G__47666__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__47666__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__47666__2 \x3d (function (result,input){\nif(cljs.core.contains_QMARK_(cljs.core.deref(seen),input)){\nreturn result;\n} else {\nseen.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(seen.cljs$core$IDeref$_deref$arity$1(null),input));\n\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n}\n});\nG__47666 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__47666__0.call(this);\ncase 1:\nreturn G__47666__1.call(this,result);\ncase 2:\nreturn G__47666__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47666.cljs$core$IFn$_invoke$arity$0 \x3d G__47666__0;\nG__47666.cljs$core$IFn$_invoke$arity$1 \x3d G__47666__1;\nG__47666.cljs$core$IFn$_invoke$arity$2 \x3d G__47666__2;\nreturn G__47666;\n})()\n});\n}));\n\n(cljs.core.distinct.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nvar step \x3d (function cljs$core$step(xs,seen){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn (function (p__39412,seen__$1){\nwhile(true){\nvar vec__39413 \x3d p__39412;\nvar f \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39413,(0),null);\nvar xs__$1 \x3d vec__39413;\nvar temp__5753__auto__ \x3d cljs.core.seq(xs__$1);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.contains_QMARK_(seen__$1,f)){\nvar G__47676 \x3d cljs.core.rest(s);\nvar G__47677 \x3d seen__$1;\np__39412 \x3d G__47676;\nseen__$1 \x3d G__47677;\ncontinue;\n} else {\nreturn cljs.core.cons(f,cljs$core$step(cljs.core.rest(s),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(seen__$1,f)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n})(xs,seen);\n}),null,null));\n});\nreturn step(coll,cljs.core.PersistentHashSet.EMPTY);\n}));\n\n(cljs.core.distinct.cljs$lang$maxFixedArity \x3d 1);\n\n/**\n * Return a seq of all but the last item in coll, in linear time\n */\ncljs.core.butlast \x3d (function cljs$core$butlast(s){\nvar ret \x3d cljs.core.PersistentVector.EMPTY;\nvar s__$1 \x3d s;\nwhile(true){\nif(cljs.core.next(s__$1)){\nvar G__47686 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,cljs.core.first(s__$1));\nvar G__47687 \x3d cljs.core.next(s__$1);\nret \x3d G__47686;\ns__$1 \x3d G__47687;\ncontinue;\n} else {\nreturn cljs.core.seq(ret);\n}\nbreak;\n}\n});\n/**\n * Returns the name String of a string, symbol or keyword.\n */\ncljs.core.name \x3d (function cljs$core$name(x){\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition1$ \x26 (4096))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$INamed$))))?true:false):false)){\nreturn x.cljs$core$INamed$_name$arity$1(null);\n} else {\nif(typeof x \x3d\x3d\x3d \x27string\x27){\nreturn x;\n} else {\nthrow (new Error([\x22Doesn\x27t support name: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x)].join(\x27\x27)));\n}\n}\n});\n/**\n * Returns a map with the keys mapped to the corresponding vals.\n */\ncljs.core.zipmap \x3d (function cljs$core$zipmap(keys,vals){\nvar map \x3d cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY);\nvar ks \x3d cljs.core.seq(keys);\nvar vs \x3d cljs.core.seq(vals);\nwhile(true){\nif(((ks) \x26\x26 (vs))){\nvar G__47692 \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(map,cljs.core.first(ks),cljs.core.first(vs));\nvar G__47693 \x3d cljs.core.next(ks);\nvar G__47694 \x3d cljs.core.next(vs);\nmap \x3d G__47692;\nks \x3d G__47693;\nvs \x3d G__47694;\ncontinue;\n} else {\nreturn cljs.core.persistent_BANG_(map);\n}\nbreak;\n}\n});\n/**\n * Returns the x for which (k x), a number, is greatest.\n * \n *   If there are multiple such xs, the last one is returned.\n */\ncljs.core.max_key \x3d (function cljs$core$max_key(var_args){\nvar G__39424 \x3d arguments.length;\nswitch (G__39424) {\ncase 2:\nreturn cljs.core.max_key.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.max_key.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___47702 \x3d arguments.length;\nvar i__4772__auto___47703 \x3d (0);\nwhile(true){\nif((i__4772__auto___47703 \x3c len__4771__auto___47702)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___47703]));\n\nvar G__47704 \x3d (i__4772__auto___47703 + (1));\ni__4772__auto___47703 \x3d G__47704;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.max_key.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.max_key.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,x){\nreturn x;\n}));\n\n(cljs.core.max_key.cljs$core$IFn$_invoke$arity$3 \x3d (function (k,x,y){\nif(((k.cljs$core$IFn$_invoke$arity$1 ? k.cljs$core$IFn$_invoke$arity$1(x) : k.call(null,x)) \x3e (k.cljs$core$IFn$_invoke$arity$1 ? k.cljs$core$IFn$_invoke$arity$1(y) : k.call(null,y)))){\nreturn x;\n} else {\nreturn y;\n}\n}));\n\n(cljs.core.max_key.cljs$core$IFn$_invoke$arity$variadic \x3d (function (k,x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39417_SHARP_,p2__39418_SHARP_){\nreturn cljs.core.max_key.cljs$core$IFn$_invoke$arity$3(k,p1__39417_SHARP_,p2__39418_SHARP_);\n}),cljs.core.max_key.cljs$core$IFn$_invoke$arity$3(k,x,y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.max_key.cljs$lang$applyTo \x3d (function (seq39420){\nvar G__39421 \x3d cljs.core.first(seq39420);\nvar seq39420__$1 \x3d cljs.core.next(seq39420);\nvar G__39422 \x3d cljs.core.first(seq39420__$1);\nvar seq39420__$2 \x3d cljs.core.next(seq39420__$1);\nvar G__39423 \x3d cljs.core.first(seq39420__$2);\nvar seq39420__$3 \x3d cljs.core.next(seq39420__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39421,G__39422,G__39423,seq39420__$3);\n}));\n\n(cljs.core.max_key.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * Returns the x for which (k x), a number, is least.\n * \n *   If there are multiple such xs, the last one is returned.\n */\ncljs.core.min_key \x3d (function cljs$core$min_key(var_args){\nvar G__39432 \x3d arguments.length;\nswitch (G__39432) {\ncase 2:\nreturn cljs.core.min_key.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.min_key.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___47728 \x3d arguments.length;\nvar i__4772__auto___47730 \x3d (0);\nwhile(true){\nif((i__4772__auto___47730 \x3c len__4771__auto___47728)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___47730]));\n\nvar G__47732 \x3d (i__4772__auto___47730 + (1));\ni__4772__auto___47730 \x3d G__47732;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.min_key.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.min_key.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,x){\nreturn x;\n}));\n\n(cljs.core.min_key.cljs$core$IFn$_invoke$arity$3 \x3d (function (k,x,y){\nif(((k.cljs$core$IFn$_invoke$arity$1 ? k.cljs$core$IFn$_invoke$arity$1(x) : k.call(null,x)) \x3c (k.cljs$core$IFn$_invoke$arity$1 ? k.cljs$core$IFn$_invoke$arity$1(y) : k.call(null,y)))){\nreturn x;\n} else {\nreturn y;\n}\n}));\n\n(cljs.core.min_key.cljs$core$IFn$_invoke$arity$variadic \x3d (function (k,x,y,more){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39425_SHARP_,p2__39426_SHARP_){\nreturn cljs.core.min_key.cljs$core$IFn$_invoke$arity$3(k,p1__39425_SHARP_,p2__39426_SHARP_);\n}),cljs.core.min_key.cljs$core$IFn$_invoke$arity$3(k,x,y),more);\n}));\n\n/** @this {Function} */\n(cljs.core.min_key.cljs$lang$applyTo \x3d (function (seq39428){\nvar G__39429 \x3d cljs.core.first(seq39428);\nvar seq39428__$1 \x3d cljs.core.next(seq39428);\nvar G__39430 \x3d cljs.core.first(seq39428__$1);\nvar seq39428__$2 \x3d cljs.core.next(seq39428__$1);\nvar G__39431 \x3d cljs.core.first(seq39428__$2);\nvar seq39428__$3 \x3d cljs.core.next(seq39428__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39429,G__39430,G__39431,seq39428__$3);\n}));\n\n(cljs.core.min_key.cljs$lang$maxFixedArity \x3d (3));\n\n\n/**\n* @constructor\n*/\ncljs.core.ArrayList \x3d (function (arr){\nthis.arr \x3d arr;\n});\n(cljs.core.ArrayList.prototype.add \x3d (function (x){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.arr.push(x);\n}));\n\n(cljs.core.ArrayList.prototype.size \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.arr.length;\n}));\n\n(cljs.core.ArrayList.prototype.clear \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.arr \x3d []);\n}));\n\n(cljs.core.ArrayList.prototype.isEmpty \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.arr.length \x3d\x3d\x3d (0));\n}));\n\n(cljs.core.ArrayList.prototype.toArray \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.arr;\n}));\n\n(cljs.core.ArrayList.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.ArrayList.cljs$lang$type \x3d true);\n\n(cljs.core.ArrayList.cljs$lang$ctorStr \x3d \x22cljs.core/ArrayList\x22);\n\n(cljs.core.ArrayList.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/ArrayList\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/ArrayList.\n */\ncljs.core.__GT_ArrayList \x3d (function cljs$core$__GT_ArrayList(arr){\nreturn (new cljs.core.ArrayList(arr));\n});\n\ncljs.core.array_list \x3d (function cljs$core$array_list(){\nreturn (new cljs.core.ArrayList([]));\n});\n/**\n * Returns a lazy sequence of lists like partition, but may include\n *   partitions with fewer than n items at the end.  Returns a stateful\n *   transducer when no collection is provided.\n */\ncljs.core.partition_all \x3d (function cljs$core$partition_all(var_args){\nvar G__39434 \x3d arguments.length;\nswitch (G__39434) {\ncase 1:\nreturn cljs.core.partition_all.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.partition_all.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.partition_all.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.partition_all.cljs$core$IFn$_invoke$arity$1 \x3d (function (n){\nreturn (function (rf){\nvar a \x3d cljs.core.array_list();\nreturn (function() {\nvar G__47758 \x3d null;\nvar G__47758__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__47758__1 \x3d (function (result){\nvar result__$1 \x3d (cljs.core.truth_(a.isEmpty())?result:(function (){var v \x3d cljs.core.vec(a.toArray());\na.clear();\n\nreturn cljs.core.unreduced((rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,v) : rf.call(null,result,v)));\n})());\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result__$1) : rf.call(null,result__$1));\n});\nvar G__47758__2 \x3d (function (result,input){\na.add(input);\n\nif((n \x3d\x3d\x3d a.size())){\nvar v \x3d cljs.core.vec(a.toArray());\na.clear();\n\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,v) : rf.call(null,result,v));\n} else {\nreturn result;\n}\n});\nG__47758 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__47758__0.call(this);\ncase 1:\nreturn G__47758__1.call(this,result);\ncase 2:\nreturn G__47758__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47758.cljs$core$IFn$_invoke$arity$0 \x3d G__47758__0;\nG__47758.cljs$core$IFn$_invoke$arity$1 \x3d G__47758__1;\nG__47758.cljs$core$IFn$_invoke$arity$2 \x3d G__47758__2;\nreturn G__47758;\n})()\n});\n}));\n\n(cljs.core.partition_all.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\nreturn cljs.core.partition_all.cljs$core$IFn$_invoke$arity$3(n,n,coll);\n}));\n\n(cljs.core.partition_all.cljs$core$IFn$_invoke$arity$3 \x3d (function (n,step,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nreturn cljs.core.cons(cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,s),cljs.core.partition_all.cljs$core$IFn$_invoke$arity$3(n,step,cljs.core.drop.cljs$core$IFn$_invoke$arity$2(step,s)));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.partition_all.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns a lazy sequence of successive items from coll while\n *   (pred item) returns logical true. pred must be free of side-effects.\n *   Returns a transducer when no collection is provided.\n */\ncljs.core.take_while \x3d (function cljs$core$take_while(var_args){\nvar G__39436 \x3d arguments.length;\nswitch (G__39436) {\ncase 1:\nreturn cljs.core.take_while.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.take_while.cljs$core$IFn$_invoke$arity$1 \x3d (function (pred){\nreturn (function (rf){\nreturn (function() {\nvar G__47773 \x3d null;\nvar G__47773__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__47773__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__47773__2 \x3d (function (result,input){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(input) : pred.call(null,input)))){\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n} else {\nreturn cljs.core.reduced(result);\n}\n});\nG__47773 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__47773__0.call(this);\ncase 1:\nreturn G__47773__1.call(this,result);\ncase 2:\nreturn G__47773__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47773.cljs$core$IFn$_invoke$arity$0 \x3d G__47773__0;\nG__47773.cljs$core$IFn$_invoke$arity$1 \x3d G__47773__1;\nG__47773.cljs$core$IFn$_invoke$arity$2 \x3d G__47773__2;\nreturn G__47773;\n})()\n});\n}));\n\n(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2 \x3d (function (pred,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nif(cljs.core.truth_((function (){var G__39437 \x3d cljs.core.first(s);\nreturn (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(G__39437) : pred.call(null,G__39437));\n})())){\nreturn cljs.core.cons(cljs.core.first(s),cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(pred,cljs.core.rest(s)));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.take_while.cljs$lang$maxFixedArity \x3d 2);\n\ncljs.core.mk_bound_fn \x3d (function cljs$core$mk_bound_fn(sc,test,key){\nreturn (function (e){\nvar comp \x3d cljs.core._comparator(sc);\nvar G__39438 \x3d (function (){var G__39440 \x3d cljs.core._entry_key(sc,e);\nvar G__39441 \x3d key;\nreturn (comp.cljs$core$IFn$_invoke$arity$2 ? comp.cljs$core$IFn$_invoke$arity$2(G__39440,G__39441) : comp.call(null,G__39440,G__39441));\n})();\nvar G__39439 \x3d (0);\nreturn (test.cljs$core$IFn$_invoke$arity$2 ? test.cljs$core$IFn$_invoke$arity$2(G__39438,G__39439) : test.call(null,G__39438,G__39439));\n});\n});\n/**\n * sc must be a sorted collection, test(s) one of \x3c, \x3c\x3d, \x3e or\n *   \x3e\x3d. Returns a seq of those entries with keys ek for\n *   which (test (.. sc comparator (compare ek key)) 0) is true\n */\ncljs.core.subseq \x3d (function cljs$core$subseq(var_args){\nvar G__39443 \x3d arguments.length;\nswitch (G__39443) {\ncase 3:\nreturn cljs.core.subseq.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 5:\nreturn cljs.core.subseq.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.subseq.cljs$core$IFn$_invoke$arity$3 \x3d (function (sc,test,key){\nvar include \x3d cljs.core.mk_bound_fn(sc,test,key);\nif(cljs.core.truth_((function (){var fexpr__39444 \x3d cljs.core.PersistentHashSet.createAsIfByAssoc([cljs.core._GT_,cljs.core._GT__EQ_]);\nreturn (fexpr__39444.cljs$core$IFn$_invoke$arity$1 ? fexpr__39444.cljs$core$IFn$_invoke$arity$1(test) : fexpr__39444.call(null,test));\n})())){\nvar temp__5753__auto__ \x3d cljs.core._sorted_seq_from(sc,key,true);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar vec__39445 \x3d temp__5753__auto__;\nvar e \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39445,(0),null);\nvar s \x3d vec__39445;\nif(cljs.core.truth_(include(e))){\nreturn s;\n} else {\nreturn cljs.core.next(s);\n}\n} else {\nreturn null;\n}\n} else {\nreturn cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(include,cljs.core._sorted_seq(sc,true));\n}\n}));\n\n(cljs.core.subseq.cljs$core$IFn$_invoke$arity$5 \x3d (function (sc,start_test,start_key,end_test,end_key){\nvar temp__5753__auto__ \x3d cljs.core._sorted_seq_from(sc,start_key,true);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar vec__39448 \x3d temp__5753__auto__;\nvar e \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39448,(0),null);\nvar s \x3d vec__39448;\nreturn cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(cljs.core.mk_bound_fn(sc,end_test,end_key),(cljs.core.truth_(cljs.core.mk_bound_fn(sc,start_test,start_key)(e))?s:cljs.core.next(s)));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.subseq.cljs$lang$maxFixedArity \x3d 5);\n\n/**\n * sc must be a sorted collection, test(s) one of \x3c, \x3c\x3d, \x3e or\n *   \x3e\x3d. Returns a reverse seq of those entries with keys ek for\n *   which (test (.. sc comparator (compare ek key)) 0) is true\n */\ncljs.core.rsubseq \x3d (function cljs$core$rsubseq(var_args){\nvar G__39452 \x3d arguments.length;\nswitch (G__39452) {\ncase 3:\nreturn cljs.core.rsubseq.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 5:\nreturn cljs.core.rsubseq.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.rsubseq.cljs$core$IFn$_invoke$arity$3 \x3d (function (sc,test,key){\nvar include \x3d cljs.core.mk_bound_fn(sc,test,key);\nif(cljs.core.truth_((function (){var fexpr__39453 \x3d cljs.core.PersistentHashSet.createAsIfByAssoc([cljs.core._LT_,cljs.core._LT__EQ_]);\nreturn (fexpr__39453.cljs$core$IFn$_invoke$arity$1 ? fexpr__39453.cljs$core$IFn$_invoke$arity$1(test) : fexpr__39453.call(null,test));\n})())){\nvar temp__5753__auto__ \x3d cljs.core._sorted_seq_from(sc,key,false);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar vec__39454 \x3d temp__5753__auto__;\nvar e \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39454,(0),null);\nvar s \x3d vec__39454;\nif(cljs.core.truth_(include(e))){\nreturn s;\n} else {\nreturn cljs.core.next(s);\n}\n} else {\nreturn null;\n}\n} else {\nreturn cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(include,cljs.core._sorted_seq(sc,false));\n}\n}));\n\n(cljs.core.rsubseq.cljs$core$IFn$_invoke$arity$5 \x3d (function (sc,start_test,start_key,end_test,end_key){\nvar temp__5753__auto__ \x3d cljs.core._sorted_seq_from(sc,end_key,false);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar vec__39457 \x3d temp__5753__auto__;\nvar e \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39457,(0),null);\nvar s \x3d vec__39457;\nreturn cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(cljs.core.mk_bound_fn(sc,start_test,start_key),(cljs.core.truth_(cljs.core.mk_bound_fn(sc,end_test,end_key)(e))?s:cljs.core.next(s)));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.rsubseq.cljs$lang$maxFixedArity \x3d 5);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.IChunk}\n*/\ncljs.core.IntegerRangeChunk \x3d (function (start,step,count){\nthis.start \x3d start;\nthis.step \x3d step;\nthis.count \x3d count;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 82;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.IntegerRangeChunk.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.count;\n}));\n\n(cljs.core.IntegerRangeChunk.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn self__.start;\n}));\n\n(cljs.core.IntegerRangeChunk.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (coll,i){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (self__.start + (i * self__.step));\n}));\n\n(cljs.core.IntegerRangeChunk.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (coll,i,not_found){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((((i \x3e\x3d (0))) \x26\x26 ((i \x3c self__.count)))){\nreturn (self__.start + (i * self__.step));\n} else {\nreturn not_found;\n}\n}));\n\n(cljs.core.IntegerRangeChunk.prototype.cljs$core$IChunk$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.IntegerRangeChunk.prototype.cljs$core$IChunk$_drop_first$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nif((self__.count \x3c\x3d (1))){\nthrow (new Error(\x22-drop-first of empty chunk\x22));\n} else {\nreturn (new cljs.core.IntegerRangeChunk((self__.start + self__.step),self__.step,(self__.count - (1))));\n}\n}));\n\n(cljs.core.IntegerRangeChunk.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null)], null);\n}));\n\n(cljs.core.IntegerRangeChunk.cljs$lang$type \x3d true);\n\n(cljs.core.IntegerRangeChunk.cljs$lang$ctorStr \x3d \x22cljs.core/IntegerRangeChunk\x22);\n\n(cljs.core.IntegerRangeChunk.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/IntegerRangeChunk\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/IntegerRangeChunk.\n */\ncljs.core.__GT_IntegerRangeChunk \x3d (function cljs$core$__GT_IntegerRangeChunk(start,step,count){\nreturn (new cljs.core.IntegerRangeChunk(start,step,count));\n});\n\n\n/**\n* @constructor\n*/\ncljs.core.RangeIterator \x3d (function (i,end,step){\nthis.i \x3d i;\nthis.end \x3d end;\nthis.step \x3d step;\n});\n(cljs.core.RangeIterator.prototype.hasNext \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((self__.step \x3e (0))){\nreturn (self__.i \x3c self__.end);\n} else {\nreturn (self__.i \x3e self__.end);\n}\n}));\n\n(cljs.core.RangeIterator.prototype.next \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d self__.i;\n(self__.i \x3d (self__.i + self__.step));\n\nreturn ret;\n}));\n\n(cljs.core.RangeIterator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22i\x22,\x22i\x22,253690212,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null)], null);\n}));\n\n(cljs.core.RangeIterator.cljs$lang$type \x3d true);\n\n(cljs.core.RangeIterator.cljs$lang$ctorStr \x3d \x22cljs.core/RangeIterator\x22);\n\n(cljs.core.RangeIterator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/RangeIterator\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/RangeIterator.\n */\ncljs.core.__GT_RangeIterator \x3d (function cljs$core$__GT_RangeIterator(i,end,step){\nreturn (new cljs.core.RangeIterator(i,end,step));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IChunkedNext}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IChunkedSeq}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.IntegerRange \x3d (function (meta,start,end,step,chunk,chunk_next,__hash){\nthis.meta \x3d meta;\nthis.start \x3d start;\nthis.end \x3d end;\nthis.step \x3d step;\nthis.chunk \x3d chunk;\nthis.chunk_next \x3d chunk_next;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32375006;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 140800;\n});\n(cljs.core.IntegerRange.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.IntegerRange.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.IntegerRange.prototype.indexOf \x3d (function() {\nvar G__47850 \x3d null;\nvar G__47850__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__47850__2 \x3d (function (x,start__$1){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start__$1);\n});\nG__47850 \x3d function(x,start__$1){\nswitch(arguments.length){\ncase 1:\nreturn G__47850__1.call(this,x);\ncase 2:\nreturn G__47850__2.call(this,x,start__$1);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47850.cljs$core$IFn$_invoke$arity$1 \x3d G__47850__1;\nG__47850.cljs$core$IFn$_invoke$arity$2 \x3d G__47850__2;\nreturn G__47850;\n})()\n);\n\n(cljs.core.IntegerRange.prototype.lastIndexOf \x3d (function() {\nvar G__47856 \x3d null;\nvar G__47856__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__47856__2 \x3d (function (x,start__$1){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start__$1);\n});\nG__47856 \x3d function(x,start__$1){\nswitch(arguments.length){\ncase 1:\nreturn G__47856__1.call(this,x);\ncase 2:\nreturn G__47856__2.call(this,x,start__$1);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47856.cljs$core$IFn$_invoke$arity$1 \x3d G__47856__1;\nG__47856.cljs$core$IFn$_invoke$arity$2 \x3d G__47856__2;\nreturn G__47856;\n})()\n);\n\n(cljs.core.IntegerRange.prototype.forceChunk \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nif((self__.chunk \x3d\x3d null)){\nvar count \x3d coll.cljs$core$ICounted$_count$arity$1(null);\nif((count \x3e (32))){\n(self__.chunk_next \x3d (new cljs.core.IntegerRange(null,(self__.start + (self__.step * (32))),self__.end,self__.step,null,null,null)));\n\nreturn (self__.chunk \x3d (new cljs.core.IntegerRangeChunk(self__.start,self__.step,(32))));\n} else {\nreturn (self__.chunk \x3d (new cljs.core.IntegerRangeChunk(self__.start,self__.step,count)));\n}\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (rng,n){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c rng__$1.cljs$core$ICounted$_count$arity$1(null))))){\nreturn (self__.start + (n * self__.step));\n} else {\nif(((((0) \x3c\x3d n)) \x26\x26 ((self__.start \x3e self__.end)) \x26\x26 ((self__.step \x3d\x3d\x3d (0))))){\nreturn self__.start;\n} else {\nthrow (new Error(\x22Index out of bounds\x22));\n}\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (rng,n,not_found){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nif(((((0) \x3c\x3d n)) \x26\x26 ((n \x3c rng__$1.cljs$core$ICounted$_count$arity$1(null))))){\nreturn (self__.start + (n * self__.step));\n} else {\nif(((((0) \x3c\x3d n)) \x26\x26 ((self__.start \x3e self__.end)) \x26\x26 ((self__.step \x3d\x3d\x3d (0))))){\nreturn self__.start;\n} else {\nreturn not_found;\n}\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.RangeIterator(self__.start,self__.end,self__.step));\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.IntegerRange(self__.meta,self__.start,self__.end,self__.step,self__.chunk,self__.chunk_next,self__.__hash));\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$INext$_next$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nif((self__.step \x3e (0))){\nif(((self__.start + self__.step) \x3c self__.end)){\nreturn (new cljs.core.IntegerRange(null,(self__.start + self__.step),self__.end,self__.step,null,null,null));\n} else {\nreturn null;\n}\n} else {\nif(((self__.start + self__.step) \x3e self__.end)){\nreturn (new cljs.core.IntegerRange(null,(self__.start + self__.step),self__.end,self__.step,null,null,null));\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn Math.ceil(((self__.end - self__.start) / self__.step));\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(rng__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (rng,other){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.equiv_sequential(rng__$1,other);\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (rng,f){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.ci_reduce.cljs$core$IFn$_invoke$arity$2(rng__$1,f);\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (rng,f,init){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nvar i \x3d self__.start;\nvar ret \x3d init;\nwhile(true){\nif((((self__.step \x3e (0)))?(i \x3c self__.end):(i \x3e self__.end))){\nvar ret__$1 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(ret,i) : f.call(null,ret,i));\nif(cljs.core.reduced_QMARK_(ret__$1)){\nreturn cljs.core.deref(ret__$1);\n} else {\nvar G__47917 \x3d (i + self__.step);\nvar G__47918 \x3d ret__$1;\ni \x3d G__47917;\nret \x3d G__47918;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn self__.start;\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nvar s \x3d rng__$1.cljs$core$INext$_next$arity$1(null);\nif((s \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn s;\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn rng__$1;\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IChunkedSeq$_chunked_first$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nrng__$1.forceChunk();\n\nreturn self__.chunk;\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IChunkedSeq$_chunked_rest$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nrng__$1.forceChunk();\n\nif((self__.chunk_next \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn self__.chunk_next;\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (rng,new_meta){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn rng__$1;\n} else {\nreturn (new cljs.core.IntegerRange(new_meta,self__.start,self__.end,self__.step,self__.chunk,self__.chunk_next,self__.__hash));\n}\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (rng,o){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.cons(o,rng__$1);\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IChunkedNext$_chunked_next$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.seq(rng__$1.cljs$core$IChunkedSeq$_chunked_rest$arity$1(null));\n}));\n\n(cljs.core.IntegerRange.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22chunk\x22,\x22chunk\x22,449371907,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22chunk-next\x22,\x22chunk-next\x22,-547810434,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.IntegerRange.cljs$lang$type \x3d true);\n\n(cljs.core.IntegerRange.cljs$lang$ctorStr \x3d \x22cljs.core/IntegerRange\x22);\n\n(cljs.core.IntegerRange.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/IntegerRange\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/IntegerRange.\n */\ncljs.core.__GT_IntegerRange \x3d (function cljs$core$__GT_IntegerRange(meta,start,end,step,chunk,chunk_next,__hash){\nreturn (new cljs.core.IntegerRange(meta,start,end,step,chunk,chunk_next,__hash));\n});\n\ngoog.object.set(cljs.core.IntegerRange.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.IChunkedNext}\n * @implements {cljs.core.IEmptyableCollection}\n * @implements {cljs.core.ISeq}\n * @implements {cljs.core.INext}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IChunkedSeq}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Range \x3d (function (meta,start,end,step,chunk,chunk_next,__hash){\nthis.meta \x3d meta;\nthis.start \x3d start;\nthis.end \x3d end;\nthis.step \x3d step;\nthis.chunk \x3d chunk;\nthis.chunk_next \x3d chunk_next;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 140800;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32374988;\n});\n(cljs.core.Range.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.Range.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.Range.prototype.indexOf \x3d (function() {\nvar G__47951 \x3d null;\nvar G__47951__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,(0));\n});\nvar G__47951__2 \x3d (function (x,start__$1){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start__$1);\n});\nG__47951 \x3d function(x,start__$1){\nswitch(arguments.length){\ncase 1:\nreturn G__47951__1.call(this,x);\ncase 2:\nreturn G__47951__2.call(this,x,start__$1);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47951.cljs$core$IFn$_invoke$arity$1 \x3d G__47951__1;\nG__47951.cljs$core$IFn$_invoke$arity$2 \x3d G__47951__2;\nreturn G__47951;\n})()\n);\n\n(cljs.core.Range.prototype.lastIndexOf \x3d (function() {\nvar G__47956 \x3d null;\nvar G__47956__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,cljs.core.count(coll));\n});\nvar G__47956__2 \x3d (function (x,start__$1){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll,x,start__$1);\n});\nG__47956 \x3d function(x,start__$1){\nswitch(arguments.length){\ncase 1:\nreturn G__47956__1.call(this,x);\ncase 2:\nreturn G__47956__2.call(this,x,start__$1);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47956.cljs$core$IFn$_invoke$arity$1 \x3d G__47956__1;\nG__47956.cljs$core$IFn$_invoke$arity$2 \x3d G__47956__2;\nreturn G__47956;\n})()\n);\n\n(cljs.core.Range.prototype.forceChunk \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nif((self__.chunk \x3d\x3d null)){\nvar arr \x3d [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];\nvar val \x3d (function (){var n \x3d (0);\nvar val \x3d self__.start;\nwhile(true){\nif((n \x3c (32))){\n(arr[n] \x3d val);\n\nvar n__$1 \x3d (n + (1));\nvar val__$1 \x3d (val + self__.step);\nif((((self__.step \x3e (0)))?(val__$1 \x3c self__.end):(val__$1 \x3e self__.end))){\nvar G__47966 \x3d n__$1;\nvar G__47967 \x3d val__$1;\nn \x3d G__47966;\nval \x3d G__47967;\ncontinue;\n} else {\nreturn (self__.chunk \x3d cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$3(arr,(0),n__$1));\n}\n} else {\nreturn val;\n}\nbreak;\n}\n})();\nif((self__.chunk \x3d\x3d null)){\n(self__.chunk \x3d cljs.core.array_chunk.cljs$core$IFn$_invoke$arity$3(arr,(0),(32)));\n\nif((((self__.step \x3e (0)))?(val \x3c self__.end):(val \x3e self__.end))){\nreturn (self__.chunk_next \x3d (new cljs.core.Range(null,val,self__.end,self__.step,null,null,null)));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.RangeIterator(self__.start,self__.end,self__.step));\n}));\n\n(cljs.core.Range.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn self__.meta;\n}));\n\n(cljs.core.Range.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (new cljs.core.Range(self__.meta,self__.start,self__.end,self__.step,self__.chunk,self__.chunk_next,self__.__hash));\n}));\n\n(cljs.core.Range.prototype.cljs$core$INext$_next$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nif((self__.step \x3e (0))){\nif(((self__.start + self__.step) \x3c self__.end)){\nreturn (new cljs.core.Range(null,(self__.start + self__.step),self__.end,self__.step,null,null,null));\n} else {\nreturn null;\n}\n} else {\nif(((self__.start + self__.step) \x3e self__.end)){\nreturn (new cljs.core.Range(null,(self__.start + self__.step),self__.end,self__.step,null,null,null));\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d cljs.core.hash_ordered_coll(rng__$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (rng,other){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.equiv_sequential(rng__$1,other);\n}));\n\n(cljs.core.Range.prototype.cljs$core$IEmptyableCollection$_empty$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.List.EMPTY;\n}));\n\n(cljs.core.Range.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (rng,f){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.seq_reduce.cljs$core$IFn$_invoke$arity$2(f,rng__$1);\n}));\n\n(cljs.core.Range.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (rng,f,init){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nvar i \x3d self__.start;\nvar ret \x3d init;\nwhile(true){\nif((((self__.step \x3e (0)))?(i \x3c self__.end):(i \x3e self__.end))){\nvar ret__$1 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(ret,i) : f.call(null,ret,i));\nif(cljs.core.reduced_QMARK_(ret__$1)){\nreturn cljs.core.deref(ret__$1);\n} else {\nvar G__47988 \x3d (i + self__.step);\nvar G__47989 \x3d ret__$1;\ni \x3d G__47988;\nret \x3d G__47989;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$ISeq$_first$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn self__.start;\n}));\n\n(cljs.core.Range.prototype.cljs$core$ISeq$_rest$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nvar s \x3d rng__$1.cljs$core$INext$_next$arity$1(null);\nif((s \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn s;\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn rng__$1;\n}));\n\n(cljs.core.Range.prototype.cljs$core$IChunkedSeq$_chunked_first$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nrng__$1.forceChunk();\n\nreturn self__.chunk;\n}));\n\n(cljs.core.Range.prototype.cljs$core$IChunkedSeq$_chunked_rest$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nrng__$1.forceChunk();\n\nif((self__.chunk_next \x3d\x3d null)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn self__.chunk_next;\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (rng,new_meta){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nif((new_meta \x3d\x3d\x3d self__.meta)){\nreturn rng__$1;\n} else {\nreturn (new cljs.core.Range(new_meta,self__.start,self__.end,self__.step,self__.chunk,self__.chunk_next,self__.__hash));\n}\n}));\n\n(cljs.core.Range.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (rng,o){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.cons(o,rng__$1);\n}));\n\n(cljs.core.Range.prototype.cljs$core$IChunkedNext$_chunked_next$arity$1 \x3d (function (rng){\nvar self__ \x3d this;\nvar rng__$1 \x3d this;\nreturn cljs.core.seq(rng__$1.cljs$core$IChunkedSeq$_chunked_rest$arity$1(null));\n}));\n\n(cljs.core.Range.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22chunk\x22,\x22chunk\x22,449371907,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22chunk-next\x22,\x22chunk-next\x22,-547810434,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Range.cljs$lang$type \x3d true);\n\n(cljs.core.Range.cljs$lang$ctorStr \x3d \x22cljs.core/Range\x22);\n\n(cljs.core.Range.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Range\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Range.\n */\ncljs.core.__GT_Range \x3d (function cljs$core$__GT_Range(meta,start,end,step,chunk,chunk_next,__hash){\nreturn (new cljs.core.Range(meta,start,end,step,chunk,chunk_next,__hash));\n});\n\ngoog.object.set(cljs.core.Range.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Returns a lazy seq of nums from start (inclusive) to end\n * (exclusive), by step, where start defaults to 0, step to 1,\n * and end to infinity.\n */\ncljs.core.range \x3d (function cljs$core$range(var_args){\nvar G__39461 \x3d arguments.length;\nswitch (G__39461) {\ncase 0:\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.range.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$3((0),Number.MAX_VALUE,(1));\n}));\n\n(cljs.core.range.cljs$core$IFn$_invoke$arity$1 \x3d (function (end){\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$3((0),end,(1));\n}));\n\n(cljs.core.range.cljs$core$IFn$_invoke$arity$2 \x3d (function (start,end){\nreturn cljs.core.range.cljs$core$IFn$_invoke$arity$3(start,end,(1));\n}));\n\n(cljs.core.range.cljs$core$IFn$_invoke$arity$3 \x3d (function (start,end,step){\nif((step \x3e (0))){\nif((end \x3c\x3d start)){\nreturn cljs.core.List.EMPTY;\n} else {\nif(((cljs.core.integer_QMARK_(start)) \x26\x26 (cljs.core.integer_QMARK_(end)) \x26\x26 (cljs.core.integer_QMARK_(step)))){\nreturn (new cljs.core.IntegerRange(null,start,end,step,null,null,null));\n} else {\nreturn (new cljs.core.Range(null,start,end,step,null,null,null));\n}\n}\n} else {\nif((step \x3c (0))){\nif((end \x3e\x3d start)){\nreturn cljs.core.List.EMPTY;\n} else {\nif(((cljs.core.integer_QMARK_(start)) \x26\x26 (cljs.core.integer_QMARK_(end)) \x26\x26 (cljs.core.integer_QMARK_(step)))){\nreturn (new cljs.core.IntegerRange(null,start,end,step,null,null,null));\n} else {\nreturn (new cljs.core.Range(null,start,end,step,null,null,null));\n}\n}\n} else {\nif((end \x3d\x3d\x3d start)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(start);\n}\n\n}\n}\n}));\n\n(cljs.core.range.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns a lazy seq of every nth item in coll.  Returns a stateful\n *   transducer when no collection is provided.\n */\ncljs.core.take_nth \x3d (function cljs$core$take_nth(var_args){\nvar G__39463 \x3d arguments.length;\nswitch (G__39463) {\ncase 1:\nreturn cljs.core.take_nth.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.take_nth.cljs$core$IFn$_invoke$arity$1 \x3d (function (n){\nif(typeof n \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? n)\x22));\n}\n\nreturn (function (rf){\nvar ia \x3d cljs.core.volatile_BANG_((-1));\nreturn (function() {\nvar G__48024 \x3d null;\nvar G__48024__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__48024__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__48024__2 \x3d (function (result,input){\nvar i \x3d ia.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,(ia.cljs$core$IDeref$_deref$arity$1(null) + (1)));\nif((cljs.core.rem(i,n) \x3d\x3d\x3d (0))){\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n} else {\nreturn result;\n}\n});\nG__48024 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__48024__0.call(this);\ncase 1:\nreturn G__48024__1.call(this,result);\ncase 2:\nreturn G__48024__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48024.cljs$core$IFn$_invoke$arity$0 \x3d G__48024__0;\nG__48024.cljs$core$IFn$_invoke$arity$1 \x3d G__48024__1;\nG__48024.cljs$core$IFn$_invoke$arity$2 \x3d G__48024__2;\nreturn G__48024;\n})()\n});\n}));\n\n(cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\nif(typeof n \x3d\x3d\x3d \x27number\x27){\n} else {\nthrow (new Error(\x22Assert failed: (number? n)\x22));\n}\n\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nreturn cljs.core.cons(cljs.core.first(s),cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2(n,cljs.core.drop.cljs$core$IFn$_invoke$arity$2(n,s)));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.take_nth.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a vector of [(take-while pred coll) (drop-while pred coll)]\n */\ncljs.core.split_with \x3d (function cljs$core$split_with(pred,coll){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.take_while.cljs$core$IFn$_invoke$arity$2(pred,coll),cljs.core.drop_while.cljs$core$IFn$_invoke$arity$2(pred,coll)], null);\n});\n/**\n * Applies f to each value in coll, splitting it each time f returns a\n * new value.  Returns a lazy seq of partitions.  Returns a stateful\n * transducer when no collection is provided.\n */\ncljs.core.partition_by \x3d (function cljs$core$partition_by(var_args){\nvar G__39466 \x3d arguments.length;\nswitch (G__39466) {\ncase 1:\nreturn cljs.core.partition_by.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.partition_by.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.partition_by.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (function (rf){\nvar a \x3d cljs.core.array_list();\nvar pa \x3d cljs.core.volatile_BANG_(new cljs.core.Keyword(\x22cljs.core\x22,\x22none\x22,\x22cljs.core/none\x22,926646439));\nreturn (function() {\nvar G__48041 \x3d null;\nvar G__48041__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__48041__1 \x3d (function (result){\nvar result__$1 \x3d (cljs.core.truth_(a.isEmpty())?result:(function (){var v \x3d cljs.core.vec(a.toArray());\na.clear();\n\nreturn cljs.core.unreduced((rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,v) : rf.call(null,result,v)));\n})());\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result__$1) : rf.call(null,result__$1));\n});\nvar G__48041__2 \x3d (function (result,input){\nvar pval \x3d cljs.core.deref(pa);\nvar val \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(input) : f.call(null,input));\ncljs.core.vreset_BANG_(pa,val);\n\nif(((cljs.core.keyword_identical_QMARK_(pval,new cljs.core.Keyword(\x22cljs.core\x22,\x22none\x22,\x22cljs.core/none\x22,926646439))) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(val,pval)))){\na.add(input);\n\nreturn result;\n} else {\nvar v \x3d cljs.core.vec(a.toArray());\na.clear();\n\nvar ret \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,v) : rf.call(null,result,v));\nif(cljs.core.reduced_QMARK_(ret)){\n} else {\na.add(input);\n}\n\nreturn ret;\n}\n});\nG__48041 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__48041__0.call(this);\ncase 1:\nreturn G__48041__1.call(this,result);\ncase 2:\nreturn G__48041__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48041.cljs$core$IFn$_invoke$arity$0 \x3d G__48041__0;\nG__48041.cljs$core$IFn$_invoke$arity$1 \x3d G__48041__1;\nG__48041.cljs$core$IFn$_invoke$arity$2 \x3d G__48041__2;\nreturn G__48041;\n})()\n});\n}));\n\n(cljs.core.partition_by.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nvar fst \x3d cljs.core.first(s);\nvar fv \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(fst) : f.call(null,fst));\nvar run \x3d cljs.core.cons(fst,cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__39464_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(fv,(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(p1__39464_SHARP_) : f.call(null,p1__39464_SHARP_)));\n}),cljs.core.next(s)));\nreturn cljs.core.cons(run,cljs.core.partition_by.cljs$core$IFn$_invoke$arity$2(f,(new cljs.core.LazySeq(null,(function (){\nreturn cljs.core.drop.cljs$core$IFn$_invoke$arity$2(cljs.core.count(run),s);\n}),null,null))));\n} else {\nreturn null;\n}\n}),null,null));\n}));\n\n(cljs.core.partition_by.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a map from distinct items in coll to the number of times\n *   they appear.\n */\ncljs.core.frequencies \x3d (function cljs$core$frequencies(coll){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (counts,x){\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(counts,x,(cljs.core.get.cljs$core$IFn$_invoke$arity$3(counts,x,(0)) + (1)));\n}),cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY),coll));\n});\n/**\n * Returns a lazy seq of the intermediate values of the reduction (as\n *   per reduce) of coll by f, starting with init.\n */\ncljs.core.reductions \x3d (function cljs$core$reductions(var_args){\nvar G__39468 \x3d arguments.length;\nswitch (G__39468) {\ncase 2:\nreturn cljs.core.reductions.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.reductions.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.reductions.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5751__auto__ \x3d cljs.core.seq(coll);\nif(temp__5751__auto__){\nvar s \x3d temp__5751__auto__;\nreturn cljs.core.reductions.cljs$core$IFn$_invoke$arity$3(f,cljs.core.first(s),cljs.core.rest(s));\n} else {\nreturn (new cljs.core.List(null,(f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null)),null,(1),null));\n}\n}),null,null));\n}));\n\n(cljs.core.reductions.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,init,coll){\nif(cljs.core.reduced_QMARK_(init)){\nreturn (new cljs.core.List(null,cljs.core.deref(init),null,(1),null));\n} else {\nreturn cljs.core.cons(init,(new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nreturn cljs.core.reductions.cljs$core$IFn$_invoke$arity$3(f,(function (){var G__39469 \x3d init;\nvar G__39470 \x3d cljs.core.first(s);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__39469,G__39470) : f.call(null,G__39469,G__39470));\n})(),cljs.core.rest(s));\n} else {\nreturn null;\n}\n}),null,null)));\n}\n}));\n\n(cljs.core.reductions.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Takes a set of functions and returns a fn that is the juxtaposition\n *   of those fns.  The returned fn takes a variable number of args, and\n *   returns a vector containing the result of applying each fn to the\n *   args (left-to-right).\n *   ((juxt a b c) x) \x3d\x3e [(a x) (b x) (c x)]\n */\ncljs.core.juxt \x3d (function cljs$core$juxt(var_args){\nvar G__39486 \x3d arguments.length;\nswitch (G__39486) {\ncase 1:\nreturn cljs.core.juxt.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.juxt.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.juxt.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___48067 \x3d arguments.length;\nvar i__4772__auto___48068 \x3d (0);\nwhile(true){\nif((i__4772__auto___48068 \x3c len__4771__auto___48067)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___48068]));\n\nvar G__48069 \x3d (i__4772__auto___48068 + (1));\ni__4772__auto___48068 \x3d G__48069;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((3)),(0),null));\nreturn cljs.core.juxt.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.juxt.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn (function() {\nvar G__48072 \x3d null;\nvar G__48072__0 \x3d (function (){\nreturn (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null))],null));\n});\nvar G__48072__1 \x3d (function (x){\nreturn (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x))],null));\n});\nvar G__48072__2 \x3d (function (x,y){\nreturn (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y))],null));\n});\nvar G__48072__3 \x3d (function (x,y,z){\nreturn (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(x,y,z) : f.call(null,x,y,z))],null));\n});\nvar G__48072__4 \x3d (function() { \nvar G__48081__delegate \x3d function (x,y,z,args){\nreturn (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,x,y,z,args)],null));\n};\nvar G__48081 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48099__i \x3d 0, G__48099__a \x3d new Array(arguments.length -  3);\nwhile (G__48099__i \x3c G__48099__a.length) {G__48099__a[G__48099__i] \x3d arguments[G__48099__i + 3]; ++G__48099__i;}\n  args \x3d new cljs.core.IndexedSeq(G__48099__a,0,null);\n} \nreturn G__48081__delegate.call(this,x,y,z,args);};\nG__48081.cljs$lang$maxFixedArity \x3d 3;\nG__48081.cljs$lang$applyTo \x3d (function (arglist__48101){\nvar x \x3d cljs.core.first(arglist__48101);\narglist__48101 \x3d cljs.core.next(arglist__48101);\nvar y \x3d cljs.core.first(arglist__48101);\narglist__48101 \x3d cljs.core.next(arglist__48101);\nvar z \x3d cljs.core.first(arglist__48101);\nvar args \x3d cljs.core.rest(arglist__48101);\nreturn G__48081__delegate(x,y,z,args);\n});\nG__48081.cljs$core$IFn$_invoke$arity$variadic \x3d G__48081__delegate;\nreturn G__48081;\n})()\n;\nG__48072 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__48072__0.call(this);\ncase 1:\nreturn G__48072__1.call(this,x);\ncase 2:\nreturn G__48072__2.call(this,x,y);\ncase 3:\nreturn G__48072__3.call(this,x,y,z);\ndefault:\nvar G__48121 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48122__i \x3d 0, G__48122__a \x3d new Array(arguments.length -  3);\nwhile (G__48122__i \x3c G__48122__a.length) {G__48122__a[G__48122__i] \x3d arguments[G__48122__i + 3]; ++G__48122__i;}\nG__48121 \x3d new cljs.core.IndexedSeq(G__48122__a,0,null);\n}\nreturn G__48072__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__48121);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48072.cljs$lang$maxFixedArity \x3d 3;\nG__48072.cljs$lang$applyTo \x3d G__48072__4.cljs$lang$applyTo;\nG__48072.cljs$core$IFn$_invoke$arity$0 \x3d G__48072__0;\nG__48072.cljs$core$IFn$_invoke$arity$1 \x3d G__48072__1;\nG__48072.cljs$core$IFn$_invoke$arity$2 \x3d G__48072__2;\nG__48072.cljs$core$IFn$_invoke$arity$3 \x3d G__48072__3;\nG__48072.cljs$core$IFn$_invoke$arity$variadic \x3d G__48072__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__48072;\n})()\n}));\n\n(cljs.core.juxt.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,g){\nreturn (function() {\nvar G__48124 \x3d null;\nvar G__48124__0 \x3d (function (){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null)),(g.cljs$core$IFn$_invoke$arity$0 ? g.cljs$core$IFn$_invoke$arity$0() : g.call(null))],null));\n});\nvar G__48124__1 \x3d (function (x){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x)),(g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(x) : g.call(null,x))],null));\n});\nvar G__48124__2 \x3d (function (x,y){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y)),(g.cljs$core$IFn$_invoke$arity$2 ? g.cljs$core$IFn$_invoke$arity$2(x,y) : g.call(null,x,y))],null));\n});\nvar G__48124__3 \x3d (function (x,y,z){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(x,y,z) : f.call(null,x,y,z)),(g.cljs$core$IFn$_invoke$arity$3 ? g.cljs$core$IFn$_invoke$arity$3(x,y,z) : g.call(null,x,y,z))],null));\n});\nvar G__48124__4 \x3d (function() { \nvar G__48129__delegate \x3d function (x,y,z,args){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,x,y,z,args),cljs.core.apply.cljs$core$IFn$_invoke$arity$5(g,x,y,z,args)],null));\n};\nvar G__48129 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48132__i \x3d 0, G__48132__a \x3d new Array(arguments.length -  3);\nwhile (G__48132__i \x3c G__48132__a.length) {G__48132__a[G__48132__i] \x3d arguments[G__48132__i + 3]; ++G__48132__i;}\n  args \x3d new cljs.core.IndexedSeq(G__48132__a,0,null);\n} \nreturn G__48129__delegate.call(this,x,y,z,args);};\nG__48129.cljs$lang$maxFixedArity \x3d 3;\nG__48129.cljs$lang$applyTo \x3d (function (arglist__48134){\nvar x \x3d cljs.core.first(arglist__48134);\narglist__48134 \x3d cljs.core.next(arglist__48134);\nvar y \x3d cljs.core.first(arglist__48134);\narglist__48134 \x3d cljs.core.next(arglist__48134);\nvar z \x3d cljs.core.first(arglist__48134);\nvar args \x3d cljs.core.rest(arglist__48134);\nreturn G__48129__delegate(x,y,z,args);\n});\nG__48129.cljs$core$IFn$_invoke$arity$variadic \x3d G__48129__delegate;\nreturn G__48129;\n})()\n;\nG__48124 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__48124__0.call(this);\ncase 1:\nreturn G__48124__1.call(this,x);\ncase 2:\nreturn G__48124__2.call(this,x,y);\ncase 3:\nreturn G__48124__3.call(this,x,y,z);\ndefault:\nvar G__48138 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48140__i \x3d 0, G__48140__a \x3d new Array(arguments.length -  3);\nwhile (G__48140__i \x3c G__48140__a.length) {G__48140__a[G__48140__i] \x3d arguments[G__48140__i + 3]; ++G__48140__i;}\nG__48138 \x3d new cljs.core.IndexedSeq(G__48140__a,0,null);\n}\nreturn G__48124__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__48138);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48124.cljs$lang$maxFixedArity \x3d 3;\nG__48124.cljs$lang$applyTo \x3d G__48124__4.cljs$lang$applyTo;\nG__48124.cljs$core$IFn$_invoke$arity$0 \x3d G__48124__0;\nG__48124.cljs$core$IFn$_invoke$arity$1 \x3d G__48124__1;\nG__48124.cljs$core$IFn$_invoke$arity$2 \x3d G__48124__2;\nG__48124.cljs$core$IFn$_invoke$arity$3 \x3d G__48124__3;\nG__48124.cljs$core$IFn$_invoke$arity$variadic \x3d G__48124__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__48124;\n})()\n}));\n\n(cljs.core.juxt.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,g,h){\nreturn (function() {\nvar G__48146 \x3d null;\nvar G__48146__0 \x3d (function (){\nreturn (new cljs.core.PersistentVector(null,3,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null)),(g.cljs$core$IFn$_invoke$arity$0 ? g.cljs$core$IFn$_invoke$arity$0() : g.call(null)),(h.cljs$core$IFn$_invoke$arity$0 ? h.cljs$core$IFn$_invoke$arity$0() : h.call(null))],null));\n});\nvar G__48146__1 \x3d (function (x){\nreturn (new cljs.core.PersistentVector(null,3,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x)),(g.cljs$core$IFn$_invoke$arity$1 ? g.cljs$core$IFn$_invoke$arity$1(x) : g.call(null,x)),(h.cljs$core$IFn$_invoke$arity$1 ? h.cljs$core$IFn$_invoke$arity$1(x) : h.call(null,x))],null));\n});\nvar G__48146__2 \x3d (function (x,y){\nreturn (new cljs.core.PersistentVector(null,3,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y)),(g.cljs$core$IFn$_invoke$arity$2 ? g.cljs$core$IFn$_invoke$arity$2(x,y) : g.call(null,x,y)),(h.cljs$core$IFn$_invoke$arity$2 ? h.cljs$core$IFn$_invoke$arity$2(x,y) : h.call(null,x,y))],null));\n});\nvar G__48146__3 \x3d (function (x,y,z){\nreturn (new cljs.core.PersistentVector(null,3,(5),cljs.core.PersistentVector.EMPTY_NODE,[(f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(x,y,z) : f.call(null,x,y,z)),(g.cljs$core$IFn$_invoke$arity$3 ? g.cljs$core$IFn$_invoke$arity$3(x,y,z) : g.call(null,x,y,z)),(h.cljs$core$IFn$_invoke$arity$3 ? h.cljs$core$IFn$_invoke$arity$3(x,y,z) : h.call(null,x,y,z))],null));\n});\nvar G__48146__4 \x3d (function() { \nvar G__48162__delegate \x3d function (x,y,z,args){\nreturn (new cljs.core.PersistentVector(null,3,(5),cljs.core.PersistentVector.EMPTY_NODE,[cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,x,y,z,args),cljs.core.apply.cljs$core$IFn$_invoke$arity$5(g,x,y,z,args),cljs.core.apply.cljs$core$IFn$_invoke$arity$5(h,x,y,z,args)],null));\n};\nvar G__48162 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48166__i \x3d 0, G__48166__a \x3d new Array(arguments.length -  3);\nwhile (G__48166__i \x3c G__48166__a.length) {G__48166__a[G__48166__i] \x3d arguments[G__48166__i + 3]; ++G__48166__i;}\n  args \x3d new cljs.core.IndexedSeq(G__48166__a,0,null);\n} \nreturn G__48162__delegate.call(this,x,y,z,args);};\nG__48162.cljs$lang$maxFixedArity \x3d 3;\nG__48162.cljs$lang$applyTo \x3d (function (arglist__48167){\nvar x \x3d cljs.core.first(arglist__48167);\narglist__48167 \x3d cljs.core.next(arglist__48167);\nvar y \x3d cljs.core.first(arglist__48167);\narglist__48167 \x3d cljs.core.next(arglist__48167);\nvar z \x3d cljs.core.first(arglist__48167);\nvar args \x3d cljs.core.rest(arglist__48167);\nreturn G__48162__delegate(x,y,z,args);\n});\nG__48162.cljs$core$IFn$_invoke$arity$variadic \x3d G__48162__delegate;\nreturn G__48162;\n})()\n;\nG__48146 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__48146__0.call(this);\ncase 1:\nreturn G__48146__1.call(this,x);\ncase 2:\nreturn G__48146__2.call(this,x,y);\ncase 3:\nreturn G__48146__3.call(this,x,y,z);\ndefault:\nvar G__48171 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48172__i \x3d 0, G__48172__a \x3d new Array(arguments.length -  3);\nwhile (G__48172__i \x3c G__48172__a.length) {G__48172__a[G__48172__i] \x3d arguments[G__48172__i + 3]; ++G__48172__i;}\nG__48171 \x3d new cljs.core.IndexedSeq(G__48172__a,0,null);\n}\nreturn G__48146__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__48171);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48146.cljs$lang$maxFixedArity \x3d 3;\nG__48146.cljs$lang$applyTo \x3d G__48146__4.cljs$lang$applyTo;\nG__48146.cljs$core$IFn$_invoke$arity$0 \x3d G__48146__0;\nG__48146.cljs$core$IFn$_invoke$arity$1 \x3d G__48146__1;\nG__48146.cljs$core$IFn$_invoke$arity$2 \x3d G__48146__2;\nG__48146.cljs$core$IFn$_invoke$arity$3 \x3d G__48146__3;\nG__48146.cljs$core$IFn$_invoke$arity$variadic \x3d G__48146__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__48146;\n})()\n}));\n\n(cljs.core.juxt.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,g,h,fs){\nvar fs__$1 \x3d cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4(f,g,h,fs);\nreturn (function() {\nvar G__48177 \x3d null;\nvar G__48177__0 \x3d (function (){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39471_SHARP_,p2__39472_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39471_SHARP_,(p2__39472_SHARP_.cljs$core$IFn$_invoke$arity$0 ? p2__39472_SHARP_.cljs$core$IFn$_invoke$arity$0() : p2__39472_SHARP_.call(null)));\n}),cljs.core.PersistentVector.EMPTY,fs__$1);\n});\nvar G__48177__1 \x3d (function (x){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39473_SHARP_,p2__39474_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39473_SHARP_,(p2__39474_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p2__39474_SHARP_.cljs$core$IFn$_invoke$arity$1(x) : p2__39474_SHARP_.call(null,x)));\n}),cljs.core.PersistentVector.EMPTY,fs__$1);\n});\nvar G__48177__2 \x3d (function (x,y){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39475_SHARP_,p2__39476_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39475_SHARP_,(p2__39476_SHARP_.cljs$core$IFn$_invoke$arity$2 ? p2__39476_SHARP_.cljs$core$IFn$_invoke$arity$2(x,y) : p2__39476_SHARP_.call(null,x,y)));\n}),cljs.core.PersistentVector.EMPTY,fs__$1);\n});\nvar G__48177__3 \x3d (function (x,y,z){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39477_SHARP_,p2__39478_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39477_SHARP_,(p2__39478_SHARP_.cljs$core$IFn$_invoke$arity$3 ? p2__39478_SHARP_.cljs$core$IFn$_invoke$arity$3(x,y,z) : p2__39478_SHARP_.call(null,x,y,z)));\n}),cljs.core.PersistentVector.EMPTY,fs__$1);\n});\nvar G__48177__4 \x3d (function() { \nvar G__48185__delegate \x3d function (x,y,z,args){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39479_SHARP_,p2__39480_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39479_SHARP_,cljs.core.apply.cljs$core$IFn$_invoke$arity$5(p2__39480_SHARP_,x,y,z,args));\n}),cljs.core.PersistentVector.EMPTY,fs__$1);\n};\nvar G__48185 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48189__i \x3d 0, G__48189__a \x3d new Array(arguments.length -  3);\nwhile (G__48189__i \x3c G__48189__a.length) {G__48189__a[G__48189__i] \x3d arguments[G__48189__i + 3]; ++G__48189__i;}\n  args \x3d new cljs.core.IndexedSeq(G__48189__a,0,null);\n} \nreturn G__48185__delegate.call(this,x,y,z,args);};\nG__48185.cljs$lang$maxFixedArity \x3d 3;\nG__48185.cljs$lang$applyTo \x3d (function (arglist__48191){\nvar x \x3d cljs.core.first(arglist__48191);\narglist__48191 \x3d cljs.core.next(arglist__48191);\nvar y \x3d cljs.core.first(arglist__48191);\narglist__48191 \x3d cljs.core.next(arglist__48191);\nvar z \x3d cljs.core.first(arglist__48191);\nvar args \x3d cljs.core.rest(arglist__48191);\nreturn G__48185__delegate(x,y,z,args);\n});\nG__48185.cljs$core$IFn$_invoke$arity$variadic \x3d G__48185__delegate;\nreturn G__48185;\n})()\n;\nG__48177 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__48177__0.call(this);\ncase 1:\nreturn G__48177__1.call(this,x);\ncase 2:\nreturn G__48177__2.call(this,x,y);\ncase 3:\nreturn G__48177__3.call(this,x,y,z);\ndefault:\nvar G__48195 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__48196__i \x3d 0, G__48196__a \x3d new Array(arguments.length -  3);\nwhile (G__48196__i \x3c G__48196__a.length) {G__48196__a[G__48196__i] \x3d arguments[G__48196__i + 3]; ++G__48196__i;}\nG__48195 \x3d new cljs.core.IndexedSeq(G__48196__a,0,null);\n}\nreturn G__48177__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__48195);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48177.cljs$lang$maxFixedArity \x3d 3;\nG__48177.cljs$lang$applyTo \x3d G__48177__4.cljs$lang$applyTo;\nG__48177.cljs$core$IFn$_invoke$arity$0 \x3d G__48177__0;\nG__48177.cljs$core$IFn$_invoke$arity$1 \x3d G__48177__1;\nG__48177.cljs$core$IFn$_invoke$arity$2 \x3d G__48177__2;\nG__48177.cljs$core$IFn$_invoke$arity$3 \x3d G__48177__3;\nG__48177.cljs$core$IFn$_invoke$arity$variadic \x3d G__48177__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__48177;\n})()\n}));\n\n/** @this {Function} */\n(cljs.core.juxt.cljs$lang$applyTo \x3d (function (seq39482){\nvar G__39483 \x3d cljs.core.first(seq39482);\nvar seq39482__$1 \x3d cljs.core.next(seq39482);\nvar G__39484 \x3d cljs.core.first(seq39482__$1);\nvar seq39482__$2 \x3d cljs.core.next(seq39482__$1);\nvar G__39485 \x3d cljs.core.first(seq39482__$2);\nvar seq39482__$3 \x3d cljs.core.next(seq39482__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39483,G__39484,G__39485,seq39482__$3);\n}));\n\n(cljs.core.juxt.cljs$lang$maxFixedArity \x3d (3));\n\n/**\n * When lazy sequences are produced via functions that have side\n *   effects, any effects other than those needed to produce the first\n *   element in the seq do not occur until the seq is consumed. dorun can\n *   be used to force any effects. Walks through the successive nexts of\n *   the seq, does not retain the head and returns nil.\n */\ncljs.core.dorun \x3d (function cljs$core$dorun(var_args){\nvar G__39488 \x3d arguments.length;\nswitch (G__39488) {\ncase 1:\nreturn cljs.core.dorun.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.dorun.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.dorun.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nvar G__48211 \x3d cljs.core.next(s);\ncoll \x3d G__48211;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(cljs.core.dorun.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\nwhile(true){\nif(((cljs.core.seq(coll)) \x26\x26 ((n \x3e (0))))){\nvar G__48216 \x3d (n - (1));\nvar G__48217 \x3d cljs.core.next(coll);\nn \x3d G__48216;\ncoll \x3d G__48217;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(cljs.core.dorun.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * When lazy sequences are produced via functions that have side\n *   effects, any effects other than those needed to produce the first\n *   element in the seq do not occur until the seq is consumed. doall can\n *   be used to force any effects. Walks through the successive nexts of\n *   the seq, retains the head and returns it, thus causing the entire\n *   seq to reside in memory at one time.\n */\ncljs.core.doall \x3d (function cljs$core$doall(var_args){\nvar G__39490 \x3d arguments.length;\nswitch (G__39490) {\ncase 1:\nreturn cljs.core.doall.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.doall.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.doall.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\ncljs.core.dorun.cljs$core$IFn$_invoke$arity$1(coll);\n\nreturn coll;\n}));\n\n(cljs.core.doall.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,coll){\ncljs.core.dorun.cljs$core$IFn$_invoke$arity$2(n,coll);\n\nreturn coll;\n}));\n\n(cljs.core.doall.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns true if x is a JavaScript RegExp instance.\n */\ncljs.core.regexp_QMARK_ \x3d (function cljs$core$regexp_QMARK_(x){\nreturn (x instanceof RegExp);\n});\n/**\n * Returns the result of (re-find re s) if re fully matches s.\n */\ncljs.core.re_matches \x3d (function cljs$core$re_matches(re,s){\nif(typeof s \x3d\x3d\x3d \x27string\x27){\nvar matches \x3d re.exec(s);\nif((((!((matches \x3d\x3d null)))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((matches[(0)]),s)))){\nif((((matches).length) \x3d\x3d\x3d (1))){\nreturn (matches[(0)]);\n} else {\nreturn cljs.core.vec(matches);\n}\n} else {\nreturn null;\n}\n} else {\nthrow (new TypeError(\x22re-matches must match against a string.\x22));\n}\n});\n/**\n * Returns the first regex match, if any, of s to re, using\n *   re.exec(s). Returns a vector, containing first the matching\n *   substring, then any capturing groups if the regular expression contains\n *   capturing groups.\n */\ncljs.core.re_find \x3d (function cljs$core$re_find(re,s){\nif(typeof s \x3d\x3d\x3d \x27string\x27){\nvar matches \x3d re.exec(s);\nif((matches \x3d\x3d null)){\nreturn null;\n} else {\nif((((matches).length) \x3d\x3d\x3d (1))){\nreturn (matches[(0)]);\n} else {\nreturn cljs.core.vec(matches);\n}\n}\n} else {\nthrow (new TypeError(\x22re-find must match against a string.\x22));\n}\n});\ncljs.core.re_seq_STAR_ \x3d (function cljs$core$re_seq_STAR_(re,s){\nvar temp__5757__auto__ \x3d re.exec(s);\nif((temp__5757__auto__ \x3d\x3d null)){\nreturn null;\n} else {\nvar matches \x3d temp__5757__auto__;\nvar match_str \x3d (matches[(0)]);\nvar match_vals \x3d (((matches.length \x3d\x3d\x3d (1)))?match_str:cljs.core.vec(matches));\nreturn cljs.core.cons(match_vals,(new cljs.core.LazySeq(null,(function (){\nvar post_idx \x3d (matches.index + (function (){var x__4249__auto__ \x3d (1);\nvar y__4250__auto__ \x3d match_str.length;\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})());\nif((post_idx \x3c\x3d s.length)){\nvar G__39491 \x3d re;\nvar G__39492 \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,post_idx);\nreturn (cljs.core.re_seq_STAR_.cljs$core$IFn$_invoke$arity$2 ? cljs.core.re_seq_STAR_.cljs$core$IFn$_invoke$arity$2(G__39491,G__39492) : cljs.core.re_seq_STAR_.call(null,G__39491,G__39492));\n} else {\nreturn null;\n}\n}),null,null)));\n}\n});\n/**\n * Returns a lazy sequence of successive matches of re in s.\n */\ncljs.core.re_seq \x3d (function cljs$core$re_seq(re,s){\nif(typeof s \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.re_seq_STAR_(re,s);\n} else {\nthrow (new TypeError(\x22re-seq must match against a string.\x22));\n}\n});\n/**\n * Returns an instance of RegExp which has compiled the provided string.\n */\ncljs.core.re_pattern \x3d (function cljs$core$re_pattern(s){\nif((s instanceof RegExp)){\nreturn s;\n} else {\nvar vec__39493 \x3d cljs.core.re_find(/^\\(\\?([idmsux]*)\\)/,s);\nvar prefix \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39493,(0),null);\nvar flags \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39493,(1),null);\nvar pattern \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(((prefix \x3d\x3d null))?(0):((prefix).length)));\nreturn (new RegExp(pattern,(function (){var or__4160__auto__ \x3d flags;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22\x22;\n}\n})()));\n}\n});\ncljs.core.pr_sequential_writer \x3d (function cljs$core$pr_sequential_writer(writer,print_one,begin,sep,end,opts,coll){\nvar _STAR_print_level_STAR__orig_val__39496 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_level_STAR__temp_val__39497 \x3d (((cljs.core._STAR_print_level_STAR_ \x3d\x3d null))?null:(cljs.core._STAR_print_level_STAR_ - (1)));\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__39497);\n\ntry{if((((!((cljs.core._STAR_print_level_STAR_ \x3d\x3d null)))) \x26\x26 ((cljs.core._STAR_print_level_STAR_ \x3c (0))))){\nreturn cljs.core._write(writer,\x22#\x22);\n} else {\ncljs.core._write(writer,begin);\n\nif((new cljs.core.Keyword(null,\x22print-length\x22,\x22print-length\x22,1931866356).cljs$core$IFn$_invoke$arity$1(opts) \x3d\x3d\x3d (0))){\nif(cljs.core.seq(coll)){\ncljs.core._write(writer,(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22more-marker\x22,\x22more-marker\x22,-14717935).cljs$core$IFn$_invoke$arity$1(opts);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22...\x22;\n}\n})());\n} else {\n}\n} else {\nif(cljs.core.seq(coll)){\nvar G__39498_48243 \x3d cljs.core.first(coll);\nvar G__39499_48244 \x3d writer;\nvar G__39500_48245 \x3d opts;\n(print_one.cljs$core$IFn$_invoke$arity$3 ? print_one.cljs$core$IFn$_invoke$arity$3(G__39498_48243,G__39499_48244,G__39500_48245) : print_one.call(null,G__39498_48243,G__39499_48244,G__39500_48245));\n} else {\n}\n\nvar coll_48246__$1 \x3d cljs.core.next(coll);\nvar n_48247 \x3d (new cljs.core.Keyword(null,\x22print-length\x22,\x22print-length\x22,1931866356).cljs$core$IFn$_invoke$arity$1(opts) - (1));\nwhile(true){\nif(((coll_48246__$1) \x26\x26 ((((n_48247 \x3d\x3d null)) || ((!((n_48247 \x3d\x3d\x3d (0))))))))){\ncljs.core._write(writer,sep);\n\nvar G__39501_48254 \x3d cljs.core.first(coll_48246__$1);\nvar G__39502_48255 \x3d writer;\nvar G__39503_48256 \x3d opts;\n(print_one.cljs$core$IFn$_invoke$arity$3 ? print_one.cljs$core$IFn$_invoke$arity$3(G__39501_48254,G__39502_48255,G__39503_48256) : print_one.call(null,G__39501_48254,G__39502_48255,G__39503_48256));\n\nvar G__48257 \x3d cljs.core.next(coll_48246__$1);\nvar G__48258 \x3d (n_48247 - (1));\ncoll_48246__$1 \x3d G__48257;\nn_48247 \x3d G__48258;\ncontinue;\n} else {\nif(((cljs.core.seq(coll_48246__$1)) \x26\x26 ((n_48247 \x3d\x3d\x3d (0))))){\ncljs.core._write(writer,sep);\n\ncljs.core._write(writer,(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22more-marker\x22,\x22more-marker\x22,-14717935).cljs$core$IFn$_invoke$arity$1(opts);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22...\x22;\n}\n})());\n} else {\n}\n}\nbreak;\n}\n}\n\nreturn cljs.core._write(writer,end);\n}\n}finally {(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__39496);\n}});\ncljs.core.write_all \x3d (function cljs$core$write_all(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48259 \x3d arguments.length;\nvar i__4772__auto___48260 \x3d (0);\nwhile(true){\nif((i__4772__auto___48260 \x3c len__4771__auto___48259)){\nargs__4777__auto__.push((arguments[i__4772__auto___48260]));\n\nvar G__48261 \x3d (i__4772__auto___48260 + (1));\ni__4772__auto___48260 \x3d G__48261;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic \x3d (function (writer,ss){\nvar seq__39506 \x3d cljs.core.seq(ss);\nvar chunk__39507 \x3d null;\nvar count__39508 \x3d (0);\nvar i__39509 \x3d (0);\nwhile(true){\nif((i__39509 \x3c count__39508)){\nvar s \x3d chunk__39507.cljs$core$IIndexed$_nth$arity$2(null,i__39509);\ncljs.core._write(writer,s);\n\n\nvar G__48262 \x3d seq__39506;\nvar G__48263 \x3d chunk__39507;\nvar G__48264 \x3d count__39508;\nvar G__48265 \x3d (i__39509 + (1));\nseq__39506 \x3d G__48262;\nchunk__39507 \x3d G__48263;\ncount__39508 \x3d G__48264;\ni__39509 \x3d G__48265;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39506);\nif(temp__5753__auto__){\nvar seq__39506__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39506__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39506__$1);\nvar G__48268 \x3d cljs.core.chunk_rest(seq__39506__$1);\nvar G__48269 \x3d c__4591__auto__;\nvar G__48270 \x3d cljs.core.count(c__4591__auto__);\nvar G__48271 \x3d (0);\nseq__39506 \x3d G__48268;\nchunk__39507 \x3d G__48269;\ncount__39508 \x3d G__48270;\ni__39509 \x3d G__48271;\ncontinue;\n} else {\nvar s \x3d cljs.core.first(seq__39506__$1);\ncljs.core._write(writer,s);\n\n\nvar G__48276 \x3d cljs.core.next(seq__39506__$1);\nvar G__48277 \x3d null;\nvar G__48278 \x3d (0);\nvar G__48279 \x3d (0);\nseq__39506 \x3d G__48276;\nchunk__39507 \x3d G__48277;\ncount__39508 \x3d G__48278;\ni__39509 \x3d G__48279;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.write_all.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.write_all.cljs$lang$applyTo \x3d (function (seq39504){\nvar G__39505 \x3d cljs.core.first(seq39504);\nvar seq39504__$1 \x3d cljs.core.next(seq39504);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39505,seq39504__$1);\n}));\n\ncljs.core.string_print \x3d (function cljs$core$string_print(x){\nif((cljs.core._STAR_print_fn_STAR_ \x3d\x3d null)){\nthrow (new Error(\x22No *print-fn* fn set for evaluation environment\x22));\n} else {\n}\n\ncljs.core._STAR_print_fn_STAR_.call(null,x);\n\nreturn null;\n});\ncljs.core.flush \x3d (function cljs$core$flush(){\nreturn null;\n});\ncljs.core.char_escapes \x3d (function (){var obj39511 \x3d ({\x22\\\x22\x22:\x22\\\\\\\x22\x22,\x22\\\\\x22:\x22\\\\\\\\\x22,\x22\\b\x22:\x22\\\\b\x22,\x22\\f\x22:\x22\\\\f\x22,\x22\\n\x22:\x22\\\\n\x22,\x22\\r\x22:\x22\\\\r\x22,\x22\\t\x22:\x22\\\\t\x22});\nreturn obj39511;\n})();\ncljs.core.quote_string \x3d (function cljs$core$quote_string(s){\nreturn [\x22\\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(s.replace(RegExp(\x22[\\\\\\\\\\\x22\\b\\f\\n\\r\\t]\x22,\x22g\x22),(function (match){\nreturn (cljs.core.char_escapes[match]);\n}))),\x22\\\x22\x22].join(\x27\x27);\n});\ncljs.core.print_meta_QMARK_ \x3d (function cljs$core$print_meta_QMARK_(opts,obj){\nif(cljs.core.boolean$(cljs.core.get.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964)))){\nif((((!((obj \x3d\x3d null))))?(((((obj.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IMeta$))))?true:false):false)){\nreturn (!((cljs.core.meta(obj) \x3d\x3d null)));\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n});\ncljs.core.pr_writer_impl \x3d (function cljs$core$pr_writer_impl(obj,writer,opts){\nif((obj \x3d\x3d null)){\nreturn cljs.core._write(writer,\x22nil\x22);\n} else {\nif(cljs.core.print_meta_QMARK_(opts,obj)){\ncljs.core._write(writer,\x22^\x22);\n\nvar G__39516_48292 \x3d cljs.core.meta(obj);\nvar G__39517_48293 \x3d writer;\nvar G__39518_48294 \x3d opts;\n(cljs.core.pr_writer.cljs$core$IFn$_invoke$arity$3 ? cljs.core.pr_writer.cljs$core$IFn$_invoke$arity$3(G__39516_48292,G__39517_48293,G__39518_48294) : cljs.core.pr_writer.call(null,G__39516_48292,G__39517_48293,G__39518_48294));\n\ncljs.core._write(writer,\x22 \x22);\n} else {\n}\n\nif(obj.cljs$lang$type){\nreturn obj.cljs$lang$ctorPrWriter(obj,writer,opts);\n} else {\nif((((!((obj \x3d\x3d null))))?(((((obj.cljs$lang$protocol_mask$partition0$ \x26 (2147483648))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IPrintWithWriter$))))?true:(((!obj.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IPrintWithWriter,obj):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IPrintWithWriter,obj))){\nreturn cljs.core._pr_writer(obj,writer,opts);\n} else {\nif(((obj \x3d\x3d\x3d true) || (obj \x3d\x3d\x3d false))){\nreturn cljs.core._write(writer,cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj));\n} else {\nif(typeof obj \x3d\x3d\x3d \x27number\x27){\nreturn cljs.core._write(writer,((isNaN(obj))?\x22##NaN\x22:(((obj \x3d\x3d\x3d Number.POSITIVE_INFINITY))?\x22##Inf\x22:(((obj \x3d\x3d\x3d Number.NEGATIVE_INFINITY))?\x22##-Inf\x22:cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj)\n))));\n} else {\nif(cljs.core.object_QMARK_(obj)){\ncljs.core._write(writer,\x22#js \x22);\n\nvar G__39520 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (k){\nreturn (new cljs.core.MapEntry((function (){var G__39524 \x3d k;\nif((!((cljs.core.re_matches(/[A-Za-z_\\*\\+\\?!\\-\x27][\\w\\*\\+\\?!\\-\x27]*/,k) \x3d\x3d null)))){\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(G__39524);\n} else {\nreturn G__39524;\n}\n})(),(obj[k]),null));\n}),cljs.core.js_keys(obj));\nvar G__39521 \x3d cljs.core.pr_writer;\nvar G__39522 \x3d writer;\nvar G__39523 \x3d opts;\nreturn (cljs.core.print_map.cljs$core$IFn$_invoke$arity$4 ? cljs.core.print_map.cljs$core$IFn$_invoke$arity$4(G__39520,G__39521,G__39522,G__39523) : cljs.core.print_map.call(null,G__39520,G__39521,G__39522,G__39523));\n} else {\nif(cljs.core.array_QMARK_(obj)){\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22#js [\x22,\x22 \x22,\x22]\x22,opts,obj);\n} else {\nif(typeof obj \x3d\x3d\x3d \x27string\x27){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760).cljs$core$IFn$_invoke$arity$1(opts))){\nreturn cljs.core._write(writer,cljs.core.quote_string(obj));\n} else {\nreturn cljs.core._write(writer,obj);\n}\n} else {\nif(typeof obj \x3d\x3d\x3d \x27function\x27){\nvar name \x3d obj.name;\nvar name__$1 \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d (name \x3d\x3d null);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn goog.string.isEmpty(name);\n}\n})())?\x22Function\x22:name);\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#object[\x22,name__$1,(cljs.core.truth_(cljs.core._STAR_print_fn_bodies_STAR_)?[\x22 \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj),\x22\\\x22\x22].join(\x27\x27):\x22\x22),\x22]\x22], 0));\n} else {\nif((obj instanceof Date)){\nvar normalize \x3d (function (n,len){\nvar ns \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(n);\nwhile(true){\nif((((ns).length) \x3c len)){\nvar G__48311 \x3d [\x220\x22,ns].join(\x27\x27);\nns \x3d G__48311;\ncontinue;\n} else {\nreturn ns;\n}\nbreak;\n}\n});\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#inst \\\x22\x22,normalize(obj.getUTCFullYear(),(4)),\x22-\x22,normalize((obj.getUTCMonth() + (1)),(2)),\x22-\x22,normalize(obj.getUTCDate(),(2)),\x22T\x22,normalize(obj.getUTCHours(),(2)),\x22:\x22,normalize(obj.getUTCMinutes(),(2)),\x22:\x22,normalize(obj.getUTCSeconds(),(2)),\x22.\x22,normalize(obj.getUTCMilliseconds(),(3)),\x22-\x22,\x2200:00\\\x22\x22], 0));\n} else {\nif(cljs.core.regexp_QMARK_(obj)){\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#\\\x22\x22,obj.source,\x22\\\x22\x22], 0));\n} else {\nif(cljs.core.js_symbol_QMARK_(obj)){\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#object[\x22,obj.toString(),\x22]\x22], 0));\n} else {\nif(cljs.core.truth_((function (){var G__39525 \x3d obj;\nvar G__39525__$1 \x3d (((G__39525 \x3d\x3d null))?null:G__39525.constructor);\nif((G__39525__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn G__39525__$1.cljs$lang$ctorStr;\n}\n})())){\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#object[\x22,obj.constructor.cljs$lang$ctorStr.replace((new RegExp(\x22/\x22,\x22g\x22)),\x22.\x22),\x22]\x22], 0));\n} else {\nvar name \x3d (function (){var G__39526 \x3d obj;\nvar G__39526__$1 \x3d (((G__39526 \x3d\x3d null))?null:G__39526.constructor);\nif((G__39526__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn G__39526__$1.name;\n}\n})();\nvar name__$1 \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d (name \x3d\x3d null);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn goog.string.isEmpty(name);\n}\n})())?\x22Object\x22:name);\nif((obj.constructor \x3d\x3d null)){\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#object[\x22,name__$1,\x22]\x22], 0));\n} else {\nreturn cljs.core.write_all.cljs$core$IFn$_invoke$arity$variadic(writer,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22#object[\x22,name__$1,\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj),\x22]\x22], 0));\n}\n}\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n\n}\n});\n/**\n * Prefer this to pr-seq, because it makes the printing function\n * configurable, allowing efficient implementations such as appending\n * to a StringBuffer.\n */\ncljs.core.pr_writer \x3d (function cljs$core$pr_writer(obj,writer,opts){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22alt-impl\x22,\x22alt-impl\x22,670969595).cljs$core$IFn$_invoke$arity$1(opts);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar alt_impl \x3d temp__5751__auto__;\nvar G__39527 \x3d obj;\nvar G__39528 \x3d writer;\nvar G__39529 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(opts,new cljs.core.Keyword(null,\x22fallback-impl\x22,\x22fallback-impl\x22,-1501286995),cljs.core.pr_writer_impl);\nreturn (alt_impl.cljs$core$IFn$_invoke$arity$3 ? alt_impl.cljs$core$IFn$_invoke$arity$3(G__39527,G__39528,G__39529) : alt_impl.call(null,G__39527,G__39528,G__39529));\n} else {\nreturn cljs.core.pr_writer_impl(obj,writer,opts);\n}\n});\ncljs.core.pr_seq_writer \x3d (function cljs$core$pr_seq_writer(objs,writer,opts){\ncljs.core.pr_writer(cljs.core.first(objs),writer,opts);\n\nvar seq__39530 \x3d cljs.core.seq(cljs.core.next(objs));\nvar chunk__39531 \x3d null;\nvar count__39532 \x3d (0);\nvar i__39533 \x3d (0);\nwhile(true){\nif((i__39533 \x3c count__39532)){\nvar obj \x3d chunk__39531.cljs$core$IIndexed$_nth$arity$2(null,i__39533);\ncljs.core._write(writer,\x22 \x22);\n\ncljs.core.pr_writer(obj,writer,opts);\n\n\nvar G__48328 \x3d seq__39530;\nvar G__48329 \x3d chunk__39531;\nvar G__48330 \x3d count__39532;\nvar G__48331 \x3d (i__39533 + (1));\nseq__39530 \x3d G__48328;\nchunk__39531 \x3d G__48329;\ncount__39532 \x3d G__48330;\ni__39533 \x3d G__48331;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39530);\nif(temp__5753__auto__){\nvar seq__39530__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39530__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39530__$1);\nvar G__48334 \x3d cljs.core.chunk_rest(seq__39530__$1);\nvar G__48335 \x3d c__4591__auto__;\nvar G__48336 \x3d cljs.core.count(c__4591__auto__);\nvar G__48337 \x3d (0);\nseq__39530 \x3d G__48334;\nchunk__39531 \x3d G__48335;\ncount__39532 \x3d G__48336;\ni__39533 \x3d G__48337;\ncontinue;\n} else {\nvar obj \x3d cljs.core.first(seq__39530__$1);\ncljs.core._write(writer,\x22 \x22);\n\ncljs.core.pr_writer(obj,writer,opts);\n\n\nvar G__48340 \x3d cljs.core.next(seq__39530__$1);\nvar G__48341 \x3d null;\nvar G__48342 \x3d (0);\nvar G__48343 \x3d (0);\nseq__39530 \x3d G__48340;\nchunk__39531 \x3d G__48341;\ncount__39532 \x3d G__48342;\ni__39533 \x3d G__48343;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\ncljs.core.pr_sb_with_opts \x3d (function cljs$core$pr_sb_with_opts(objs,opts){\nvar sb \x3d (new goog.string.StringBuffer());\nvar writer \x3d (new cljs.core.StringBufferWriter(sb));\ncljs.core.pr_seq_writer(objs,writer,opts);\n\nwriter.cljs$core$IWriter$_flush$arity$1(null);\n\nreturn sb;\n});\n/**\n * Prints a sequence of objects to a string, observing all the\n *   options given in opts\n */\ncljs.core.pr_str_with_opts \x3d (function cljs$core$pr_str_with_opts(objs,opts){\nif(cljs.core.empty_QMARK_(objs)){\nreturn \x22\x22;\n} else {\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_sb_with_opts(objs,opts));\n}\n});\n/**\n * Same as pr-str-with-opts followed by (newline)\n */\ncljs.core.prn_str_with_opts \x3d (function cljs$core$prn_str_with_opts(objs,opts){\nif(cljs.core.empty_QMARK_(objs)){\nreturn \x22\\n\x22;\n} else {\nvar sb \x3d cljs.core.pr_sb_with_opts(objs,opts);\nsb.append(\x22\\n\x22);\n\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n}\n});\n/**\n * Prints a sequence of objects using string-print, observing all\n *   the options given in opts\n */\ncljs.core.pr_with_opts \x3d (function cljs$core$pr_with_opts(objs,opts){\nreturn cljs.core.string_print(cljs.core.pr_str_with_opts(objs,opts));\n});\n/**\n * Prints a newline using *print-fn*\n */\ncljs.core.newline \x3d (function cljs$core$newline(var_args){\nvar G__39535 \x3d arguments.length;\nswitch (G__39535) {\ncase 0:\nreturn cljs.core.newline.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.newline.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.newline.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.newline.cljs$core$IFn$_invoke$arity$1(null);\n}));\n\n(cljs.core.newline.cljs$core$IFn$_invoke$arity$1 \x3d (function (opts){\ncljs.core.string_print(\x22\\n\x22);\n\nif(cljs.core.truth_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22flush-on-newline\x22,\x22flush-on-newline\x22,-151457939)))){\nreturn cljs.core.flush();\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.newline.cljs$lang$maxFixedArity \x3d 1);\n\n/**\n * pr to a string, returning it. Fundamental entrypoint to IPrintWithWriter.\n */\ncljs.core.pr_str \x3d (function cljs$core$pr_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48353 \x3d arguments.length;\nvar i__4772__auto___48354 \x3d (0);\nwhile(true){\nif((i__4772__auto___48354 \x3c len__4771__auto___48353)){\nargs__4777__auto__.push((arguments[i__4772__auto___48354]));\n\nvar G__48355 \x3d (i__4772__auto___48354 + (1));\ni__4772__auto___48354 \x3d G__48355;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nreturn cljs.core.pr_str_with_opts(objs,cljs.core.pr_opts());\n}));\n\n(cljs.core.pr_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.pr_str.cljs$lang$applyTo \x3d (function (seq39536){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39536));\n}));\n\n/**\n * Same as pr-str followed by (newline)\n */\ncljs.core.prn_str \x3d (function cljs$core$prn_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48357 \x3d arguments.length;\nvar i__4772__auto___48358 \x3d (0);\nwhile(true){\nif((i__4772__auto___48358 \x3c len__4771__auto___48357)){\nargs__4777__auto__.push((arguments[i__4772__auto___48358]));\n\nvar G__48359 \x3d (i__4772__auto___48358 + (1));\ni__4772__auto___48358 \x3d G__48359;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.prn_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.prn_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nreturn cljs.core.prn_str_with_opts(objs,cljs.core.pr_opts());\n}));\n\n(cljs.core.prn_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.prn_str.cljs$lang$applyTo \x3d (function (seq39537){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39537));\n}));\n\n/**\n * Prints the object(s) using string-print.  Prints the\n *   object(s), separated by spaces if there is more than one.\n *   By default, pr and prn print in a way that objects can be\n *   read by the reader\n */\ncljs.core.pr \x3d (function cljs$core$pr(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48362 \x3d arguments.length;\nvar i__4772__auto___48363 \x3d (0);\nwhile(true){\nif((i__4772__auto___48363 \x3c len__4771__auto___48362)){\nargs__4777__auto__.push((arguments[i__4772__auto___48363]));\n\nvar G__48366 \x3d (i__4772__auto___48363 + (1));\ni__4772__auto___48363 \x3d G__48366;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nreturn cljs.core.pr_with_opts(objs,cljs.core.pr_opts());\n}));\n\n(cljs.core.pr.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.pr.cljs$lang$applyTo \x3d (function (seq39538){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39538));\n}));\n\n/**\n * Prints the object(s) using string-print.\n *   print and println produce output for human consumption.\n * @param {...*} var_args\n */\ncljs.core.print \x3d (function() { \nvar cljs$core$cljs_core_print__delegate \x3d function (objs){\nreturn cljs.core.pr_with_opts(objs,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.pr_opts(),new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760),false));\n};\nvar cljs$core$cljs_core_print \x3d function (var_args){\nvar objs \x3d null;\nif (arguments.length \x3e 0) {\nvar G__48370__i \x3d 0, G__48370__a \x3d new Array(arguments.length -  0);\nwhile (G__48370__i \x3c G__48370__a.length) {G__48370__a[G__48370__i] \x3d arguments[G__48370__i + 0]; ++G__48370__i;}\n  objs \x3d new cljs.core.IndexedSeq(G__48370__a,0,null);\n} \nreturn cljs$core$cljs_core_print__delegate.call(this,objs);};\ncljs$core$cljs_core_print.cljs$lang$maxFixedArity \x3d 0;\ncljs$core$cljs_core_print.cljs$lang$applyTo \x3d (function (arglist__48371){\nvar objs \x3d cljs.core.seq(arglist__48371);\nreturn cljs$core$cljs_core_print__delegate(objs);\n});\ncljs$core$cljs_core_print.cljs$core$IFn$_invoke$arity$variadic \x3d cljs$core$cljs_core_print__delegate;\nreturn cljs$core$cljs_core_print;\n})()\n;\n/**\n * print to a string, returning it\n */\ncljs.core.print_str \x3d (function cljs$core$print_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48373 \x3d arguments.length;\nvar i__4772__auto___48374 \x3d (0);\nwhile(true){\nif((i__4772__auto___48374 \x3c len__4771__auto___48373)){\nargs__4777__auto__.push((arguments[i__4772__auto___48374]));\n\nvar G__48376 \x3d (i__4772__auto___48374 + (1));\ni__4772__auto___48374 \x3d G__48376;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.print_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.print_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nreturn cljs.core.pr_str_with_opts(objs,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.pr_opts(),new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760),false));\n}));\n\n(cljs.core.print_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.print_str.cljs$lang$applyTo \x3d (function (seq39539){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39539));\n}));\n\n/**\n * Same as print followed by (newline)\n */\ncljs.core.println \x3d (function cljs$core$println(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48382 \x3d arguments.length;\nvar i__4772__auto___48383 \x3d (0);\nwhile(true){\nif((i__4772__auto___48383 \x3c len__4771__auto___48382)){\nargs__4777__auto__.push((arguments[i__4772__auto___48383]));\n\nvar G__48386 \x3d (i__4772__auto___48383 + (1));\ni__4772__auto___48383 \x3d G__48386;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.println.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\ncljs.core.pr_with_opts(objs,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.pr_opts(),new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760),false));\n\nif(cljs.core.truth_(cljs.core._STAR_print_newline_STAR_)){\nreturn cljs.core.newline.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_opts());\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.println.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.println.cljs$lang$applyTo \x3d (function (seq39540){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39540));\n}));\n\n/**\n * println to a string, returning it\n */\ncljs.core.println_str \x3d (function cljs$core$println_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48398 \x3d arguments.length;\nvar i__4772__auto___48399 \x3d (0);\nwhile(true){\nif((i__4772__auto___48399 \x3c len__4771__auto___48398)){\nargs__4777__auto__.push((arguments[i__4772__auto___48399]));\n\nvar G__48400 \x3d (i__4772__auto___48399 + (1));\ni__4772__auto___48399 \x3d G__48400;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.println_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.println_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nreturn cljs.core.prn_str_with_opts(objs,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.pr_opts(),new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760),false));\n}));\n\n(cljs.core.println_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.println_str.cljs$lang$applyTo \x3d (function (seq39541){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39541));\n}));\n\n/**\n * Same as pr followed by (newline).\n */\ncljs.core.prn \x3d (function cljs$core$prn(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48401 \x3d arguments.length;\nvar i__4772__auto___48402 \x3d (0);\nwhile(true){\nif((i__4772__auto___48402 \x3c len__4771__auto___48401)){\nargs__4777__auto__.push((arguments[i__4772__auto___48402]));\n\nvar G__48403 \x3d (i__4772__auto___48402 + (1));\ni__4772__auto___48402 \x3d G__48403;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.prn.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.prn.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\ncljs.core.pr_with_opts(objs,cljs.core.pr_opts());\n\nif(cljs.core.truth_(cljs.core._STAR_print_newline_STAR_)){\nreturn cljs.core.newline.cljs$core$IFn$_invoke$arity$1(cljs.core.pr_opts());\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.prn.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.prn.cljs$lang$applyTo \x3d (function (seq39542){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39542));\n}));\n\ncljs.core.strip_ns \x3d (function cljs$core$strip_ns(named){\nif((named instanceof cljs.core.Symbol)){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(null,cljs.core.name(named));\n} else {\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(null,cljs.core.name(named));\n}\n});\n/**\n * Returns [lifted-ns lifted-map] or nil if m can\x27t be lifted.\n */\ncljs.core.lift_ns \x3d (function cljs$core$lift_ns(m){\nif(cljs.core.truth_(cljs.core._STAR_print_namespace_maps_STAR_)){\nvar ns \x3d null;\nvar G__39549 \x3d cljs.core.seq(m);\nvar vec__39550 \x3d G__39549;\nvar seq__39551 \x3d cljs.core.seq(vec__39550);\nvar first__39552 \x3d cljs.core.first(seq__39551);\nvar seq__39551__$1 \x3d cljs.core.next(seq__39551);\nvar vec__39553 \x3d first__39552;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39553,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39553,(1),null);\nvar entry \x3d vec__39553;\nvar entries \x3d seq__39551__$1;\nvar lm \x3d cljs.core.empty(m);\nvar ns__$1 \x3d ns;\nvar G__39549__$1 \x3d G__39549;\nvar lm__$1 \x3d lm;\nwhile(true){\nvar ns__$2 \x3d ns__$1;\nvar vec__39562 \x3d G__39549__$1;\nvar seq__39563 \x3d cljs.core.seq(vec__39562);\nvar first__39564 \x3d cljs.core.first(seq__39563);\nvar seq__39563__$1 \x3d cljs.core.next(seq__39563);\nvar vec__39565 \x3d first__39564;\nvar k__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39565,(0),null);\nvar v__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39565,(1),null);\nvar entry__$1 \x3d vec__39565;\nvar entries__$1 \x3d seq__39563__$1;\nvar lm__$2 \x3d lm__$1;\nif(cljs.core.truth_(entry__$1)){\nif((((k__$1 instanceof cljs.core.Keyword)) || ((k__$1 instanceof cljs.core.Symbol)))){\nif(cljs.core.truth_(ns__$2)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ns__$2,cljs.core.namespace(k__$1))){\nvar G__48423 \x3d ns__$2;\nvar G__48424 \x3d entries__$1;\nvar G__48425 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(lm__$2,cljs.core.strip_ns(k__$1),v__$1);\nns__$1 \x3d G__48423;\nG__39549__$1 \x3d G__48424;\nlm__$1 \x3d G__48425;\ncontinue;\n} else {\nreturn null;\n}\n} else {\nvar temp__5753__auto__ \x3d cljs.core.namespace(k__$1);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar new_ns \x3d temp__5753__auto__;\nvar G__48430 \x3d new_ns;\nvar G__48431 \x3d entries__$1;\nvar G__48432 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(lm__$2,cljs.core.strip_ns(k__$1),v__$1);\nns__$1 \x3d G__48430;\nG__39549__$1 \x3d G__48431;\nlm__$1 \x3d G__48432;\ncontinue;\n} else {\nreturn null;\n}\n}\n} else {\nreturn null;\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ns__$2,lm__$2], null);\n}\nbreak;\n}\n} else {\nreturn null;\n}\n});\ncljs.core.print_prefix_map \x3d (function cljs$core$print_prefix_map(prefix,m,print_one,writer,opts){\nreturn cljs.core.pr_sequential_writer(writer,(function (e,w,opts__$1){\nvar G__39568_48437 \x3d cljs.core.key(e);\nvar G__39569_48438 \x3d w;\nvar G__39570_48439 \x3d opts__$1;\n(print_one.cljs$core$IFn$_invoke$arity$3 ? print_one.cljs$core$IFn$_invoke$arity$3(G__39568_48437,G__39569_48438,G__39570_48439) : print_one.call(null,G__39568_48437,G__39569_48438,G__39570_48439));\n\ncljs.core._write(w,\x22 \x22);\n\nvar G__39571 \x3d cljs.core.val(e);\nvar G__39572 \x3d w;\nvar G__39573 \x3d opts__$1;\nreturn (print_one.cljs$core$IFn$_invoke$arity$3 ? print_one.cljs$core$IFn$_invoke$arity$3(G__39571,G__39572,G__39573) : print_one.call(null,G__39571,G__39572,G__39573));\n}),[cljs.core.str.cljs$core$IFn$_invoke$arity$1(prefix),\x22{\x22].join(\x27\x27),\x22, \x22,\x22}\x22,opts,cljs.core.seq(m));\n});\ncljs.core.print_map \x3d (function cljs$core$print_map(m,print_one,writer,opts){\nvar vec__39574 \x3d ((cljs.core.map_QMARK_(m))?cljs.core.lift_ns(m):null);\nvar ns \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39574,(0),null);\nvar lift_map \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39574,(1),null);\nif(cljs.core.truth_(ns)){\nreturn cljs.core.print_prefix_map([\x22#:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns)].join(\x27\x27),lift_map,print_one,writer,opts);\n} else {\nreturn cljs.core.print_prefix_map(null,m,print_one,writer,opts);\n}\n});\n(cljs.core.Volatile.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Volatile.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (a,writer,opts){\nvar a__$1 \x3d this;\ncljs.core._write(writer,\x22#object[cljs.core.Volatile \x22);\n\ncljs.core.pr_writer(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),a__$1.state], null),writer,opts);\n\nreturn cljs.core._write(writer,\x22]\x22);\n}));\n\n(cljs.core.Var.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Var.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (a,writer,opts){\nvar a__$1 \x3d this;\ncljs.core._write(writer,\x22#\x27\x22);\n\nreturn cljs.core.pr_writer(a__$1.sym,writer,opts);\n}));\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.IndexedSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.LazySeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.LazySeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.MapEntry.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22[\x22,\x22 \x22,\x22]\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentTreeMapSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.NodeSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.NodeSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.BlackNode.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22[\x22,\x22 \x22,\x22]\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentArrayMapSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.ES6IteratorSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ES6IteratorSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentTreeSet.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22#{\x22,\x22 \x22,\x22}\x22,opts,coll__$1);\n}));\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ChunkedSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.ObjMap.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ObjMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.print_map(coll__$1,cljs.core.pr_writer,writer,opts);\n}));\n\n(cljs.core.Cons.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Cons.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.Iterate.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Iterate.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.RSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.RSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.IntegerRange.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.IntegerRange.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentHashMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.print_map(coll__$1,cljs.core.pr_writer,writer,opts);\n}));\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ArrayNodeSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Subvec.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22[\x22,\x22 \x22,\x22]\x22,opts,coll__$1);\n}));\n\n(cljs.core.Cycle.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Cycle.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentTreeMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.print_map(coll__$1,cljs.core.pr_writer,writer,opts);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentHashSet.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22#{\x22,\x22 \x22,\x22}\x22,opts,coll__$1);\n}));\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ChunkedCons.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.Atom.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Atom.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (a,writer,opts){\nvar a__$1 \x3d this;\ncljs.core._write(writer,\x22#object[cljs.core.Atom \x22);\n\ncljs.core.pr_writer(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),a__$1.state], null),writer,opts);\n\nreturn cljs.core._write(writer,\x22]\x22);\n}));\n\n(cljs.core.ValSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ValSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.RedNode.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22[\x22,\x22 \x22,\x22]\x22,opts,coll__$1);\n}));\n\n(cljs.core.Repeat.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Repeat.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentVector.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22[\x22,\x22 \x22,\x22]\x22,opts,coll__$1);\n}));\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentQueueSeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.EmptyList.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.EmptyList.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core._write(writer,\x22()\x22);\n}));\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentQueue.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22#queue [\x22,\x22 \x22,\x22]\x22,opts,cljs.core.seq(coll__$1));\n}));\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentArrayMap.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.print_map(coll__$1,cljs.core.pr_writer,writer,opts);\n}));\n\n(cljs.core.Range.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Range.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.TransformerIterator.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.TransformerIterator.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.KeySeq.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.KeySeq.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n\n(cljs.core.List.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.List.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$1);\n}));\n(cljs.core.Symbol.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Symbol.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif((y instanceof cljs.core.Symbol)){\nreturn cljs.core.compare_symbols(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.Keyword.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Keyword.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif((y instanceof cljs.core.Keyword)){\nreturn cljs.core.compare_keywords(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.Subvec.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Subvec.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif(cljs.core.vector_QMARK_(y)){\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.PersistentVector.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentVector.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif(cljs.core.vector_QMARK_(y)){\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.MapEntry.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.MapEntry.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif(cljs.core.vector_QMARK_(y)){\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.BlackNode.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.BlackNode.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif(cljs.core.vector_QMARK_(y)){\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.RedNode.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.RedNode.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (x,y){\nvar x__$1 \x3d this;\nif(cljs.core.vector_QMARK_(y)){\nreturn cljs.core.compare_indexed.cljs$core$IFn$_invoke$arity$2(x__$1,y);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27)));\n}\n}));\n/**\n * Atomically sets the metadata for a namespace/var/ref/agent/atom to be:\n * \n *   (apply f its-current-meta args)\n * \n *   f must be free of side-effects\n */\ncljs.core.alter_meta_BANG_ \x3d (function cljs$core$alter_meta_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48534 \x3d arguments.length;\nvar i__4772__auto___48535 \x3d (0);\nwhile(true){\nif((i__4772__auto___48535 \x3c len__4771__auto___48534)){\nargs__4777__auto__.push((arguments[i__4772__auto___48535]));\n\nvar G__48536 \x3d (i__4772__auto___48535 + (1));\ni__4772__auto___48535 \x3d G__48536;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn cljs.core.alter_meta_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(cljs.core.alter_meta_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (iref,f,args){\nreturn (iref.meta \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$3(f,iref.meta,args));\n}));\n\n(cljs.core.alter_meta_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(cljs.core.alter_meta_BANG_.cljs$lang$applyTo \x3d (function (seq39577){\nvar G__39578 \x3d cljs.core.first(seq39577);\nvar seq39577__$1 \x3d cljs.core.next(seq39577);\nvar G__39579 \x3d cljs.core.first(seq39577__$1);\nvar seq39577__$2 \x3d cljs.core.next(seq39577__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39578,G__39579,seq39577__$2);\n}));\n\n/**\n * Atomically resets the metadata for an atom\n */\ncljs.core.reset_meta_BANG_ \x3d (function cljs$core$reset_meta_BANG_(iref,m){\nreturn (iref.meta \x3d m);\n});\n/**\n * Adds a watch function to an atom reference. The watch fn must be a\n *   fn of 4 args: a key, the reference, its old-state, its\n *   new-state. Whenever the reference\x27s state might have been changed,\n *   any registered watches will have their functions called. The watch\n *   fn will be called synchronously. Note that an atom\x27s state\n *   may have changed again prior to the fn call, so use old/new-state\n *   rather than derefing the reference. Keys must be unique per\n *   reference, and can be used to remove the watch with remove-watch,\n *   but are otherwise considered opaque by the watch mechanism.  Bear in\n *   mind that regardless of the result or action of the watch fns the\n *   atom\x27s value will change.  Example:\n * \n *    (def a (atom 0))\n *    (add-watch a :inc (fn [k r o n] (assert (\x3d\x3d 0 n))))\n *    (swap! a inc)\n *    ;; Assertion Error\n *    (deref a)\n *    ;\x3d\x3e 1\n */\ncljs.core.add_watch \x3d (function cljs$core$add_watch(iref,key,f){\ncljs.core._add_watch(iref,key,f);\n\nreturn iref;\n});\n/**\n * Removes a watch (set by add-watch) from a reference\n */\ncljs.core.remove_watch \x3d (function cljs$core$remove_watch(iref,key){\ncljs.core._remove_watch(iref,key);\n\nreturn iref;\n});\n/**\n * @type {*}\n */\ncljs.core.gensym_counter \x3d null;\n/**\n * Returns a new symbol with a unique name. If a prefix string is\n *   supplied, the name is prefix# where # is some unique number. If\n *   prefix is not supplied, the prefix is \x27G__\x27.\n */\ncljs.core.gensym \x3d (function cljs$core$gensym(var_args){\nvar G__39581 \x3d arguments.length;\nswitch (G__39581) {\ncase 0:\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.gensym.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22G__\x22);\n}));\n\n(cljs.core.gensym.cljs$core$IFn$_invoke$arity$1 \x3d (function (prefix_string){\nif((cljs.core.gensym_counter \x3d\x3d null)){\n(cljs.core.gensym_counter \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)));\n} else {\n}\n\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([cljs.core.str.cljs$core$IFn$_invoke$arity$1(prefix_string),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(cljs.core.gensym_counter,cljs.core.inc))].join(\x27\x27));\n}));\n\n(cljs.core.gensym.cljs$lang$maxFixedArity \x3d 1);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IPending}\n * @implements {cljs.core.IDeref}\n * @implements {cljs.core.IPrintWithWriter}\n*/\ncljs.core.Delay \x3d (function (f,value){\nthis.f \x3d f;\nthis.value \x3d value;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2147516416;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 1;\n});\n(cljs.core.Delay.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.f)){\n(self__.value \x3d (self__.f.cljs$core$IFn$_invoke$arity$0 ? self__.f.cljs$core$IFn$_invoke$arity$0() : self__.f.call(null)));\n\n(self__.f \x3d null);\n} else {\n}\n\nreturn self__.value;\n}));\n\n(cljs.core.Delay.prototype.cljs$core$IPending$_realized_QMARK_$arity$1 \x3d (function (x){\nvar self__ \x3d this;\nvar x__$1 \x3d this;\nreturn cljs.core.not(self__.f);\n}));\n\n(cljs.core.Delay.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (x,writer,opts){\nvar self__ \x3d this;\nvar x__$1 \x3d this;\ncljs.core._write(writer,\x22#object[cljs.core.Delay \x22);\n\ncljs.core.pr_writer(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22status\x22,\x22status\x22,-1997798413),(((self__.f \x3d\x3d null))?new cljs.core.Keyword(null,\x22ready\x22,\x22ready\x22,1086465795):new cljs.core.Keyword(null,\x22pending\x22,\x22pending\x22,-220036727)),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),self__.value], null),writer,opts);\n\nreturn cljs.core._write(writer,\x22]\x22);\n}));\n\n(cljs.core.Delay.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.Delay.cljs$lang$type \x3d true);\n\n(cljs.core.Delay.cljs$lang$ctorStr \x3d \x22cljs.core/Delay\x22);\n\n(cljs.core.Delay.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Delay\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Delay.\n */\ncljs.core.__GT_Delay \x3d (function cljs$core$__GT_Delay(f,value){\nreturn (new cljs.core.Delay(f,value));\n});\n\n/**\n * returns true if x is a Delay created with delay\n */\ncljs.core.delay_QMARK_ \x3d (function cljs$core$delay_QMARK_(x){\nreturn (x instanceof cljs.core.Delay);\n});\n/**\n * If x is a Delay, returns the (possibly cached) value of its expression, else returns x\n */\ncljs.core.force \x3d (function cljs$core$force(x){\nif(cljs.core.delay_QMARK_(x)){\nreturn cljs.core.deref(x);\n} else {\nreturn x;\n}\n});\n/**\n * Returns true if a value has been produced for a delay or lazy sequence.\n */\ncljs.core.realized_QMARK_ \x3d (function cljs$core$realized_QMARK_(x){\nreturn cljs.core._realized_QMARK_(x);\n});\ncljs.core.preserving_reduced \x3d (function cljs$core$preserving_reduced(rf){\nreturn (function (p1__39582_SHARP_,p2__39583_SHARP_){\nvar ret \x3d (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(p1__39582_SHARP_,p2__39583_SHARP_) : rf.call(null,p1__39582_SHARP_,p2__39583_SHARP_));\nif(cljs.core.reduced_QMARK_(ret)){\nreturn cljs.core.reduced(ret);\n} else {\nreturn ret;\n}\n});\n});\n/**\n * A transducer which concatenates the contents of each input, which must be a\n *   collection, into the reduction.\n */\ncljs.core.cat \x3d (function cljs$core$cat(rf){\nvar rf1 \x3d cljs.core.preserving_reduced(rf);\nreturn (function() {\nvar G__48598 \x3d null;\nvar G__48598__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__48598__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__48598__2 \x3d (function (result,input){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(rf1,result,input);\n});\nG__48598 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__48598__0.call(this);\ncase 1:\nreturn G__48598__1.call(this,result);\ncase 2:\nreturn G__48598__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48598.cljs$core$IFn$_invoke$arity$0 \x3d G__48598__0;\nG__48598.cljs$core$IFn$_invoke$arity$1 \x3d G__48598__1;\nG__48598.cljs$core$IFn$_invoke$arity$2 \x3d G__48598__2;\nreturn G__48598;\n})()\n});\n/**\n * Returns a transducer that ends transduction when pred returns true\n *   for an input. When retf is supplied it must be a fn of 2 arguments -\n *   it will be passed the (completed) result so far and the input that\n *   triggered the predicate, and its return value (if it does not throw\n *   an exception) will be the return value of the transducer. If retf\n *   is not supplied, the input that triggered the predicate will be\n *   returned. If the predicate never returns true the transduction is\n *   unaffected.\n */\ncljs.core.halt_when \x3d (function cljs$core$halt_when(var_args){\nvar G__39585 \x3d arguments.length;\nswitch (G__39585) {\ncase 1:\nreturn cljs.core.halt_when.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.halt_when.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.halt_when.cljs$core$IFn$_invoke$arity$1 \x3d (function (pred){\nreturn cljs.core.halt_when.cljs$core$IFn$_invoke$arity$2(pred,null);\n}));\n\n(cljs.core.halt_when.cljs$core$IFn$_invoke$arity$2 \x3d (function (pred,retf){\nreturn (function (rf){\nreturn (function() {\nvar G__48606 \x3d null;\nvar G__48606__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__48606__1 \x3d (function (result){\nif(((cljs.core.map_QMARK_(result)) \x26\x26 (cljs.core.contains_QMARK_(result,new cljs.core.Keyword(\x22cljs.core\x22,\x22halt\x22,\x22cljs.core/halt\x22,-1049036715))))){\nreturn new cljs.core.Keyword(\x22cljs.core\x22,\x22halt\x22,\x22cljs.core/halt\x22,-1049036715).cljs$core$IFn$_invoke$arity$1(result);\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n}\n});\nvar G__48606__2 \x3d (function (result,input){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(input) : pred.call(null,input)))){\nreturn cljs.core.reduced(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.core\x22,\x22halt\x22,\x22cljs.core/halt\x22,-1049036715),(cljs.core.truth_(retf)?(function (){var G__39586 \x3d (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\nvar G__39587 \x3d input;\nreturn (retf.cljs$core$IFn$_invoke$arity$2 ? retf.cljs$core$IFn$_invoke$arity$2(G__39586,G__39587) : retf.call(null,G__39586,G__39587));\n})():input)], null));\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n}\n});\nG__48606 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__48606__0.call(this);\ncase 1:\nreturn G__48606__1.call(this,result);\ncase 2:\nreturn G__48606__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48606.cljs$core$IFn$_invoke$arity$0 \x3d G__48606__0;\nG__48606.cljs$core$IFn$_invoke$arity$1 \x3d G__48606__1;\nG__48606.cljs$core$IFn$_invoke$arity$2 \x3d G__48606__2;\nreturn G__48606;\n})()\n});\n}));\n\n(cljs.core.halt_when.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a lazy sequence removing consecutive duplicates in coll.\n *   Returns a transducer when no collection is provided.\n */\ncljs.core.dedupe \x3d (function cljs$core$dedupe(var_args){\nvar G__39589 \x3d arguments.length;\nswitch (G__39589) {\ncase 0:\nreturn cljs.core.dedupe.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.dedupe.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.dedupe.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn (function (rf){\nvar pa \x3d cljs.core.volatile_BANG_(new cljs.core.Keyword(\x22cljs.core\x22,\x22none\x22,\x22cljs.core/none\x22,926646439));\nreturn (function() {\nvar G__48621 \x3d null;\nvar G__48621__0 \x3d (function (){\nreturn (rf.cljs$core$IFn$_invoke$arity$0 ? rf.cljs$core$IFn$_invoke$arity$0() : rf.call(null));\n});\nvar G__48621__1 \x3d (function (result){\nreturn (rf.cljs$core$IFn$_invoke$arity$1 ? rf.cljs$core$IFn$_invoke$arity$1(result) : rf.call(null,result));\n});\nvar G__48621__2 \x3d (function (result,input){\nvar prior \x3d cljs.core.deref(pa);\ncljs.core.vreset_BANG_(pa,input);\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(prior,input)){\nreturn result;\n} else {\nreturn (rf.cljs$core$IFn$_invoke$arity$2 ? rf.cljs$core$IFn$_invoke$arity$2(result,input) : rf.call(null,result,input));\n}\n});\nG__48621 \x3d function(result,input){\nswitch(arguments.length){\ncase 0:\nreturn G__48621__0.call(this);\ncase 1:\nreturn G__48621__1.call(this,result);\ncase 2:\nreturn G__48621__2.call(this,result,input);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48621.cljs$core$IFn$_invoke$arity$0 \x3d G__48621__0;\nG__48621.cljs$core$IFn$_invoke$arity$1 \x3d G__48621__1;\nG__48621.cljs$core$IFn$_invoke$arity$2 \x3d G__48621__2;\nreturn G__48621;\n})()\n});\n}));\n\n(cljs.core.dedupe.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$2(cljs.core.dedupe.cljs$core$IFn$_invoke$arity$0(),coll);\n}));\n\n(cljs.core.dedupe.cljs$lang$maxFixedArity \x3d 1);\n\n/**\n * Returns items from coll with random probability of prob (0.0 -\n *   1.0).  Returns a transducer when no collection is provided.\n */\ncljs.core.random_sample \x3d (function cljs$core$random_sample(var_args){\nvar G__39591 \x3d arguments.length;\nswitch (G__39591) {\ncase 1:\nreturn cljs.core.random_sample.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.random_sample.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.random_sample.cljs$core$IFn$_invoke$arity$1 \x3d (function (prob){\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$1((function (_){\nreturn ((cljs.core.rand.cljs$core$IFn$_invoke$arity$0 ? cljs.core.rand.cljs$core$IFn$_invoke$arity$0() : cljs.core.rand.call(null)) \x3c prob);\n}));\n}));\n\n(cljs.core.random_sample.cljs$core$IFn$_invoke$arity$2 \x3d (function (prob,coll){\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (_){\nreturn ((cljs.core.rand.cljs$core$IFn$_invoke$arity$0 ? cljs.core.rand.cljs$core$IFn$_invoke$arity$0() : cljs.core.rand.call(null)) \x3c prob);\n}),coll);\n}));\n\n(cljs.core.random_sample.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n* @constructor\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.ISequential}\n * @implements {cljs.core.IReduce}\n*/\ncljs.core.Eduction \x3d (function (xform,coll){\nthis.xform \x3d xform;\nthis.coll \x3d coll;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2173173760;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 131072;\n});\n(cljs.core.Eduction.prototype.indexOf \x3d (function() {\nvar G__48640 \x3d null;\nvar G__48640__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll__$1,x,(0));\n});\nvar G__48640__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._indexOf.cljs$core$IFn$_invoke$arity$3(coll__$1,x,start);\n});\nG__48640 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__48640__1.call(this,x);\ncase 2:\nreturn G__48640__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48640.cljs$core$IFn$_invoke$arity$1 \x3d G__48640__1;\nG__48640.cljs$core$IFn$_invoke$arity$2 \x3d G__48640__2;\nreturn G__48640;\n})()\n);\n\n(cljs.core.Eduction.prototype.lastIndexOf \x3d (function() {\nvar G__48653 \x3d null;\nvar G__48653__1 \x3d (function (x){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll__$1,x,cljs.core.count(coll__$1));\n});\nvar G__48653__2 \x3d (function (x,start){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core._lastIndexOf.cljs$core$IFn$_invoke$arity$3(coll__$1,x,start);\n});\nG__48653 \x3d function(x,start){\nswitch(arguments.length){\ncase 1:\nreturn G__48653__1.call(this,x);\ncase 2:\nreturn G__48653__2.call(this,x,start);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__48653.cljs$core$IFn$_invoke$arity$1 \x3d G__48653__1;\nG__48653.cljs$core$IFn$_invoke$arity$2 \x3d G__48653__2;\nreturn G__48653;\n})()\n);\n\n(cljs.core.Eduction.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.TransformerIterator.create(self__.xform,cljs.core.iter(self__.coll));\n}));\n\n(cljs.core.Eduction.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.seq(cljs.core.sequence.cljs$core$IFn$_invoke$arity$2(self__.xform,self__.coll));\n}));\n\n(cljs.core.Eduction.prototype.cljs$core$IReduce$_reduce$arity$2 \x3d (function (_,f){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.transduce.cljs$core$IFn$_invoke$arity$3(self__.xform,cljs.core.completing.cljs$core$IFn$_invoke$arity$1(f),self__.coll);\n}));\n\n(cljs.core.Eduction.prototype.cljs$core$IReduce$_reduce$arity$3 \x3d (function (_,f,init){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.transduce.cljs$core$IFn$_invoke$arity$4(self__.xform,cljs.core.completing.cljs$core$IFn$_invoke$arity$1(f),init,self__.coll);\n}));\n\n(cljs.core.Eduction.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll__$1,writer,opts){\nvar self__ \x3d this;\nvar coll__$2 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22(\x22,\x22 \x22,\x22)\x22,opts,coll__$2);\n}));\n\n(cljs.core.Eduction.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null);\n}));\n\n(cljs.core.Eduction.cljs$lang$type \x3d true);\n\n(cljs.core.Eduction.cljs$lang$ctorStr \x3d \x22cljs.core/Eduction\x22);\n\n(cljs.core.Eduction.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Eduction\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Eduction.\n */\ncljs.core.__GT_Eduction \x3d (function cljs$core$__GT_Eduction(xform,coll){\nreturn (new cljs.core.Eduction(xform,coll));\n});\n\ngoog.object.set(cljs.core.Eduction.prototype,cljs.core.ITER_SYMBOL,(function (){\nvar this__4710__auto__ \x3d this;\nreturn cljs.core.es6_iterator(this__4710__auto__);\n}));\n/**\n * Returns a reducible/iterable application of the transducers\n *   to the items in coll. Transducers are applied in order as if\n *   combined with comp. Note that these applications will be\n *   performed every time reduce/iterator is called.\n */\ncljs.core.eduction \x3d (function cljs$core$eduction(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48712 \x3d arguments.length;\nvar i__4772__auto___48714 \x3d (0);\nwhile(true){\nif((i__4772__auto___48714 \x3c len__4771__auto___48712)){\nargs__4777__auto__.push((arguments[i__4772__auto___48714]));\n\nvar G__48719 \x3d (i__4772__auto___48714 + (1));\ni__4772__auto___48714 \x3d G__48719;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.core.eduction.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.core.eduction.cljs$core$IFn$_invoke$arity$variadic \x3d (function (xforms){\nreturn (new cljs.core.Eduction(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.comp,cljs.core.butlast(xforms)),cljs.core.last(xforms)));\n}));\n\n(cljs.core.eduction.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.core.eduction.cljs$lang$applyTo \x3d (function (seq39592){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq39592));\n}));\n\n/**\n * Runs the supplied procedure (via reduce), for purposes of side\n *   effects, on successive items in the collection. Returns nil\n */\ncljs.core.run_BANG_ \x3d (function cljs$core$run_BANG_(proc,coll){\ncljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39594_SHARP_,p2__39593_SHARP_){\nreturn (proc.cljs$core$IFn$_invoke$arity$1 ? proc.cljs$core$IFn$_invoke$arity$1(p2__39593_SHARP_) : proc.call(null,p2__39593_SHARP_));\n}),null,coll);\n\nreturn null;\n});\n\n/**\n * @interface\n */\ncljs.core.IEncodeJS \x3d function(){};\n\nvar cljs$core$IEncodeJS$_clj__GT_js$dyn_48736 \x3d (function (x){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._clj__GT_js[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4464__auto__.call(null,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._clj__GT_js[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4461__auto__.call(null,x));\n} else {\nthrow cljs.core.missing_protocol(\x22IEncodeJS.-clj-\x3ejs\x22,x);\n}\n}\n});\n/**\n * Recursively transforms clj values to JavaScript\n */\ncljs.core._clj__GT_js \x3d (function cljs$core$_clj__GT_js(x){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$IEncodeJS$_clj__GT_js$arity$1 \x3d\x3d null)))))){\nreturn x.cljs$core$IEncodeJS$_clj__GT_js$arity$1(x);\n} else {\nreturn cljs$core$IEncodeJS$_clj__GT_js$dyn_48736(x);\n}\n});\n\nvar cljs$core$IEncodeJS$_key__GT_js$dyn_48739 \x3d (function (x){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._key__GT_js[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4464__auto__.call(null,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._key__GT_js[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4461__auto__.call(null,x));\n} else {\nthrow cljs.core.missing_protocol(\x22IEncodeJS.-key-\x3ejs\x22,x);\n}\n}\n});\n/**\n * Transforms map keys to valid JavaScript keys. Arbitrary keys are\n *   encoded to their string representation via (pr-str x)\n */\ncljs.core._key__GT_js \x3d (function cljs$core$_key__GT_js(x){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$IEncodeJS$_key__GT_js$arity$1 \x3d\x3d null)))))){\nreturn x.cljs$core$IEncodeJS$_key__GT_js$arity$1(x);\n} else {\nreturn cljs$core$IEncodeJS$_key__GT_js$dyn_48739(x);\n}\n});\n\ncljs.core.key__GT_js \x3d (function cljs$core$key__GT_js(var_args){\nvar G__39596 \x3d arguments.length;\nswitch (G__39596) {\ncase 1:\nreturn cljs.core.key__GT_js.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.key__GT_js.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.key__GT_js.cljs$core$IFn$_invoke$arity$1 \x3d (function (k){\nreturn cljs.core.key__GT_js.cljs$core$IFn$_invoke$arity$2(k,cljs.core.clj__GT_js);\n}));\n\n(cljs.core.key__GT_js.cljs$core$IFn$_invoke$arity$2 \x3d (function (k,primitive_fn){\nif((((!((k \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d k.cljs$core$IEncodeJS$))))?true:(((!k.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(cljs.core.IEncodeJS,k):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IEncodeJS,k))){\nreturn cljs.core._clj__GT_js(k);\n} else {\nif(((typeof k \x3d\x3d\x3d \x27string\x27) || (typeof k \x3d\x3d\x3d \x27number\x27) || ((k instanceof cljs.core.Keyword)) || ((k instanceof cljs.core.Symbol)))){\nreturn (primitive_fn.cljs$core$IFn$_invoke$arity$1 ? primitive_fn.cljs$core$IFn$_invoke$arity$1(k) : primitive_fn.call(null,k));\n} else {\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k], 0));\n\n}\n}\n}));\n\n(cljs.core.key__GT_js.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Recursively transforms ClojureScript values to JavaScript.\n *   sets/vectors/lists become Arrays, Keywords and Symbol become Strings,\n *   Maps become Objects. Arbitrary keys are encoded to by `key-\x3ejs`.\n *   Options is a key-value pair, where the only valid key is\n *   :keyword-fn, which should point to a single-argument function to be\n *   called on keyword keys. Default to `name`.\n */\ncljs.core.clj__GT_js \x3d (function cljs$core$clj__GT_js(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48762 \x3d arguments.length;\nvar i__4772__auto___48763 \x3d (0);\nwhile(true){\nif((i__4772__auto___48763 \x3c len__4771__auto___48762)){\nargs__4777__auto__.push((arguments[i__4772__auto___48763]));\n\nvar G__48765 \x3d (i__4772__auto___48763 + (1));\ni__4772__auto___48763 \x3d G__48765;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.clj__GT_js.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.clj__GT_js.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,p__39600){\nvar map__39601 \x3d p__39600;\nvar map__39601__$1 \x3d cljs.core.__destructure_map(map__39601);\nvar options \x3d map__39601__$1;\nvar keyword_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__39601__$1,new cljs.core.Keyword(null,\x22keyword-fn\x22,\x22keyword-fn\x22,-64566675),cljs.core.name);\nvar keyfn \x3d (function cljs$core$keyfn(k){\nreturn cljs.core.key__GT_js.cljs$core$IFn$_invoke$arity$2(k,thisfn);\n});\nvar thisfn \x3d (function cljs$core$thisfn(x__$1){\nif((x__$1 \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((x__$1 \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x__$1.cljs$core$IEncodeJS$))))?true:(((!x__$1.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(cljs.core.IEncodeJS,x__$1):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IEncodeJS,x__$1))){\nreturn cljs.core._clj__GT_js(x__$1);\n} else {\nif((x__$1 instanceof cljs.core.Keyword)){\nreturn (keyword_fn.cljs$core$IFn$_invoke$arity$1 ? keyword_fn.cljs$core$IFn$_invoke$arity$1(x__$1) : keyword_fn.call(null,x__$1));\n} else {\nif((x__$1 instanceof cljs.core.Symbol)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(x__$1);\n} else {\nif(cljs.core.map_QMARK_(x__$1)){\nvar m \x3d ({});\nvar seq__39628_48777 \x3d cljs.core.seq(x__$1);\nvar chunk__39629_48778 \x3d null;\nvar count__39630_48779 \x3d (0);\nvar i__39631_48780 \x3d (0);\nwhile(true){\nif((i__39631_48780 \x3c count__39630_48779)){\nvar vec__39638_48781 \x3d chunk__39629_48778.cljs$core$IIndexed$_nth$arity$2(null,i__39631_48780);\nvar k_48782 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39638_48781,(0),null);\nvar v_48783 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39638_48781,(1),null);\ngoog.object.set(m,keyfn(k_48782),cljs$core$thisfn(v_48783));\n\n\nvar G__48787 \x3d seq__39628_48777;\nvar G__48788 \x3d chunk__39629_48778;\nvar G__48789 \x3d count__39630_48779;\nvar G__48790 \x3d (i__39631_48780 + (1));\nseq__39628_48777 \x3d G__48787;\nchunk__39629_48778 \x3d G__48788;\ncount__39630_48779 \x3d G__48789;\ni__39631_48780 \x3d G__48790;\ncontinue;\n} else {\nvar temp__5753__auto___48792 \x3d cljs.core.seq(seq__39628_48777);\nif(temp__5753__auto___48792){\nvar seq__39628_48793__$1 \x3d temp__5753__auto___48792;\nif(cljs.core.chunked_seq_QMARK_(seq__39628_48793__$1)){\nvar c__4591__auto___48794 \x3d cljs.core.chunk_first(seq__39628_48793__$1);\nvar G__48795 \x3d cljs.core.chunk_rest(seq__39628_48793__$1);\nvar G__48796 \x3d c__4591__auto___48794;\nvar G__48797 \x3d cljs.core.count(c__4591__auto___48794);\nvar G__48798 \x3d (0);\nseq__39628_48777 \x3d G__48795;\nchunk__39629_48778 \x3d G__48796;\ncount__39630_48779 \x3d G__48797;\ni__39631_48780 \x3d G__48798;\ncontinue;\n} else {\nvar vec__39641_48803 \x3d cljs.core.first(seq__39628_48793__$1);\nvar k_48804 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39641_48803,(0),null);\nvar v_48805 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39641_48803,(1),null);\ngoog.object.set(m,keyfn(k_48804),cljs$core$thisfn(v_48805));\n\n\nvar G__48811 \x3d cljs.core.next(seq__39628_48793__$1);\nvar G__48812 \x3d null;\nvar G__48813 \x3d (0);\nvar G__48814 \x3d (0);\nseq__39628_48777 \x3d G__48811;\nchunk__39629_48778 \x3d G__48812;\ncount__39630_48779 \x3d G__48813;\ni__39631_48780 \x3d G__48814;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn m;\n} else {\nif(cljs.core.coll_QMARK_(x__$1)){\nvar arr \x3d [];\nvar seq__39644_48818 \x3d cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs$core$thisfn,x__$1));\nvar chunk__39645_48819 \x3d null;\nvar count__39646_48820 \x3d (0);\nvar i__39647_48821 \x3d (0);\nwhile(true){\nif((i__39647_48821 \x3c count__39646_48820)){\nvar x_48828__$2 \x3d chunk__39645_48819.cljs$core$IIndexed$_nth$arity$2(null,i__39647_48821);\narr.push(x_48828__$2);\n\n\nvar G__48830 \x3d seq__39644_48818;\nvar G__48831 \x3d chunk__39645_48819;\nvar G__48832 \x3d count__39646_48820;\nvar G__48833 \x3d (i__39647_48821 + (1));\nseq__39644_48818 \x3d G__48830;\nchunk__39645_48819 \x3d G__48831;\ncount__39646_48820 \x3d G__48832;\ni__39647_48821 \x3d G__48833;\ncontinue;\n} else {\nvar temp__5753__auto___48834 \x3d cljs.core.seq(seq__39644_48818);\nif(temp__5753__auto___48834){\nvar seq__39644_48841__$1 \x3d temp__5753__auto___48834;\nif(cljs.core.chunked_seq_QMARK_(seq__39644_48841__$1)){\nvar c__4591__auto___48845 \x3d cljs.core.chunk_first(seq__39644_48841__$1);\nvar G__48846 \x3d cljs.core.chunk_rest(seq__39644_48841__$1);\nvar G__48847 \x3d c__4591__auto___48845;\nvar G__48848 \x3d cljs.core.count(c__4591__auto___48845);\nvar G__48849 \x3d (0);\nseq__39644_48818 \x3d G__48846;\nchunk__39645_48819 \x3d G__48847;\ncount__39646_48820 \x3d G__48848;\ni__39647_48821 \x3d G__48849;\ncontinue;\n} else {\nvar x_48854__$2 \x3d cljs.core.first(seq__39644_48841__$1);\narr.push(x_48854__$2);\n\n\nvar G__48860 \x3d cljs.core.next(seq__39644_48841__$1);\nvar G__48861 \x3d null;\nvar G__48862 \x3d (0);\nvar G__48863 \x3d (0);\nseq__39644_48818 \x3d G__48860;\nchunk__39645_48819 \x3d G__48861;\ncount__39646_48820 \x3d G__48862;\ni__39647_48821 \x3d G__48863;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn arr;\n} else {\nreturn x__$1;\n\n}\n}\n}\n}\n}\n}\n});\nreturn thisfn(x);\n}));\n\n(cljs.core.clj__GT_js.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.clj__GT_js.cljs$lang$applyTo \x3d (function (seq39598){\nvar G__39599 \x3d cljs.core.first(seq39598);\nvar seq39598__$1 \x3d cljs.core.next(seq39598);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39599,seq39598__$1);\n}));\n\n\n/**\n * @interface\n */\ncljs.core.IEncodeClojure \x3d function(){};\n\nvar cljs$core$IEncodeClojure$_js__GT_clj$dyn_48878 \x3d (function (x,options){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (cljs.core._js__GT_clj[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(x,options) : m__4464__auto__.call(null,x,options));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._js__GT_clj[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(x,options) : m__4461__auto__.call(null,x,options));\n} else {\nthrow cljs.core.missing_protocol(\x22IEncodeClojure.-js-\x3eclj\x22,x);\n}\n}\n});\n/**\n * Transforms JavaScript values to Clojure\n */\ncljs.core._js__GT_clj \x3d (function cljs$core$_js__GT_clj(x,options){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.cljs$core$IEncodeClojure$_js__GT_clj$arity$2 \x3d\x3d null)))))){\nreturn x.cljs$core$IEncodeClojure$_js__GT_clj$arity$2(x,options);\n} else {\nreturn cljs$core$IEncodeClojure$_js__GT_clj$dyn_48878(x,options);\n}\n});\n\n/**\n * Recursively transforms JavaScript arrays into ClojureScript\n *   vectors, and JavaScript objects into ClojureScript maps.  With\n *   option \x27:keywordize-keys true\x27 will convert object fields from\n *   strings to keywords.\n */\ncljs.core.js__GT_clj \x3d (function cljs$core$js__GT_clj(var_args){\nvar G__39653 \x3d arguments.length;\nswitch (G__39653) {\ncase 1:\nreturn cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___48906 \x3d arguments.length;\nvar i__4772__auto___48908 \x3d (0);\nwhile(true){\nif((i__4772__auto___48908 \x3c len__4771__auto___48906)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___48908]));\n\nvar G__48912 \x3d (i__4772__auto___48908 + (1));\ni__4772__auto___48908 \x3d G__48912;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((1)),(0),null));\nreturn cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$variadic(x,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22keywordize-keys\x22,\x22keywordize-keys\x22,1310784252),false], 0));\n}));\n\n(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,opts){\nvar map__39654 \x3d opts;\nvar map__39654__$1 \x3d cljs.core.__destructure_map(map__39654);\nvar keywordize_keys \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__39654__$1,new cljs.core.Keyword(null,\x22keywordize-keys\x22,\x22keywordize-keys\x22,1310784252));\nvar keyfn \x3d (cljs.core.truth_(keywordize_keys)?cljs.core.keyword:cljs.core.str);\nvar f \x3d (function cljs$core$thisfn(x__$1){\nif((((!((x__$1 \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x__$1.cljs$core$IEncodeClojure$))))?true:(((!x__$1.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(cljs.core.IEncodeClojure,x__$1):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IEncodeClojure,x__$1))){\nreturn cljs.core._js__GT_clj(x__$1,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,opts));\n} else {\nif(cljs.core.seq_QMARK_(x__$1)){\nreturn cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs$core$thisfn,x__$1));\n} else {\nif(cljs.core.map_entry_QMARK_(x__$1)){\nreturn (new cljs.core.MapEntry(cljs$core$thisfn(cljs.core.key(x__$1)),cljs$core$thisfn(cljs.core.val(x__$1)),null));\n} else {\nif(cljs.core.coll_QMARK_(x__$1)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.empty(x__$1),cljs.core.map.cljs$core$IFn$_invoke$arity$1(cljs$core$thisfn),x__$1);\n} else {\nif(cljs.core.array_QMARK_(x__$1)){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39648_SHARP_,p2__39649_SHARP_){\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(p1__39648_SHARP_,cljs$core$thisfn(p2__39649_SHARP_));\n}),cljs.core.transient$(cljs.core.PersistentVector.EMPTY),x__$1));\n} else {\nif((cljs.core.type(x__$1) \x3d\x3d\x3d Object)){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (r,k){\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(r,(keyfn.cljs$core$IFn$_invoke$arity$1 ? keyfn.cljs$core$IFn$_invoke$arity$1(k) : keyfn.call(null,k)),cljs$core$thisfn(goog.object.get(x__$1,k)));\n}),cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY),cljs.core.js_keys(x__$1)));\n} else {\nreturn x__$1;\n\n}\n}\n}\n}\n}\n}\n});\nreturn f(x);\n}));\n\n/** @this {Function} */\n(cljs.core.js__GT_clj.cljs$lang$applyTo \x3d (function (seq39651){\nvar G__39652 \x3d cljs.core.first(seq39651);\nvar seq39651__$1 \x3d cljs.core.next(seq39651);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39652,seq39651__$1);\n}));\n\n(cljs.core.js__GT_clj.cljs$lang$maxFixedArity \x3d (1));\n\n/**\n * Returns a memoized version of a referentially transparent function. The\n *   memoized version of the function keeps a cache of the mapping from arguments\n *   to results and, when calls with the same arguments are repeated often, has\n *   higher performance at the expense of higher memory use.\n */\ncljs.core.memoize \x3d (function cljs$core$memoize(f){\nvar mem \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nreturn (function() { \nvar G__48953__delegate \x3d function (args){\nvar v \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(mem),args,cljs.core.lookup_sentinel);\nif((v \x3d\x3d\x3d cljs.core.lookup_sentinel)){\nvar ret \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(mem,cljs.core.assoc,args,ret);\n\nreturn ret;\n} else {\nreturn v;\n}\n};\nvar G__48953 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__48961__i \x3d 0, G__48961__a \x3d new Array(arguments.length -  0);\nwhile (G__48961__i \x3c G__48961__a.length) {G__48961__a[G__48961__i] \x3d arguments[G__48961__i + 0]; ++G__48961__i;}\n  args \x3d new cljs.core.IndexedSeq(G__48961__a,0,null);\n} \nreturn G__48953__delegate.call(this,args);};\nG__48953.cljs$lang$maxFixedArity \x3d 0;\nG__48953.cljs$lang$applyTo \x3d (function (arglist__48962){\nvar args \x3d cljs.core.seq(arglist__48962);\nreturn G__48953__delegate(args);\n});\nG__48953.cljs$core$IFn$_invoke$arity$variadic \x3d G__48953__delegate;\nreturn G__48953;\n})()\n;\n});\n/**\n * trampoline can be used to convert algorithms requiring mutual\n *   recursion without stack consumption. Calls f with supplied args, if\n *   any. If f returns a fn, calls that fn with no arguments, and\n *   continues to repeat, until the return value is not a fn, then\n *   returns that non-fn value. Note that if you want to return a fn as a\n *   final value, you must wrap it in some data structure and unpack it\n *   after trampoline returns.\n */\ncljs.core.trampoline \x3d (function cljs$core$trampoline(var_args){\nvar G__39659 \x3d arguments.length;\nswitch (G__39659) {\ncase 1:\nreturn cljs.core.trampoline.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___48967 \x3d arguments.length;\nvar i__4772__auto___48968 \x3d (0);\nwhile(true){\nif((i__4772__auto___48968 \x3c len__4771__auto___48967)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___48968]));\n\nvar G__48973 \x3d (i__4772__auto___48968 + (1));\ni__4772__auto___48968 \x3d G__48973;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((1)),(0),null));\nreturn cljs.core.trampoline.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4793__auto__);\n\n}\n});\n\n(cljs.core.trampoline.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nwhile(true){\nvar ret \x3d (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\nif(cljs.core.fn_QMARK_(ret)){\nvar G__48975 \x3d ret;\nf \x3d G__48975;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n}));\n\n(cljs.core.trampoline.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,args){\nreturn cljs.core.trampoline.cljs$core$IFn$_invoke$arity$1((function (){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args);\n}));\n}));\n\n/** @this {Function} */\n(cljs.core.trampoline.cljs$lang$applyTo \x3d (function (seq39657){\nvar G__39658 \x3d cljs.core.first(seq39657);\nvar seq39657__$1 \x3d cljs.core.next(seq39657);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39658,seq39657__$1);\n}));\n\n(cljs.core.trampoline.cljs$lang$maxFixedArity \x3d (1));\n\n/**\n * Returns a random floating point number between 0 (inclusive) and\n *   n (default 1) (exclusive).\n */\ncljs.core.rand \x3d (function cljs$core$rand(var_args){\nvar G__39661 \x3d arguments.length;\nswitch (G__39661) {\ncase 0:\nreturn cljs.core.rand.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.rand.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.rand.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.rand.cljs$core$IFn$_invoke$arity$1((1));\n}));\n\n(cljs.core.rand.cljs$core$IFn$_invoke$arity$1 \x3d (function (n){\nreturn (Math.random() * n);\n}));\n\n(cljs.core.rand.cljs$lang$maxFixedArity \x3d 1);\n\n/**\n * Returns a random integer between 0 (inclusive) and n (exclusive).\n */\ncljs.core.rand_int \x3d (function cljs$core$rand_int(n){\nreturn Math.floor((Math.random() * n));\n});\n/**\n * Return a random element of the (sequential) collection. Will have\n *   the same performance characteristics as nth for the given\n *   collection.\n */\ncljs.core.rand_nth \x3d (function cljs$core$rand_nth(coll){\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(coll,cljs.core.rand_int(cljs.core.count(coll)));\n});\n/**\n * Returns a map of the elements of coll keyed by the result of\n *   f on each element. The value at each key will be a vector of the\n *   corresponding elements, in the order they appeared in coll.\n */\ncljs.core.group_by \x3d (function cljs$core$group_by(f,coll){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret,x){\nvar k \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x));\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(ret,k,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$3(ret,k,cljs.core.PersistentVector.EMPTY),x));\n}),cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY),coll));\n});\n/**\n * Creates a hierarchy object for use with derive, isa? etc.\n */\ncljs.core.make_hierarchy \x3d (function cljs$core$make_hierarchy(){\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22parents\x22,\x22parents\x22,-2027538891),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22descendants\x22,\x22descendants\x22,1824886031),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22ancestors\x22,\x22ancestors\x22,-776045424),cljs.core.PersistentArrayMap.EMPTY], null);\n});\n/**\n * @type {*}\n */\ncljs.core._global_hierarchy \x3d null;\ncljs.core.get_global_hierarchy \x3d (function cljs$core$get_global_hierarchy(){\nif((cljs.core._global_hierarchy \x3d\x3d null)){\n(cljs.core._global_hierarchy \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.make_hierarchy()));\n} else {\n}\n\nreturn cljs.core._global_hierarchy;\n});\ncljs.core.swap_global_hierarchy_BANG_ \x3d (function cljs$core$swap_global_hierarchy_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48991 \x3d arguments.length;\nvar i__4772__auto___48992 \x3d (0);\nwhile(true){\nif((i__4772__auto___48992 \x3c len__4771__auto___48991)){\nargs__4777__auto__.push((arguments[i__4772__auto___48992]));\n\nvar G__48993 \x3d (i__4772__auto___48992 + (1));\ni__4772__auto___48992 \x3d G__48993;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.swap_global_hierarchy_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.swap_global_hierarchy_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (f,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core.swap_BANG_,cljs.core.get_global_hierarchy(),f,args);\n}));\n\n(cljs.core.swap_global_hierarchy_BANG_.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.swap_global_hierarchy_BANG_.cljs$lang$applyTo \x3d (function (seq39662){\nvar G__39663 \x3d cljs.core.first(seq39662);\nvar seq39662__$1 \x3d cljs.core.next(seq39662);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39663,seq39662__$1);\n}));\n\n/**\n * Returns true if (\x3d child parent), or child is directly or indirectly derived from\n *   parent, either via a JavaScript type inheritance relationship or a\n *   relationship established via derive. h must be a hierarchy obtained\n *   from make-hierarchy, if not supplied defaults to the global\n *   hierarchy\n */\ncljs.core.isa_QMARK_ \x3d (function cljs$core$isa_QMARK_(var_args){\nvar G__39665 \x3d arguments.length;\nswitch (G__39665) {\ncase 2:\nreturn cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$2 \x3d (function (child,parent){\nreturn cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(cljs.core.get_global_hierarchy()),child,parent);\n}));\n\n(cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3 \x3d (function (h,child,parent){\nvar or__4160__auto__ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(child,parent);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.core.contains_QMARK_((function (){var fexpr__39668 \x3d new cljs.core.Keyword(null,\x22ancestors\x22,\x22ancestors\x22,-776045424).cljs$core$IFn$_invoke$arity$1(h);\nreturn (fexpr__39668.cljs$core$IFn$_invoke$arity$1 ? fexpr__39668.cljs$core$IFn$_invoke$arity$1(child) : fexpr__39668.call(null,child));\n})(),parent);\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nif(cljs.core.vector_QMARK_(parent)){\nif(cljs.core.vector_QMARK_(child)){\nif((cljs.core.count(parent) \x3d\x3d\x3d cljs.core.count(child))){\nvar ret \x3d true;\nvar i \x3d (0);\nwhile(true){\nif((((!(ret))) || ((i \x3d\x3d\x3d cljs.core.count(parent))))){\nreturn ret;\n} else {\nvar G__49005 \x3d cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3(h,(child.cljs$core$IFn$_invoke$arity$1 ? child.cljs$core$IFn$_invoke$arity$1(i) : child.call(null,i)),(parent.cljs$core$IFn$_invoke$arity$1 ? parent.cljs$core$IFn$_invoke$arity$1(i) : parent.call(null,i)));\nvar G__49006 \x3d (i + (1));\nret \x3d G__49005;\ni \x3d G__49006;\ncontinue;\n}\nbreak;\n}\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}\n}\n}));\n\n(cljs.core.isa_QMARK_.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns the immediate parents of tag, either via a JavaScript type\n *   inheritance relationship or a relationship established via derive. h\n *   must be a hierarchy obtained from make-hierarchy, if not supplied\n *   defaults to the global hierarchy\n */\ncljs.core.parents \x3d (function cljs$core$parents(var_args){\nvar G__39670 \x3d arguments.length;\nswitch (G__39670) {\ncase 1:\nreturn cljs.core.parents.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.parents.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.parents.cljs$core$IFn$_invoke$arity$1 \x3d (function (tag){\nreturn cljs.core.parents.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.core.get_global_hierarchy()),tag);\n}));\n\n(cljs.core.parents.cljs$core$IFn$_invoke$arity$2 \x3d (function (h,tag){\nreturn cljs.core.not_empty(cljs.core.get.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22parents\x22,\x22parents\x22,-2027538891).cljs$core$IFn$_invoke$arity$1(h),tag));\n}));\n\n(cljs.core.parents.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns the immediate and indirect parents of tag, either via a JavaScript type\n *   inheritance relationship or a relationship established via derive. h\n *   must be a hierarchy obtained from make-hierarchy, if not supplied\n *   defaults to the global hierarchy\n */\ncljs.core.ancestors \x3d (function cljs$core$ancestors(var_args){\nvar G__39672 \x3d arguments.length;\nswitch (G__39672) {\ncase 1:\nreturn cljs.core.ancestors.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.ancestors.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.ancestors.cljs$core$IFn$_invoke$arity$1 \x3d (function (tag){\nreturn cljs.core.ancestors.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.core.get_global_hierarchy()),tag);\n}));\n\n(cljs.core.ancestors.cljs$core$IFn$_invoke$arity$2 \x3d (function (h,tag){\nreturn cljs.core.not_empty(cljs.core.get.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22ancestors\x22,\x22ancestors\x22,-776045424).cljs$core$IFn$_invoke$arity$1(h),tag));\n}));\n\n(cljs.core.ancestors.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns the immediate and indirect children of tag, through a\n *   relationship established via derive. h must be a hierarchy obtained\n *   from make-hierarchy, if not supplied defaults to the global\n *   hierarchy. Note: does not work on JavaScript type inheritance\n *   relationships.\n */\ncljs.core.descendants \x3d (function cljs$core$descendants(var_args){\nvar G__39674 \x3d arguments.length;\nswitch (G__39674) {\ncase 1:\nreturn cljs.core.descendants.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.descendants.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.descendants.cljs$core$IFn$_invoke$arity$1 \x3d (function (tag){\nreturn cljs.core.descendants.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.core.get_global_hierarchy()),tag);\n}));\n\n(cljs.core.descendants.cljs$core$IFn$_invoke$arity$2 \x3d (function (h,tag){\nreturn cljs.core.not_empty(cljs.core.get.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22descendants\x22,\x22descendants\x22,1824886031).cljs$core$IFn$_invoke$arity$1(h),tag));\n}));\n\n(cljs.core.descendants.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Establishes a parent/child relationship between parent and\n *   tag. Parent must be a namespace-qualified symbol or keyword and\n *   child can be either a namespace-qualified symbol or keyword or a\n *   class. h must be a hierarchy obtained from make-hierarchy, if not\n *   supplied defaults to, and modifies, the global hierarchy.\n */\ncljs.core.derive \x3d (function cljs$core$derive(var_args){\nvar G__39676 \x3d arguments.length;\nswitch (G__39676) {\ncase 2:\nreturn cljs.core.derive.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.derive.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.derive.cljs$core$IFn$_invoke$arity$2 \x3d (function (tag,parent){\nif(cljs.core.truth_(cljs.core.namespace(parent))){\n} else {\nthrow (new Error(\x22Assert failed: (namespace parent)\x22));\n}\n\ncljs.core.swap_global_hierarchy_BANG_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.derive,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([tag,parent], 0));\n\nreturn null;\n}));\n\n(cljs.core.derive.cljs$core$IFn$_invoke$arity$3 \x3d (function (h,tag,parent){\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(tag,parent)){\n} else {\nthrow (new Error(\x22Assert failed: (not\x3d tag parent)\x22));\n}\n\nvar tp \x3d new cljs.core.Keyword(null,\x22parents\x22,\x22parents\x22,-2027538891).cljs$core$IFn$_invoke$arity$1(h);\nvar td \x3d new cljs.core.Keyword(null,\x22descendants\x22,\x22descendants\x22,1824886031).cljs$core$IFn$_invoke$arity$1(h);\nvar ta \x3d new cljs.core.Keyword(null,\x22ancestors\x22,\x22ancestors\x22,-776045424).cljs$core$IFn$_invoke$arity$1(h);\nvar tf \x3d (function (m,source,sources,target,targets){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret,k){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,k,cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,cljs.core.get.cljs$core$IFn$_invoke$arity$3(targets,k,cljs.core.PersistentHashSet.EMPTY),cljs.core.cons(target,(targets.cljs$core$IFn$_invoke$arity$1 ? targets.cljs$core$IFn$_invoke$arity$1(target) : targets.call(null,target)))));\n}),m,cljs.core.cons(source,(sources.cljs$core$IFn$_invoke$arity$1 ? sources.cljs$core$IFn$_invoke$arity$1(source) : sources.call(null,source))));\n});\nvar or__4160__auto__ \x3d ((cljs.core.contains_QMARK_((tp.cljs$core$IFn$_invoke$arity$1 ? tp.cljs$core$IFn$_invoke$arity$1(tag) : tp.call(null,tag)),parent))?null:(function (){\nif(cljs.core.contains_QMARK_((ta.cljs$core$IFn$_invoke$arity$1 ? ta.cljs$core$IFn$_invoke$arity$1(tag) : ta.call(null,tag)),parent)){\nthrow (new Error([cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag),\x22already has\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(parent),\x22as ancestor\x22].join(\x27\x27)));\n} else {\n}\n\nif(cljs.core.contains_QMARK_((ta.cljs$core$IFn$_invoke$arity$1 ? ta.cljs$core$IFn$_invoke$arity$1(parent) : ta.call(null,parent)),tag)){\nthrow (new Error([\x22Cyclic derivation:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(parent),\x22has\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(tag),\x22as ancestor\x22].join(\x27\x27)));\n} else {\n}\n\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22parents\x22,\x22parents\x22,-2027538891),cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(new cljs.core.Keyword(null,\x22parents\x22,\x22parents\x22,-2027538891).cljs$core$IFn$_invoke$arity$1(h),tag,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$3(tp,tag,cljs.core.PersistentHashSet.EMPTY),parent)),new cljs.core.Keyword(null,\x22ancestors\x22,\x22ancestors\x22,-776045424),tf(new cljs.core.Keyword(null,\x22ancestors\x22,\x22ancestors\x22,-776045424).cljs$core$IFn$_invoke$arity$1(h),tag,td,parent,ta),new cljs.core.Keyword(null,\x22descendants\x22,\x22descendants\x22,1824886031),tf(new cljs.core.Keyword(null,\x22descendants\x22,\x22descendants\x22,1824886031).cljs$core$IFn$_invoke$arity$1(h),parent,ta,tag,td)], null);\n})()\n);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn h;\n}\n}));\n\n(cljs.core.derive.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Removes a parent/child relationship between parent and\n *   tag. h must be a hierarchy obtained from make-hierarchy, if not\n *   supplied defaults to, and modifies, the global hierarchy.\n */\ncljs.core.underive \x3d (function cljs$core$underive(var_args){\nvar G__39681 \x3d arguments.length;\nswitch (G__39681) {\ncase 2:\nreturn cljs.core.underive.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.underive.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.underive.cljs$core$IFn$_invoke$arity$2 \x3d (function (tag,parent){\ncljs.core.swap_global_hierarchy_BANG_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.underive,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([tag,parent], 0));\n\nreturn null;\n}));\n\n(cljs.core.underive.cljs$core$IFn$_invoke$arity$3 \x3d (function (h,tag,parent){\nvar parentMap \x3d new cljs.core.Keyword(null,\x22parents\x22,\x22parents\x22,-2027538891).cljs$core$IFn$_invoke$arity$1(h);\nvar childsParents \x3d (cljs.core.truth_((parentMap.cljs$core$IFn$_invoke$arity$1 ? parentMap.cljs$core$IFn$_invoke$arity$1(tag) : parentMap.call(null,tag)))?cljs.core.disj.cljs$core$IFn$_invoke$arity$2((parentMap.cljs$core$IFn$_invoke$arity$1 ? parentMap.cljs$core$IFn$_invoke$arity$1(tag) : parentMap.call(null,tag)),parent):cljs.core.PersistentHashSet.EMPTY);\nvar newParents \x3d (cljs.core.truth_(cljs.core.not_empty(childsParents))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(parentMap,tag,childsParents):cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(parentMap,tag));\nvar deriv_seq \x3d cljs.core.flatten(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__39677_SHARP_){\nreturn cljs.core.cons(cljs.core.first(p1__39677_SHARP_),cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(cljs.core.first(p1__39677_SHARP_),cljs.core.second(p1__39677_SHARP_)));\n}),cljs.core.seq(newParents)));\nif(cljs.core.contains_QMARK_((parentMap.cljs$core$IFn$_invoke$arity$1 ? parentMap.cljs$core$IFn$_invoke$arity$1(tag) : parentMap.call(null,tag)),parent)){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39678_SHARP_,p2__39679_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.derive,p1__39678_SHARP_,p2__39679_SHARP_);\n}),cljs.core.make_hierarchy(),cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),deriv_seq));\n} else {\nreturn h;\n}\n}));\n\n(cljs.core.underive.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.reset_cache \x3d (function cljs$core$reset_cache(method_cache,method_table,cached_hierarchy,hierarchy){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(method_cache,(function (_){\nreturn cljs.core.deref(method_table);\n}));\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(cached_hierarchy,(function (_){\nreturn cljs.core.deref(hierarchy);\n}));\n});\ncljs.core.prefers_STAR_ \x3d (function cljs$core$prefers_STAR_(x,y,prefer_table){\nvar xprefs \x3d (function (){var fexpr__39682 \x3d cljs.core.deref(prefer_table);\nreturn (fexpr__39682.cljs$core$IFn$_invoke$arity$1 ? fexpr__39682.cljs$core$IFn$_invoke$arity$1(x) : fexpr__39682.call(null,x));\n})();\nvar or__4160__auto__ \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d xprefs;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (xprefs.cljs$core$IFn$_invoke$arity$1 ? xprefs.cljs$core$IFn$_invoke$arity$1(y) : xprefs.call(null,y));\n} else {\nreturn and__4149__auto__;\n}\n})())?true:null);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (function (){var ps \x3d cljs.core.parents.cljs$core$IFn$_invoke$arity$1(y);\nwhile(true){\nif((cljs.core.count(ps) \x3e (0))){\nif(cljs.core.truth_((function (){var G__39686 \x3d x;\nvar G__39687 \x3d cljs.core.first(ps);\nvar G__39688 \x3d prefer_table;\nreturn (cljs.core.prefers_STAR_.cljs$core$IFn$_invoke$arity$3 ? cljs.core.prefers_STAR_.cljs$core$IFn$_invoke$arity$3(G__39686,G__39687,G__39688) : cljs.core.prefers_STAR_.call(null,G__39686,G__39687,G__39688));\n})())){\n} else {\n}\n\nvar G__49058 \x3d cljs.core.rest(ps);\nps \x3d G__49058;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (function (){var ps \x3d cljs.core.parents.cljs$core$IFn$_invoke$arity$1(x);\nwhile(true){\nif((cljs.core.count(ps) \x3e (0))){\nif(cljs.core.truth_((function (){var G__39692 \x3d cljs.core.first(ps);\nvar G__39693 \x3d y;\nvar G__39694 \x3d prefer_table;\nreturn (cljs.core.prefers_STAR_.cljs$core$IFn$_invoke$arity$3 ? cljs.core.prefers_STAR_.cljs$core$IFn$_invoke$arity$3(G__39692,G__39693,G__39694) : cljs.core.prefers_STAR_.call(null,G__39692,G__39693,G__39694));\n})())){\n} else {\n}\n\nvar G__49060 \x3d cljs.core.rest(ps);\nps \x3d G__49060;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nreturn false;\n}\n}\n}\n});\ncljs.core.dominates \x3d (function cljs$core$dominates(x,y,prefer_table,hierarchy){\nvar or__4160__auto__ \x3d cljs.core.prefers_STAR_(x,y,prefer_table);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3(hierarchy,x,y);\n}\n});\ncljs.core.find_and_cache_best_method \x3d (function cljs$core$find_and_cache_best_method(name,dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy,default_dispatch_val){\nvar best_entry \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (be,p__39695){\nvar vec__39696 \x3d p__39695;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39696,(0),null);\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39696,(1),null);\nvar e \x3d vec__39696;\nif(cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(hierarchy),dispatch_val,k)){\nvar be2 \x3d (((((be \x3d\x3d null)) || (cljs.core.dominates(k,cljs.core.first(be),prefer_table,cljs.core.deref(hierarchy)))))?e:be);\nif(cljs.core.dominates(cljs.core.first(be2),k,prefer_table,cljs.core.deref(hierarchy))){\n} else {\nthrow (new Error([\x22Multiple methods in multimethod \x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(name),\x22\x27 match dispatch value: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val),\x22 -\x3e \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(k),\x22 and \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(be2)),\x22, and neither is preferred\x22].join(\x27\x27)));\n}\n\nreturn be2;\n} else {\nreturn be;\n}\n}),null,cljs.core.deref(method_table));\nvar best_entry__$1 \x3d (function (){var temp__5751__auto__ \x3d (((best_entry \x3d\x3d null))?(function (){var fexpr__39700 \x3d cljs.core.deref(method_table);\nreturn (fexpr__39700.cljs$core$IFn$_invoke$arity$1 ? fexpr__39700.cljs$core$IFn$_invoke$arity$1(default_dispatch_val) : fexpr__39700.call(null,default_dispatch_val));\n})():false);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar entry \x3d temp__5751__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [default_dispatch_val,entry], null);\n} else {\nreturn best_entry;\n}\n})();\nif(cljs.core.truth_(best_entry__$1)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cached_hierarchy),cljs.core.deref(hierarchy))){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(method_cache,cljs.core.assoc,dispatch_val,cljs.core.second(best_entry__$1));\n\nreturn cljs.core.second(best_entry__$1);\n} else {\ncljs.core.reset_cache(method_cache,method_table,cached_hierarchy,hierarchy);\n\nreturn (cljs.core.find_and_cache_best_method.cljs$core$IFn$_invoke$arity$8 ? cljs.core.find_and_cache_best_method.cljs$core$IFn$_invoke$arity$8(name,dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy,default_dispatch_val) : cljs.core.find_and_cache_best_method.call(null,name,dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy,default_dispatch_val));\n}\n} else {\nreturn null;\n}\n});\n\n/**\n * @interface\n */\ncljs.core.IMultiFn \x3d function(){};\n\nvar cljs$core$IMultiFn$_reset$dyn_49065 \x3d (function (mf){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._reset[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4464__auto__.call(null,mf));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._reset[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4461__auto__.call(null,mf));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-reset\x22,mf);\n}\n}\n});\ncljs.core._reset \x3d (function cljs$core$_reset(mf){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_reset$arity$1 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_reset$arity$1(mf);\n} else {\nreturn cljs$core$IMultiFn$_reset$dyn_49065(mf);\n}\n});\n\nvar cljs$core$IMultiFn$_add_method$dyn_49078 \x3d (function (mf,dispatch_val,method){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._add_method[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(mf,dispatch_val,method) : m__4464__auto__.call(null,mf,dispatch_val,method));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._add_method[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(mf,dispatch_val,method) : m__4461__auto__.call(null,mf,dispatch_val,method));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-add-method\x22,mf);\n}\n}\n});\ncljs.core._add_method \x3d (function cljs$core$_add_method(mf,dispatch_val,method){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_add_method$arity$3 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_add_method$arity$3(mf,dispatch_val,method);\n} else {\nreturn cljs$core$IMultiFn$_add_method$dyn_49078(mf,dispatch_val,method);\n}\n});\n\nvar cljs$core$IMultiFn$_remove_method$dyn_49095 \x3d (function (mf,dispatch_val){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._remove_method[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(mf,dispatch_val) : m__4464__auto__.call(null,mf,dispatch_val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._remove_method[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(mf,dispatch_val) : m__4461__auto__.call(null,mf,dispatch_val));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-remove-method\x22,mf);\n}\n}\n});\ncljs.core._remove_method \x3d (function cljs$core$_remove_method(mf,dispatch_val){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_remove_method$arity$2 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_remove_method$arity$2(mf,dispatch_val);\n} else {\nreturn cljs$core$IMultiFn$_remove_method$dyn_49095(mf,dispatch_val);\n}\n});\n\nvar cljs$core$IMultiFn$_prefer_method$dyn_49106 \x3d (function (mf,dispatch_val,dispatch_val_y){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._prefer_method[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(mf,dispatch_val,dispatch_val_y) : m__4464__auto__.call(null,mf,dispatch_val,dispatch_val_y));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._prefer_method[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(mf,dispatch_val,dispatch_val_y) : m__4461__auto__.call(null,mf,dispatch_val,dispatch_val_y));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-prefer-method\x22,mf);\n}\n}\n});\ncljs.core._prefer_method \x3d (function cljs$core$_prefer_method(mf,dispatch_val,dispatch_val_y){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_prefer_method$arity$3 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_prefer_method$arity$3(mf,dispatch_val,dispatch_val_y);\n} else {\nreturn cljs$core$IMultiFn$_prefer_method$dyn_49106(mf,dispatch_val,dispatch_val_y);\n}\n});\n\nvar cljs$core$IMultiFn$_get_method$dyn_49139 \x3d (function (mf,dispatch_val){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._get_method[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(mf,dispatch_val) : m__4464__auto__.call(null,mf,dispatch_val));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._get_method[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(mf,dispatch_val) : m__4461__auto__.call(null,mf,dispatch_val));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-get-method\x22,mf);\n}\n}\n});\ncljs.core._get_method \x3d (function cljs$core$_get_method(mf,dispatch_val){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_get_method$arity$2 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_get_method$arity$2(mf,dispatch_val);\n} else {\nreturn cljs$core$IMultiFn$_get_method$dyn_49139(mf,dispatch_val);\n}\n});\n\nvar cljs$core$IMultiFn$_methods$dyn_49162 \x3d (function (mf){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._methods[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4464__auto__.call(null,mf));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._methods[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4461__auto__.call(null,mf));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-methods\x22,mf);\n}\n}\n});\ncljs.core._methods \x3d (function cljs$core$_methods(mf){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_methods$arity$1 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_methods$arity$1(mf);\n} else {\nreturn cljs$core$IMultiFn$_methods$dyn_49162(mf);\n}\n});\n\nvar cljs$core$IMultiFn$_prefers$dyn_49174 \x3d (function (mf){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._prefers[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4464__auto__.call(null,mf));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._prefers[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4461__auto__.call(null,mf));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-prefers\x22,mf);\n}\n}\n});\ncljs.core._prefers \x3d (function cljs$core$_prefers(mf){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_prefers$arity$1 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_prefers$arity$1(mf);\n} else {\nreturn cljs$core$IMultiFn$_prefers$dyn_49174(mf);\n}\n});\n\nvar cljs$core$IMultiFn$_default_dispatch_val$dyn_49196 \x3d (function (mf){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._default_dispatch_val[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4464__auto__.call(null,mf));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._default_dispatch_val[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4461__auto__.call(null,mf));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-default-dispatch-val\x22,mf);\n}\n}\n});\ncljs.core._default_dispatch_val \x3d (function cljs$core$_default_dispatch_val(mf){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_default_dispatch_val$arity$1 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_default_dispatch_val$arity$1(mf);\n} else {\nreturn cljs$core$IMultiFn$_default_dispatch_val$dyn_49196(mf);\n}\n});\n\nvar cljs$core$IMultiFn$_dispatch_fn$dyn_49220 \x3d (function (mf){\nvar x__4463__auto__ \x3d (((mf \x3d\x3d null))?null:mf);\nvar m__4464__auto__ \x3d (cljs.core._dispatch_fn[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4464__auto__.call(null,mf));\n} else {\nvar m__4461__auto__ \x3d (cljs.core._dispatch_fn[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(mf) : m__4461__auto__.call(null,mf));\n} else {\nthrow cljs.core.missing_protocol(\x22IMultiFn.-dispatch-fn\x22,mf);\n}\n}\n});\ncljs.core._dispatch_fn \x3d (function cljs$core$_dispatch_fn(mf){\nif((((!((mf \x3d\x3d null)))) \x26\x26 ((!((mf.cljs$core$IMultiFn$_dispatch_fn$arity$1 \x3d\x3d null)))))){\nreturn mf.cljs$core$IMultiFn$_dispatch_fn$arity$1(mf);\n} else {\nreturn cljs$core$IMultiFn$_dispatch_fn$dyn_49220(mf);\n}\n});\n\ncljs.core.throw_no_method_error \x3d (function cljs$core$throw_no_method_error(name,dispatch_val){\nthrow (new Error([\x22No method in multimethod \x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(name),\x22\x27 for dispatch value: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val)].join(\x27\x27)));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IFn}\n * @implements {cljs.core.IMultiFn}\n * @implements {cljs.core.INamed}\n*/\ncljs.core.MultiFn \x3d (function (name,dispatch_fn,default_dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy){\nthis.name \x3d name;\nthis.dispatch_fn \x3d dispatch_fn;\nthis.default_dispatch_val \x3d default_dispatch_val;\nthis.hierarchy \x3d hierarchy;\nthis.method_table \x3d method_table;\nthis.prefer_table \x3d prefer_table;\nthis.method_cache \x3d method_cache;\nthis.cached_hierarchy \x3d cached_hierarchy;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 4194305;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 4352;\n});\n(cljs.core.MultiFn.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__39702 \x3d (arguments.length - (1));\nswitch (G__39702) {\ncase (0):\nreturn self__.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase (3):\nreturn self__.cljs$core$IFn$_invoke$arity$3((arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase (4):\nreturn self__.cljs$core$IFn$_invoke$arity$4((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase (5):\nreturn self__.cljs$core$IFn$_invoke$arity$5((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase (6):\nreturn self__.cljs$core$IFn$_invoke$arity$6((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ncase (7):\nreturn self__.cljs$core$IFn$_invoke$arity$7((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]));\n\nbreak;\ncase (8):\nreturn self__.cljs$core$IFn$_invoke$arity$8((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]));\n\nbreak;\ncase (9):\nreturn self__.cljs$core$IFn$_invoke$arity$9((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]));\n\nbreak;\ncase (10):\nreturn self__.cljs$core$IFn$_invoke$arity$10((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]));\n\nbreak;\ncase (11):\nreturn self__.cljs$core$IFn$_invoke$arity$11((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]));\n\nbreak;\ncase (12):\nreturn self__.cljs$core$IFn$_invoke$arity$12((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]));\n\nbreak;\ncase (13):\nreturn self__.cljs$core$IFn$_invoke$arity$13((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]));\n\nbreak;\ncase (14):\nreturn self__.cljs$core$IFn$_invoke$arity$14((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]));\n\nbreak;\ncase (15):\nreturn self__.cljs$core$IFn$_invoke$arity$15((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]));\n\nbreak;\ncase (16):\nreturn self__.cljs$core$IFn$_invoke$arity$16((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]));\n\nbreak;\ncase (17):\nreturn self__.cljs$core$IFn$_invoke$arity$17((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]));\n\nbreak;\ncase (18):\nreturn self__.cljs$core$IFn$_invoke$arity$18((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]));\n\nbreak;\ncase (19):\nreturn self__.cljs$core$IFn$_invoke$arity$19((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]));\n\nbreak;\ncase (20):\nreturn self__.cljs$core$IFn$_invoke$arity$20((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]));\n\nbreak;\ncase (21):\nreturn self__.cljs$core$IFn$_invoke$arity$21((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]),(arguments[(21)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(cljs.core.MultiFn.prototype.apply \x3d (function (self__,args39701){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args39701)));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$0 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$0() : self__.dispatch_fn.call(null));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$0 ? target_fn.cljs$core$IFn$_invoke$arity$0() : target_fn.call(null));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (a){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$1 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$1(a) : self__.dispatch_fn.call(null,a));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$1 ? target_fn.cljs$core$IFn$_invoke$arity$1(a) : target_fn.call(null,a));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,b){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$2 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$2(a,b) : self__.dispatch_fn.call(null,a,b));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$2 ? target_fn.cljs$core$IFn$_invoke$arity$2(a,b) : target_fn.call(null,a,b));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,c){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$3 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$3(a,b,c) : self__.dispatch_fn.call(null,a,b,c));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$3 ? target_fn.cljs$core$IFn$_invoke$arity$3(a,b,c) : target_fn.call(null,a,b,c));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,b,c,d){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$4 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$4(a,b,c,d) : self__.dispatch_fn.call(null,a,b,c,d));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$4 ? target_fn.cljs$core$IFn$_invoke$arity$4(a,b,c,d) : target_fn.call(null,a,b,c,d));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$5 \x3d (function (a,b,c,d,e){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$5 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$5(a,b,c,d,e) : self__.dispatch_fn.call(null,a,b,c,d,e));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$5 ? target_fn.cljs$core$IFn$_invoke$arity$5(a,b,c,d,e) : target_fn.call(null,a,b,c,d,e));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$6 \x3d (function (a,b,c,d,e,f){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$6 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$6(a,b,c,d,e,f) : self__.dispatch_fn.call(null,a,b,c,d,e,f));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$6 ? target_fn.cljs$core$IFn$_invoke$arity$6(a,b,c,d,e,f) : target_fn.call(null,a,b,c,d,e,f));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$7 \x3d (function (a,b,c,d,e,f,g){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$7 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$7(a,b,c,d,e,f,g) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$7 ? target_fn.cljs$core$IFn$_invoke$arity$7(a,b,c,d,e,f,g) : target_fn.call(null,a,b,c,d,e,f,g));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$8 \x3d (function (a,b,c,d,e,f,g,h){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$8 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$8(a,b,c,d,e,f,g,h) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$8 ? target_fn.cljs$core$IFn$_invoke$arity$8(a,b,c,d,e,f,g,h) : target_fn.call(null,a,b,c,d,e,f,g,h));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$9 \x3d (function (a,b,c,d,e,f,g,h,i){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$9 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$9(a,b,c,d,e,f,g,h,i) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$9 ? target_fn.cljs$core$IFn$_invoke$arity$9(a,b,c,d,e,f,g,h,i) : target_fn.call(null,a,b,c,d,e,f,g,h,i));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$10 \x3d (function (a,b,c,d,e,f,g,h,i,j){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$10 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$10(a,b,c,d,e,f,g,h,i,j) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$10 ? target_fn.cljs$core$IFn$_invoke$arity$10(a,b,c,d,e,f,g,h,i,j) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$11 \x3d (function (a,b,c,d,e,f,g,h,i,j,k){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$11 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$11(a,b,c,d,e,f,g,h,i,j,k) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$11 ? target_fn.cljs$core$IFn$_invoke$arity$11(a,b,c,d,e,f,g,h,i,j,k) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$12 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$12 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$12(a,b,c,d,e,f,g,h,i,j,k,l) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$12 ? target_fn.cljs$core$IFn$_invoke$arity$12(a,b,c,d,e,f,g,h,i,j,k,l) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$13 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$13 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$13(a,b,c,d,e,f,g,h,i,j,k,l,m) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$13 ? target_fn.cljs$core$IFn$_invoke$arity$13(a,b,c,d,e,f,g,h,i,j,k,l,m) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$14 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$14 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$14 ? target_fn.cljs$core$IFn$_invoke$arity$14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$15 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$15 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$15(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$15 ? target_fn.cljs$core$IFn$_invoke$arity$15(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$16 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$16 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$16 ? target_fn.cljs$core$IFn$_invoke$arity$16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$17 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$17 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$17(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$17 ? target_fn.cljs$core$IFn$_invoke$arity$17(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$18 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$18 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$18 ? target_fn.cljs$core$IFn$_invoke$arity$18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$19 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$19 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$19(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : self__.dispatch_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$19 ? target_fn.cljs$core$IFn$_invoke$arity$19(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$20 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d (self__.dispatch_fn.cljs$core$IFn$_invoke$arity$20 ? self__.dispatch_fn.cljs$core$IFn$_invoke$arity$20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : 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));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn (target_fn.cljs$core$IFn$_invoke$arity$20 ? target_fn.cljs$core$IFn$_invoke$arity$20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : target_fn.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IFn$_invoke$arity$21 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nvar self__ \x3d this;\nvar mf \x3d this;\nvar dispatch_val \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(self__.dispatch_fn,a,b,c,d,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest], 0));\nvar target_fn \x3d mf.cljs$core$IMultiFn$_get_method$arity$2(null,dispatch_val);\nif(cljs.core.truth_(target_fn)){\n} else {\ncljs.core.throw_no_method_error(self__.name,dispatch_val);\n}\n\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(target_fn,a,b,c,d,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest], 0));\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_prefer_method$arity$3 \x3d (function (mf,dispatch_val_x,dispatch_val_y){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\nif(cljs.core.truth_(cljs.core.prefers_STAR_(dispatch_val_x,dispatch_val_y,self__.prefer_table))){\nthrow (new Error([\x22Preference conflict in multimethod \x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.name),\x22\x27: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val_y),\x22 is already preferred to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(dispatch_val_x)].join(\x27\x27)));\n} else {\n}\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(self__.prefer_table,(function (old){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(old,dispatch_val_x,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$3(old,dispatch_val_x,cljs.core.PersistentHashSet.EMPTY),dispatch_val_y));\n}));\n\nreturn cljs.core.reset_cache(self__.method_cache,self__.method_table,self__.cached_hierarchy,self__.hierarchy);\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_default_dispatch_val$arity$1 \x3d (function (mf){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\nreturn self__.default_dispatch_val;\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_remove_method$arity$2 \x3d (function (mf,dispatch_val){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(self__.method_table,cljs.core.dissoc,dispatch_val);\n\ncljs.core.reset_cache(self__.method_cache,self__.method_table,self__.cached_hierarchy,self__.hierarchy);\n\nreturn mf__$1;\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_methods$arity$1 \x3d (function (mf){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\nreturn cljs.core.deref(self__.method_table);\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_prefers$arity$1 \x3d (function (mf){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\nreturn cljs.core.deref(self__.prefer_table);\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_dispatch_fn$arity$1 \x3d (function (mf){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\nreturn self__.dispatch_fn;\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_add_method$arity$3 \x3d (function (mf,dispatch_val,method){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.method_table,cljs.core.assoc,dispatch_val,method);\n\ncljs.core.reset_cache(self__.method_cache,self__.method_table,self__.cached_hierarchy,self__.hierarchy);\n\nreturn mf__$1;\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_reset$arity$1 \x3d (function (mf){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(self__.method_table,(function (mf__$2){\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(self__.method_cache,(function (mf__$2){\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(self__.prefer_table,(function (mf__$2){\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(self__.cached_hierarchy,(function (mf__$2){\nreturn null;\n}));\n\nreturn mf__$1;\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IMultiFn$_get_method$arity$2 \x3d (function (mf,dispatch_val){\nvar self__ \x3d this;\nvar mf__$1 \x3d this;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(self__.cached_hierarchy),cljs.core.deref(self__.hierarchy))){\n} else {\ncljs.core.reset_cache(self__.method_cache,self__.method_table,self__.cached_hierarchy,self__.hierarchy);\n}\n\nvar temp__5751__auto__ \x3d (function (){var fexpr__39703 \x3d cljs.core.deref(self__.method_cache);\nreturn (fexpr__39703.cljs$core$IFn$_invoke$arity$1 ? fexpr__39703.cljs$core$IFn$_invoke$arity$1(dispatch_val) : fexpr__39703.call(null,dispatch_val));\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar target_fn \x3d temp__5751__auto__;\nreturn target_fn;\n} else {\nreturn cljs.core.find_and_cache_best_method(self__.name,dispatch_val,self__.hierarchy,self__.method_table,self__.prefer_table,self__.method_cache,self__.cached_hierarchy,self__.default_dispatch_val);\n}\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$INamed$_name$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core._name(self__.name);\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$INamed$_namespace$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core._namespace(self__.name);\n}));\n\n(cljs.core.MultiFn.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn goog.getUid(this$__$1);\n}));\n\n(cljs.core.MultiFn.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null),new cljs.core.Symbol(null,\x22dispatch-fn\x22,\x22dispatch-fn\x22,-1401088155,null),new cljs.core.Symbol(null,\x22default-dispatch-val\x22,\x22default-dispatch-val\x22,-1231201266,null),new cljs.core.Symbol(null,\x22hierarchy\x22,\x22hierarchy\x22,587061186,null),new cljs.core.Symbol(null,\x22method-table\x22,\x22method-table\x22,-1878263165,null),new cljs.core.Symbol(null,\x22prefer-table\x22,\x22prefer-table\x22,462168584,null),new cljs.core.Symbol(null,\x22method-cache\x22,\x22method-cache\x22,1230193905,null),new cljs.core.Symbol(null,\x22cached-hierarchy\x22,\x22cached-hierarchy\x22,-1085460203,null)], null);\n}));\n\n(cljs.core.MultiFn.cljs$lang$type \x3d true);\n\n(cljs.core.MultiFn.cljs$lang$ctorStr \x3d \x22cljs.core/MultiFn\x22);\n\n(cljs.core.MultiFn.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/MultiFn\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/MultiFn.\n */\ncljs.core.__GT_MultiFn \x3d (function cljs$core$__GT_MultiFn(name,dispatch_fn,default_dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy){\nreturn (new cljs.core.MultiFn(name,dispatch_fn,default_dispatch_val,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy));\n});\n\n/**\n * Removes all of the methods of multimethod.\n */\ncljs.core.remove_all_methods \x3d (function cljs$core$remove_all_methods(multifn){\nreturn cljs.core._reset(multifn);\n});\n/**\n * Removes the method of multimethod associated with dispatch-value.\n */\ncljs.core.remove_method \x3d (function cljs$core$remove_method(multifn,dispatch_val){\nreturn cljs.core._remove_method(multifn,dispatch_val);\n});\n/**\n * Causes the multimethod to prefer matches of dispatch-val-x over dispatch-val-y\n * when there is a conflict\n */\ncljs.core.prefer_method \x3d (function cljs$core$prefer_method(multifn,dispatch_val_x,dispatch_val_y){\nreturn cljs.core._prefer_method(multifn,dispatch_val_x,dispatch_val_y);\n});\n/**\n * Given a multimethod, returns a map of dispatch values -\x3e dispatch fns\n */\ncljs.core.methods$ \x3d (function cljs$core$methods(multifn){\nreturn cljs.core._methods(multifn);\n});\n/**\n * Given a multimethod and a dispatch value, returns the dispatch fn\n *   that would apply to that value, or nil if none apply and no default\n */\ncljs.core.get_method \x3d (function cljs$core$get_method(multifn,dispatch_val){\nreturn cljs.core._get_method(multifn,dispatch_val);\n});\n/**\n * Given a multimethod, returns a map of preferred value -\x3e set of other values\n */\ncljs.core.prefers \x3d (function cljs$core$prefers(multifn){\nreturn cljs.core._prefers(multifn);\n});\n/**\n * Given a multimethod, return it\x27s default-dispatch-val.\n */\ncljs.core.default_dispatch_val \x3d (function cljs$core$default_dispatch_val(multifn){\nreturn cljs.core._default_dispatch_val(multifn);\n});\n/**\n * Given a multimethod, return it\x27s dispatch-fn.\n */\ncljs.core.dispatch_fn \x3d (function cljs$core$dispatch_fn(multifn){\nreturn cljs.core._dispatch_fn(multifn);\n});\n\n/**\n * A marker protocol for UUIDs\n * @interface\n */\ncljs.core.IUUID \x3d function(){};\n\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IComparable}\n * @implements {cljs.core.IUUID}\n*/\ncljs.core.UUID \x3d (function (uuid,__hash){\nthis.uuid \x3d uuid;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2153775104;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 2048;\n});\n(cljs.core.UUID.prototype.cljs$core$IUUID$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.UUID.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.uuid;\n}));\n\n(cljs.core.UUID.prototype.equiv \x3d (function (other){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.cljs$core$IEquiv$_equiv$arity$2(null,other);\n}));\n\n(cljs.core.UUID.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (_,other){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (((other instanceof cljs.core.UUID)) \x26\x26 ((self__.uuid \x3d\x3d\x3d other.uuid)));\n}));\n\n(cljs.core.UUID.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (_,writer,___$1){\nvar self__ \x3d this;\nvar ___$2 \x3d this;\nreturn cljs.core._write(writer,[\x22#uuid \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.uuid),\x22\\\x22\x22].join(\x27\x27));\n}));\n\n(cljs.core.UUID.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((self__.__hash \x3d\x3d null)){\n(self__.__hash \x3d cljs.core.hash(self__.uuid));\n} else {\n}\n\nreturn self__.__hash;\n}));\n\n(cljs.core.UUID.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (this$,other){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((other instanceof cljs.core.UUID)){\nreturn goog.array.defaultCompare(self__.uuid,other.uuid);\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(other)].join(\x27\x27)));\n}\n}));\n\n(cljs.core.UUID.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22uuid\x22,\x22uuid\x22,-504564192,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22__hash\x22,\x22__hash\x22,-1328796629,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.UUID.cljs$lang$type \x3d true);\n\n(cljs.core.UUID.cljs$lang$ctorStr \x3d \x22cljs.core/UUID\x22);\n\n(cljs.core.UUID.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/UUID\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/UUID.\n */\ncljs.core.__GT_UUID \x3d (function cljs$core$__GT_UUID(uuid,__hash){\nreturn (new cljs.core.UUID(uuid,__hash));\n});\n\ncljs.core.uuid \x3d (function cljs$core$uuid(s){\nif(typeof s \x3d\x3d\x3d \x27string\x27){\n} else {\nthrow (new Error(\x22Assert failed: (string? s)\x22));\n}\n\nreturn (new cljs.core.UUID(s.toLowerCase(),null));\n});\ncljs.core.random_uuid \x3d (function cljs$core$random_uuid(){\nvar hex \x3d (function cljs$core$random_uuid_$_hex(){\nreturn cljs.core.rand_int((16)).toString((16));\n});\nvar rhex \x3d ((8) | ((3) \x26 cljs.core.rand_int((16)))).toString((16));\nreturn cljs.core.uuid([cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),\x22-\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),\x22-\x22,\x224\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),\x22-\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(rhex),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),\x22-\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(hex())].join(\x27\x27));\n});\ncljs.core.uuid_QMARK_ \x3d (function cljs$core$uuid_QMARK_(x){\nif((!((x \x3d\x3d null)))){\nif(((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IUUID$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n});\ncljs.core.pr_writer_ex_info \x3d (function cljs$core$pr_writer_ex_info(obj,writer,opts){\ncljs.core._write(writer,\x22#error {:message \x22);\n\ncljs.core.pr_writer(obj.message,writer,opts);\n\nif(cljs.core.truth_(obj.data)){\ncljs.core._write(writer,\x22, :data \x22);\n\ncljs.core.pr_writer(obj.data,writer,opts);\n} else {\n}\n\nif(cljs.core.truth_(obj.cause)){\ncljs.core._write(writer,\x22, :cause \x22);\n\ncljs.core.pr_writer(obj.cause,writer,opts);\n} else {\n}\n\nreturn cljs.core._write(writer,\x22}\x22);\n});\n/**\n * @constructor\n */\ncljs.core.ExceptionInfo \x3d (function cljs$core$ExceptionInfo(message,data,cause){\nvar e \x3d (new Error(message));\nvar this$ \x3d this;\n(this$.message \x3d message);\n\n(this$.data \x3d data);\n\n(this$.cause \x3d cause);\n\n(this$.name \x3d e.name);\n\n(this$.description \x3d e.description);\n\n(this$.number \x3d e.number);\n\n(this$.fileName \x3d e.fileName);\n\n(this$.lineNumber \x3d e.lineNumber);\n\n(this$.columnNumber \x3d e.columnNumber);\n\n(this$.stack \x3d e.stack);\n\nreturn this$;\n});\n(cljs.core.ExceptionInfo.prototype.__proto__ \x3d Error.prototype);\n(cljs.core.ExceptionInfo.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.ExceptionInfo.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (obj,writer,opts){\nvar obj__$1 \x3d this;\nreturn cljs.core.pr_writer_ex_info(obj__$1,writer,opts);\n}));\n(cljs.core.ExceptionInfo.prototype.toString \x3d (function (){\nvar this$ \x3d this;\nreturn cljs.core.pr_str_STAR_(this$);\n}));\n/**\n * Create an instance of ExceptionInfo, an Error type that carries a\n *   map of additional data.\n */\ncljs.core.ex_info \x3d (function cljs$core$ex_info(var_args){\nvar G__39706 \x3d arguments.length;\nswitch (G__39706) {\ncase 2:\nreturn cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2 \x3d (function (msg,data){\nreturn cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(msg,data,null);\n}));\n\n(cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3 \x3d (function (msg,data,cause){\nreturn (new cljs.core.ExceptionInfo(msg,data,cause));\n}));\n\n(cljs.core.ex_info.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Returns exception data (a map) if ex is an ExceptionInfo.\n *   Otherwise returns nil.\n */\ncljs.core.ex_data \x3d (function cljs$core$ex_data(ex){\nif((ex instanceof cljs.core.ExceptionInfo)){\nreturn ex.data;\n} else {\nreturn null;\n}\n});\n/**\n * Returns the message attached to the given Error / ExceptionInfo object.\n *   For non-Errors returns nil.\n */\ncljs.core.ex_message \x3d (function cljs$core$ex_message(ex){\nif((ex instanceof Error)){\nreturn ex.message;\n} else {\nreturn null;\n}\n});\n/**\n * Returns exception cause (an Error / ExceptionInfo) if ex is an\n *   ExceptionInfo.\n *   Otherwise returns nil.\n */\ncljs.core.ex_cause \x3d (function cljs$core$ex_cause(ex){\nif((ex instanceof cljs.core.ExceptionInfo)){\nreturn ex.cause;\n} else {\nreturn null;\n}\n});\n/**\n * Returns an JavaScript compatible comparator based upon pred.\n */\ncljs.core.comparator \x3d (function cljs$core$comparator(pred){\nreturn (function (x,y){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$2 ? pred.cljs$core$IFn$_invoke$arity$2(x,y) : pred.call(null,x,y)))){\nreturn (-1);\n} else {\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$2 ? pred.cljs$core$IFn$_invoke$arity$2(y,x) : pred.call(null,y,x)))){\nreturn (1);\n} else {\nreturn (0);\n\n}\n}\n});\n});\n/**\n * Returns true if x names a special form\n */\ncljs.core.special_symbol_QMARK_ \x3d (function cljs$core$special_symbol_QMARK_(x){\nreturn cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 24, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),\x22null\x22,new cljs.core.Symbol(null,\x22case*\x22,\x22case*\x22,-1938255072,null),\x22null\x22,new cljs.core.Symbol(null,\x22defrecord*\x22,\x22defrecord*\x22,-1936366207,null),\x22null\x22,new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),\x22null\x22,new cljs.core.Symbol(null,\x22ns*\x22,\x22ns*\x22,1840949383,null),\x22null\x22,new cljs.core.Symbol(null,\x22finally\x22,\x22finally\x22,-1065347064,null),\x22null\x22,new cljs.core.Symbol(null,\x22loop*\x22,\x22loop*\x22,615029416,null),\x22null\x22,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),\x22null\x22,new cljs.core.Symbol(null,\x22letfn*\x22,\x22letfn*\x22,-110097810,null),\x22null\x22,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),\x22null\x22,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),\x22null\x22,new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),\x22null\x22,new cljs.core.Symbol(null,\x22deftype*\x22,\x22deftype*\x22,962659890,null),\x22null\x22,new cljs.core.Symbol(null,\x22let*\x22,\x22let*\x22,1920721458,null),\x22null\x22,new cljs.core.Symbol(null,\x22js*\x22,\x22js*\x22,-1134233646,null),\x22null\x22,new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),\x22null\x22,new cljs.core.Symbol(null,\x22recur\x22,\x22recur\x22,1202958259,null),\x22null\x22,new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),\x22null\x22,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),\x22null\x22,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),\x22null\x22,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),\x22null\x22,new cljs.core.Symbol(null,\x22catch\x22,\x22catch\x22,-1616370245,null),\x22null\x22,new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),\x22null\x22,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),\x22null\x22], null), null),x);\n});\n/**\n * test [v] finds fn at key :test in var metadata and calls it,\n *   presuming failure will throw exception\n */\ncljs.core.test \x3d (function cljs$core$test(v){\nvar f \x3d v.cljs$lang$test;\nif(cljs.core.truth_(f)){\n(f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n\nreturn new cljs.core.Keyword(null,\x22ok\x22,\x22ok\x22,967785236);\n} else {\nreturn new cljs.core.Keyword(null,\x22no-test\x22,\x22no-test\x22,-1679482642);\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.ILookup}\n*/\ncljs.core.TaggedLiteral \x3d (function (tag,form){\nthis.tag \x3d tag;\nthis.form \x3d form;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2153775360;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.TaggedLiteral.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar coll \x3d this;\nreturn cljs.core.pr_str_STAR_(coll);\n}));\n\n(cljs.core.TaggedLiteral.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (((other instanceof cljs.core.TaggedLiteral)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(self__.tag,other.tag)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(self__.form,other.form)));\n}));\n\n(cljs.core.TaggedLiteral.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (((31) * cljs.core.hash(self__.tag)) + cljs.core.hash(self__.form));\n}));\n\n(cljs.core.TaggedLiteral.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this$,v){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn this$__$1.cljs$core$ILookup$_lookup$arity$3(null,v,null);\n}));\n\n(cljs.core.TaggedLiteral.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this$,v,not_found){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar G__39707 \x3d v;\nvar G__39707__$1 \x3d (((G__39707 instanceof cljs.core.Keyword))?G__39707.fqn:null);\nswitch (G__39707__$1) {\ncase \x22tag\x22:\nreturn self__.tag;\n\nbreak;\ncase \x22form\x22:\nreturn self__.form;\n\nbreak;\ndefault:\nreturn not_found;\n\n}\n}));\n\n(cljs.core.TaggedLiteral.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (o,writer,opts){\nvar self__ \x3d this;\nvar o__$1 \x3d this;\ncljs.core._write(writer,[\x22#\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.tag),\x22 \x22].join(\x27\x27));\n\nreturn cljs.core.pr_writer(self__.form,writer,opts);\n}));\n\n(cljs.core.TaggedLiteral.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tag\x22,\x22tag\x22,350170304,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null);\n}));\n\n(cljs.core.TaggedLiteral.cljs$lang$type \x3d true);\n\n(cljs.core.TaggedLiteral.cljs$lang$ctorStr \x3d \x22cljs.core/TaggedLiteral\x22);\n\n(cljs.core.TaggedLiteral.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/TaggedLiteral\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/TaggedLiteral.\n */\ncljs.core.__GT_TaggedLiteral \x3d (function cljs$core$__GT_TaggedLiteral(tag,form){\nreturn (new cljs.core.TaggedLiteral(tag,form));\n});\n\n/**\n * Return true if the value is the data representation of a tagged literal\n */\ncljs.core.tagged_literal_QMARK_ \x3d (function cljs$core$tagged_literal_QMARK_(value){\nreturn (value instanceof cljs.core.TaggedLiteral);\n});\n/**\n * Construct a data representation of a tagged literal from a\n *   tag symbol and a form.\n */\ncljs.core.tagged_literal \x3d (function cljs$core$tagged_literal(tag,form){\nif((tag instanceof cljs.core.Symbol)){\n} else {\nthrow (new Error(\x22Assert failed: (symbol? tag)\x22));\n}\n\nreturn (new cljs.core.TaggedLiteral(tag,form));\n});\n/**\n * @type {*}\n */\ncljs.core.js_reserved_arr \x3d [\x22arguments\x22,\x22abstract\x22,\x22await\x22,\x22boolean\x22,\x22break\x22,\x22byte\x22,\x22case\x22,\x22catch\x22,\x22char\x22,\x22class\x22,\x22const\x22,\x22continue\x22,\x22debugger\x22,\x22default\x22,\x22delete\x22,\x22do\x22,\x22double\x22,\x22else\x22,\x22enum\x22,\x22export\x22,\x22extends\x22,\x22final\x22,\x22finally\x22,\x22float\x22,\x22for\x22,\x22function\x22,\x22goto\x22,\x22if\x22,\x22implements\x22,\x22import\x22,\x22in\x22,\x22instanceof\x22,\x22int\x22,\x22interface\x22,\x22let\x22,\x22long\x22,\x22native\x22,\x22new\x22,\x22package\x22,\x22private\x22,\x22protected\x22,\x22public\x22,\x22return\x22,\x22short\x22,\x22static\x22,\x22super\x22,\x22switch\x22,\x22synchronized\x22,\x22this\x22,\x22throw\x22,\x22throws\x22,\x22transient\x22,\x22try\x22,\x22typeof\x22,\x22var\x22,\x22void\x22,\x22volatile\x22,\x22while\x22,\x22with\x22,\x22yield\x22,\x22methods\x22,\x22null\x22,\x22constructor\x22];\n/**\n * @type {null|Object}\n */\ncljs.core.js_reserved \x3d null;\ncljs.core.js_reserved_QMARK_ \x3d (function cljs$core$js_reserved_QMARK_(x){\nif((cljs.core.js_reserved \x3d\x3d null)){\n(cljs.core.js_reserved \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39708_SHARP_,p2__39709_SHARP_){\ngoog.object.set(p1__39708_SHARP_,p2__39709_SHARP_,true);\n\nreturn p1__39708_SHARP_;\n}),({}),cljs.core.js_reserved_arr));\n} else {\n}\n\nreturn cljs.core.js_reserved.hasOwnProperty(x);\n});\ncljs.core.demunge_pattern \x3d (function cljs$core$demunge_pattern(){\nif(cljs.core.truth_(cljs.core.DEMUNGE_PATTERN)){\n} else {\n(cljs.core.DEMUNGE_PATTERN \x3d (function (){var ks \x3d cljs.core.sort.cljs$core$IFn$_invoke$arity$2((function (a,b){\nreturn (b.length - a.length);\n}),cljs.core.js_keys(cljs.core.DEMUNGE_MAP));\nvar ks__$1 \x3d ks;\nvar ret \x3d \x22\x22;\nwhile(true){\nif(cljs.core.seq(ks__$1)){\nvar G__49520 \x3d cljs.core.next(ks__$1);\nvar G__49521 \x3d [(function (){var G__39713 \x3d ret;\nif((!((ret \x3d\x3d\x3d \x22\x22)))){\nreturn [G__39713,\x22|\x22].join(\x27\x27);\n} else {\nreturn G__39713;\n}\n})(),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(ks__$1))].join(\x27\x27);\nks__$1 \x3d G__49520;\nret \x3d G__49521;\ncontinue;\n} else {\nreturn [ret,\x22|\\\\$\x22].join(\x27\x27);\n}\nbreak;\n}\n})());\n}\n\nreturn cljs.core.DEMUNGE_PATTERN;\n});\ncljs.core.munge_str \x3d (function cljs$core$munge_str(name){\nvar sb \x3d (new goog.string.StringBuffer());\nvar i_49531 \x3d (0);\nwhile(true){\nif((i_49531 \x3c name.length)){\nvar c_49532 \x3d name.charAt(i_49531);\nvar sub_49533 \x3d goog.object.get(cljs.core.CHAR_MAP,c_49532);\nif((!((sub_49533 \x3d\x3d null)))){\nsb.append(sub_49533);\n} else {\nsb.append(c_49532);\n}\n\nvar G__49534 \x3d (i_49531 + (1));\ni_49531 \x3d G__49534;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn sb.toString();\n});\ncljs.core.munge \x3d (function cljs$core$munge(name){\nvar name_SINGLEQUOTE_ \x3d cljs.core.munge_str(cljs.core.str.cljs$core$IFn$_invoke$arity$1(name));\nvar name_SINGLEQUOTE___$1 \x3d (((name_SINGLEQUOTE_ \x3d\x3d\x3d \x22..\x22))?\x22_DOT__DOT_\x22:(cljs.core.truth_(cljs.core.js_reserved_QMARK_(name_SINGLEQUOTE_))?[name_SINGLEQUOTE_,\x22$\x22].join(\x27\x27):name_SINGLEQUOTE_\n));\nif((name instanceof cljs.core.Symbol)){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(name_SINGLEQUOTE___$1);\n} else {\nreturn name_SINGLEQUOTE___$1;\n}\n});\ncljs.core.demunge_str \x3d (function cljs$core$demunge_str(munged_name){\nvar r \x3d (new RegExp(cljs.core.demunge_pattern(),\x22g\x22));\nvar munged_name__$1 \x3d (cljs.core.truth_(goog.string.endsWith(munged_name,\x22$\x22))?munged_name.substring((0),(munged_name.length - (1))):munged_name);\nvar ret \x3d \x22\x22;\nvar last_match_end \x3d (0);\nwhile(true){\nvar temp__5751__auto__ \x3d r.exec(munged_name__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar match \x3d temp__5751__auto__;\nvar vec__39717 \x3d match;\nvar x \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39717,(0),null);\nvar G__49545 \x3d [ret,cljs.core.str.cljs$core$IFn$_invoke$arity$1(munged_name__$1.substring(last_match_end,(r.lastIndex - x.length))),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((x \x3d\x3d\x3d \x22$\x22))?\x22/\x22:goog.object.get(cljs.core.DEMUNGE_MAP,x)))].join(\x27\x27);\nvar G__49546 \x3d r.lastIndex;\nret \x3d G__49545;\nlast_match_end \x3d G__49546;\ncontinue;\n} else {\nreturn [ret,cljs.core.str.cljs$core$IFn$_invoke$arity$1(munged_name__$1.substring(last_match_end,munged_name__$1.length))].join(\x27\x27);\n}\nbreak;\n}\n});\ncljs.core.demunge \x3d (function cljs$core$demunge(name){\nvar G__39721 \x3d (function (){var name_SINGLEQUOTE_ \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(name);\nif((name_SINGLEQUOTE_ \x3d\x3d\x3d \x22_DOT__DOT_\x22)){\nreturn \x22..\x22;\n} else {\nreturn cljs.core.demunge_str(name_SINGLEQUOTE_);\n}\n})();\nvar fexpr__39720 \x3d (((name instanceof cljs.core.Symbol))?cljs.core.symbol:cljs.core.str);\nreturn (fexpr__39720.cljs$core$IFn$_invoke$arity$1 ? fexpr__39720.cljs$core$IFn$_invoke$arity$1(G__39721) : fexpr__39720.call(null,G__39721));\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.tapset !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * @type {*}\n */\ncljs.core.tapset \x3d null;\n}\ncljs.core.maybe_init_tapset \x3d (function cljs$core$maybe_init_tapset(){\nif((cljs.core.tapset \x3d\x3d null)){\nreturn (cljs.core.tapset \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentHashSet.EMPTY));\n} else {\nreturn null;\n}\n});\n/**\n * Adds f, a fn of one argument, to the tap set. This function will be called with\n *   anything sent via tap\x3e. Remember f in order to remove-tap\n */\ncljs.core.add_tap \x3d (function cljs$core$add_tap(f){\ncljs.core.maybe_init_tapset();\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cljs.core.tapset,cljs.core.conj,f);\n\nreturn null;\n});\n/**\n * Remove f from the tap set.\n */\ncljs.core.remove_tap \x3d (function cljs$core$remove_tap(f){\ncljs.core.maybe_init_tapset();\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cljs.core.tapset,cljs.core.disj,f);\n\nreturn null;\n});\n/**\n * Sends x to any taps. Returns the result of *exec-tap-fn*, a Boolean value.\n */\ncljs.core.tap_GT_ \x3d (function cljs$core$tap_GT_(x){\ncljs.core.maybe_init_tapset();\n\nreturn cljs.core._STAR_exec_tap_fn_STAR_.call(null,(function (){\nvar seq__39722 \x3d cljs.core.seq(cljs.core.deref(cljs.core.tapset));\nvar chunk__39723 \x3d null;\nvar count__39724 \x3d (0);\nvar i__39725 \x3d (0);\nwhile(true){\nif((i__39725 \x3c count__39724)){\nvar tap \x3d chunk__39723.cljs$core$IIndexed$_nth$arity$2(null,i__39725);\ntry{(tap.cljs$core$IFn$_invoke$arity$1 ? tap.cljs$core$IFn$_invoke$arity$1(x) : tap.call(null,x));\n}catch (e39728){if((e39728 instanceof Error)){\nvar ex_49554 \x3d e39728;\n} else {\nthrow e39728;\n\n}\n}\n\nvar G__49556 \x3d seq__39722;\nvar G__49557 \x3d chunk__39723;\nvar G__49558 \x3d count__39724;\nvar G__49559 \x3d (i__39725 + (1));\nseq__39722 \x3d G__49556;\nchunk__39723 \x3d G__49557;\ncount__39724 \x3d G__49558;\ni__39725 \x3d G__49559;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39722);\nif(temp__5753__auto__){\nvar seq__39722__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39722__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39722__$1);\nvar G__49564 \x3d cljs.core.chunk_rest(seq__39722__$1);\nvar G__49565 \x3d c__4591__auto__;\nvar G__49566 \x3d cljs.core.count(c__4591__auto__);\nvar G__49567 \x3d (0);\nseq__39722 \x3d G__49564;\nchunk__39723 \x3d G__49565;\ncount__39724 \x3d G__49566;\ni__39725 \x3d G__49567;\ncontinue;\n} else {\nvar tap \x3d cljs.core.first(seq__39722__$1);\ntry{(tap.cljs$core$IFn$_invoke$arity$1 ? tap.cljs$core$IFn$_invoke$arity$1(x) : tap.call(null,x));\n}catch (e39729){if((e39729 instanceof Error)){\nvar ex_49569 \x3d e39729;\n} else {\nthrow e39729;\n\n}\n}\n\nvar G__49570 \x3d cljs.core.next(seq__39722__$1);\nvar G__49571 \x3d null;\nvar G__49572 \x3d (0);\nvar G__49573 \x3d (0);\nseq__39722 \x3d G__49570;\nchunk__39723 \x3d G__49571;\ncount__39724 \x3d G__49572;\ni__39725 \x3d G__49573;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n});\n/**\n * Bootstrap only.\n */\ncljs.core.ns_lookup \x3d (function cljs$core$ns_lookup(ns_obj,k){\nreturn (function (){\nreturn goog.object.get(ns_obj,k);\n});\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n*/\ncljs.core.Namespace \x3d (function (obj,name){\nthis.obj \x3d obj;\nthis.name \x3d name;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 6291456;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.Namespace.prototype.findInternedVar \x3d (function (sym){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar k \x3d cljs.core.munge(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym));\nif(goog.object.containsKey(self__.obj,k)){\nvar var_sym \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.name),cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym));\nvar var_meta \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),this$], null);\nreturn (new cljs.core.Var(cljs.core.ns_lookup(self__.obj,k),var_sym,var_meta));\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.Namespace.prototype.getName \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn self__.name;\n}));\n\n(cljs.core.Namespace.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.name);\n}));\n\n(cljs.core.Namespace.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (_,other){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((other instanceof cljs.core.Namespace)){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(self__.name,other.name);\n} else {\nreturn false;\n}\n}));\n\n(cljs.core.Namespace.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.hash(self__.name);\n}));\n\n(cljs.core.Namespace.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null);\n}));\n\n(cljs.core.Namespace.cljs$lang$type \x3d true);\n\n(cljs.core.Namespace.cljs$lang$ctorStr \x3d \x22cljs.core/Namespace\x22);\n\n(cljs.core.Namespace.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core/Namespace\x22);\n}));\n\n/**\n * Positional factory function for cljs.core/Namespace.\n */\ncljs.core.__GT_Namespace \x3d (function cljs$core$__GT_Namespace(obj,name){\nreturn (new cljs.core.Namespace(obj,name));\n});\n\n/**\n * Bootstrap only.\n * @type {*}\n */\ncljs.core.NS_CACHE \x3d null;\n/**\n * Bootstrap only.\n */\ncljs.core.find_ns_obj_STAR_ \x3d (function cljs$core$find_ns_obj_STAR_(ctxt,xs){\nwhile(true){\nif((ctxt \x3d\x3d null)){\nreturn null;\n} else {\nif((xs \x3d\x3d null)){\nreturn ctxt;\n} else {\nvar G__49586 \x3d goog.object.get(ctxt,cljs.core.first(xs));\nvar G__49587 \x3d cljs.core.next(xs);\nctxt \x3d G__49586;\nxs \x3d G__49587;\ncontinue;\n\n}\n}\nbreak;\n}\n});\n/**\n * Bootstrap only.\n */\ncljs.core.find_ns_obj \x3d (function cljs$core$find_ns_obj(ns){\nvar munged_ns \x3d cljs.core.munge(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns));\nvar segs \x3d munged_ns.split(\x22.\x22);\nvar G__39730 \x3d cljs.core._STAR_target_STAR_;\nswitch (G__39730) {\ncase \x22nodejs\x22:\nif(COMPILED){\nreturn cljs.core.find_ns_obj_STAR_((function (){try{var ctxt \x3d eval(cljs.core.first(segs));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d ctxt;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.object_QMARK_(ctxt);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn ctxt;\n} else {\nreturn null;\n}\n}catch (e39731){if((e39731 instanceof ReferenceError)){\nvar e \x3d e39731;\nreturn null;\n} else {\nthrow e39731;\n\n}\n}})(),cljs.core.next(segs));\n} else {\nreturn cljs.core.find_ns_obj_STAR_(goog.global,segs);\n}\n\nbreak;\ncase \x22default\x22:\ncase \x22webworker\x22:\nreturn cljs.core.find_ns_obj_STAR_(goog.global,segs);\n\nbreak;\ndefault:\nthrow (new Error([\x22find-ns-obj not supported for target \x22,cljs.core._STAR_target_STAR_].join(\x27\x27)));\n\n}\n});\n/**\n * Returns a map of the intern mappings for the namespace.\n *   Bootstrap only.\n */\ncljs.core.ns_interns_STAR_ \x3d (function cljs$core$ns_interns_STAR_(sym){\nvar ns_obj \x3d cljs.core.find_ns_obj(sym);\nvar ns \x3d (new cljs.core.Namespace(ns_obj,sym));\nvar step \x3d (function cljs$core$ns_interns_STAR__$_step(ret,k){\nvar var_sym \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.demunge(k));\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,var_sym,(new cljs.core.Var((function (){\nreturn goog.object.get(ns_obj,k);\n}),cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym),cljs.core.str.cljs$core$IFn$_invoke$arity$1(var_sym)),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns], null))));\n});\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(step,cljs.core.PersistentArrayMap.EMPTY,cljs.core.js_keys(ns_obj));\n});\n/**\n * Create a new namespace named by the symbol. Bootstrap only.\n */\ncljs.core.create_ns \x3d (function cljs$core$create_ns(var_args){\nvar G__39733 \x3d arguments.length;\nswitch (G__39733) {\ncase 1:\nreturn cljs.core.create_ns.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.create_ns.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.create_ns.cljs$core$IFn$_invoke$arity$1 \x3d (function (sym){\nreturn cljs.core.create_ns.cljs$core$IFn$_invoke$arity$2(sym,cljs.core.find_ns_obj(sym));\n}));\n\n(cljs.core.create_ns.cljs$core$IFn$_invoke$arity$2 \x3d (function (sym,ns_obj){\nreturn (new cljs.core.Namespace(ns_obj,sym));\n}));\n\n(cljs.core.create_ns.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns the namespace named by the symbol or nil if it doesn\x27t exist.\n *   Bootstrap only.\n */\ncljs.core.find_ns \x3d (function cljs$core$find_ns(ns){\nif((cljs.core.NS_CACHE \x3d\x3d null)){\n(cljs.core.NS_CACHE \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY));\n} else {\n}\n\nvar the_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.core.NS_CACHE),ns);\nif((!((the_ns \x3d\x3d null)))){\nreturn the_ns;\n} else {\nvar ns_obj \x3d cljs.core.find_ns_obj(ns);\nif((ns_obj \x3d\x3d null)){\nreturn null;\n} else {\nvar new_ns \x3d cljs.core.create_ns.cljs$core$IFn$_invoke$arity$2(ns,ns_obj);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.NS_CACHE,cljs.core.assoc,ns,new_ns);\n\nreturn new_ns;\n}\n}\n});\n/**\n * Returns the macros namespace named by the symbol or nil if it doesn\x27t exist.\n *   Bootstrap only.\n */\ncljs.core.find_macros_ns \x3d (function cljs$core$find_macros_ns(ns){\nif((cljs.core.NS_CACHE \x3d\x3d null)){\n(cljs.core.NS_CACHE \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY));\n} else {\n}\n\nvar ns_str \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns);\nvar ns__$1 \x3d (((!(goog.string.contains(ns_str,\x22$macros\x22))))?cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([ns_str,\x22$macros\x22].join(\x27\x27)):ns);\nvar the_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.core.NS_CACHE),ns__$1);\nif((!((the_ns \x3d\x3d null)))){\nreturn the_ns;\n} else {\nvar ns_obj \x3d cljs.core.find_ns_obj(ns__$1);\nif((ns_obj \x3d\x3d null)){\nreturn null;\n} else {\nvar new_ns \x3d cljs.core.create_ns.cljs$core$IFn$_invoke$arity$2(ns__$1,ns_obj);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.NS_CACHE,cljs.core.assoc,ns__$1,new_ns);\n\nreturn new_ns;\n}\n}\n});\n/**\n * Returns the name of the namespace, a Namespace object.\n *   Bootstrap only.\n */\ncljs.core.ns_name \x3d (function cljs$core$ns_name(ns_obj){\nreturn ns_obj.name;\n});\n/**\n * Returns true x is a goog.Uri instance.\n */\ncljs.core.uri_QMARK_ \x3d (function cljs$core$uri_QMARK_(x){\nreturn (x instanceof goog.Uri);\n});\ncljs.core.maybe_enable_print_BANG_ \x3d (function cljs$core$maybe_enable_print_BANG_(){\nif((typeof console !\x3d\x3d \x27undefined\x27)){\nreturn cljs.core.enable_console_print_BANG_();\n} else {\nif((((cljs.core._STAR_target_STAR_ \x3d\x3d\x3d \x22nashorn\x22)) || ((cljs.core._STAR_target_STAR_ \x3d\x3d\x3d \x22graaljs\x22)))){\nvar system \x3d Java.type(\x22java.lang.System\x22);\n(cljs.core._STAR_print_newline_STAR_ \x3d false);\n\ncljs.core.set_print_fn_BANG_((function (){\nvar xs \x3d arguments;\nvar s \x3d goog.array.clone(xs).join(\x22\x22);\nreturn system.out.println(s);\n}));\n\nreturn cljs.core.set_print_err_fn_BANG_((function (){\nvar xs \x3d arguments;\nvar s \x3d goog.array.clone(xs).join(\x22\x22);\nreturn system.error.println(s);\n}));\n} else {\nreturn null;\n}\n}\n});\ncljs.core.maybe_enable_print_BANG_();\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core._STAR_eval_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * Runtime environments may provide a way to evaluate ClojureScript\n *   forms. Whatever function *eval* is bound to will be passed any forms which\n *   should be evaluated.\n */\ncljs.core._STAR_eval_STAR_ \x3d (function cljs$core$_STAR_eval_STAR_(_){\nthrow (new Error(\x22cljs.core/*eval* not bound\x22));\n});\n}\n/**\n * Evaluates the form data structure (not text!) and returns the result.\n *   Delegates to cljs.core/*eval*. Intended for use in self-hosted ClojureScript,\n *   which sets up an implementation of cljs.core/*eval* for that environment.\n */\ncljs.core.eval \x3d (function cljs$core$eval(form){\nreturn cljs.core._STAR_eval_STAR_.call(null,form);\n});\nif(COMPILED){\nif((\x22nodejs\x22 \x3d\x3d\x3d cljs.core._STAR_target_STAR_)){\n(goog.global \x3d global);\n} else {\n}\n\nif((\x22window\x22 \x3d\x3d\x3d cljs.core._STAR_global_STAR_)){\n(goog.global \x3d window);\n} else {\nif((\x22self\x22 \x3d\x3d\x3d cljs.core._STAR_global_STAR_)){\n(goog.global \x3d self);\n} else {\nif((\x22global\x22 \x3d\x3d\x3d cljs.core._STAR_global_STAR_)){\n(goog.global \x3d global);\n} else {\n}\n}\n}\n} else {\n}\n\ncljs.core.enable_console_print_BANG_();\n");
SHADOW_ENV.evalLoad("clojure.string.js", true , "goog.provide(\x27clojure.string\x27);\nclojure.string.seq_reverse \x3d (function clojure$string$seq_reverse(coll){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,cljs.core.List.EMPTY,coll);\n});\nclojure.string.re_surrogate_pair \x3d (new RegExp(\x22([\\\\uD800-\\\\uDBFF])([\\\\uDC00-\\\\uDFFF])\x22,\x22g\x22));\n/**\n * Returns s with its characters reversed.\n */\nclojure.string.reverse \x3d (function clojure$string$reverse(s){\nreturn s.replace(clojure.string.re_surrogate_pair,\x22$2$1\x22).split(\x22\x22).reverse().join(\x22\x22);\n});\nclojure.string.replace_all \x3d (function clojure$string$replace_all(s,re,replacement){\nvar r \x3d (new RegExp(re.source,(function (){var G__39743 \x3d \x22g\x22;\nvar G__39743__$1 \x3d (cljs.core.truth_(re.ignoreCase)?[G__39743,\x22i\x22].join(\x27\x27):G__39743);\nvar G__39743__$2 \x3d (cljs.core.truth_(re.multiline)?[G__39743__$1,\x22m\x22].join(\x27\x27):G__39743__$1);\nif(cljs.core.truth_(re.unicode)){\nreturn [G__39743__$2,\x22u\x22].join(\x27\x27);\n} else {\nreturn G__39743__$2;\n}\n})()));\nreturn s.replace(r,replacement);\n});\nclojure.string.replace_with \x3d (function clojure$string$replace_with(f){\nreturn (function() { \nvar G__39818__delegate \x3d function (args){\nvar matches \x3d cljs.core.drop_last.cljs$core$IFn$_invoke$arity$2((2),args);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(matches),(1))){\nvar G__39744 \x3d cljs.core.first(matches);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__39744) : f.call(null,G__39744));\n} else {\nvar G__39745 \x3d cljs.core.vec(matches);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__39745) : f.call(null,G__39745));\n}\n};\nvar G__39818 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__39823__i \x3d 0, G__39823__a \x3d new Array(arguments.length -  0);\nwhile (G__39823__i \x3c G__39823__a.length) {G__39823__a[G__39823__i] \x3d arguments[G__39823__i + 0]; ++G__39823__i;}\n  args \x3d new cljs.core.IndexedSeq(G__39823__a,0,null);\n} \nreturn G__39818__delegate.call(this,args);};\nG__39818.cljs$lang$maxFixedArity \x3d 0;\nG__39818.cljs$lang$applyTo \x3d (function (arglist__39824){\nvar args \x3d cljs.core.seq(arglist__39824);\nreturn G__39818__delegate(args);\n});\nG__39818.cljs$core$IFn$_invoke$arity$variadic \x3d G__39818__delegate;\nreturn G__39818;\n})()\n;\n});\n/**\n * Replaces all instance of match with replacement in s.\n * \n * match/replacement can be:\n * \n * string / string\n * pattern / (string or function of match).\n * \n * See also replace-first.\n * \n * The replacement is literal (i.e. none of its characters are treated\n * specially) for all cases above except pattern / string.\n * \n * For pattern / string, $1, $2, etc. in the replacement string are\n * substituted with the string that matched the corresponding\n * parenthesized group in the pattern.\n * \n * Example:\n * (clojure.string/replace \x22Almost Pig Latin\x22 #\x22\\b(\\w)(\\w+)\\b\x22 \x22$2$1ay\x22)\n * -\x3e \x22lmostAay igPay atinLay\x22\n */\nclojure.string.replace \x3d (function clojure$string$replace(s,match,replacement){\nif(typeof match \x3d\x3d\x3d \x27string\x27){\nreturn s.replace((new RegExp(goog.string.regExpEscape(match),\x22g\x22)),replacement);\n} else {\nif((match instanceof RegExp)){\nif(typeof replacement \x3d\x3d\x3d \x27string\x27){\nreturn clojure.string.replace_all(s,match,replacement);\n} else {\nreturn clojure.string.replace_all(s,match,clojure.string.replace_with(replacement));\n}\n} else {\nthrow [\x22Invalid match arg: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(match)].join(\x27\x27);\n\n}\n}\n});\n/**\n * Replaces the first instance of match with replacement in s.\n * \n * match/replacement can be:\n * \n * string / string\n * pattern / (string or function of match).\n * \n * See also replace.\n * \n * The replacement is literal (i.e. none of its characters are treated\n * specially) for all cases above except pattern / string.\n * \n * For pattern / string, $1, $2, etc. in the replacement string are\n * substituted with the string that matched the corresponding\n * parenthesized group in the pattern.\n * \n * Example:\n * (clojure.string/replace-first \x22swap first two words\x22\n *                               #\x22(\\w+)(\\s+)(\\w+)\x22 \x22$3$2$1\x22)\n * -\x3e \x22first swap two words\x22\n */\nclojure.string.replace_first \x3d (function clojure$string$replace_first(s,match,replacement){\nreturn s.replace(match,replacement);\n});\n/**\n * Returns a string of all elements in coll, as returned by (seq coll),\n *   separated by an optional separator.\n */\nclojure.string.join \x3d (function clojure$string$join(var_args){\nvar G__39754 \x3d arguments.length;\nswitch (G__39754) {\ncase 1:\nreturn clojure.string.join.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn clojure.string.join.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(clojure.string.join.cljs$core$IFn$_invoke$arity$1 \x3d (function (coll){\nvar sb \x3d (new goog.string.StringBuffer());\nvar coll__$1 \x3d cljs.core.seq(coll);\nwhile(true){\nif((!((coll__$1 \x3d\x3d null)))){\nvar G__39850 \x3d sb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));\nvar G__39851 \x3d cljs.core.next(coll__$1);\nsb \x3d G__39850;\ncoll__$1 \x3d G__39851;\ncontinue;\n} else {\nreturn sb.toString();\n}\nbreak;\n}\n}));\n\n(clojure.string.join.cljs$core$IFn$_invoke$arity$2 \x3d (function (separator,coll){\nvar sb \x3d (new goog.string.StringBuffer());\nvar coll__$1 \x3d cljs.core.seq(coll);\nwhile(true){\nif((!((coll__$1 \x3d\x3d null)))){\nsb.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(coll__$1)));\n\nvar coll__$2 \x3d cljs.core.next(coll__$1);\nif((coll__$2 \x3d\x3d null)){\n} else {\nsb.append(separator);\n}\n\nvar G__39864 \x3d sb;\nvar G__39865 \x3d coll__$2;\nsb \x3d G__39864;\ncoll__$1 \x3d G__39865;\ncontinue;\n} else {\nreturn sb.toString();\n}\nbreak;\n}\n}));\n\n(clojure.string.join.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Converts string to all upper-case.\n */\nclojure.string.upper_case \x3d (function clojure$string$upper_case(s){\nreturn s.toUpperCase();\n});\n/**\n * Converts string to all lower-case.\n */\nclojure.string.lower_case \x3d (function clojure$string$lower_case(s){\nreturn s.toLowerCase();\n});\n/**\n * Converts first character of the string to upper-case, all other\n *   characters to lower-case.\n */\nclojure.string.capitalize \x3d (function clojure$string$capitalize(s){\nreturn goog.string.capitalize(s);\n});\nclojure.string.pop_last_while_empty \x3d (function clojure$string$pop_last_while_empty(v){\nvar v__$1 \x3d v;\nwhile(true){\nif((\x22\x22 \x3d\x3d\x3d cljs.core.peek(v__$1))){\nvar G__39876 \x3d cljs.core.pop(v__$1);\nv__$1 \x3d G__39876;\ncontinue;\n} else {\nreturn v__$1;\n}\nbreak;\n}\n});\nclojure.string.discard_trailing_if_needed \x3d (function clojure$string$discard_trailing_if_needed(limit,v){\nif(((((0) \x3d\x3d\x3d limit)) \x26\x26 (((1) \x3c cljs.core.count(v))))){\nreturn clojure.string.pop_last_while_empty(v);\n} else {\nreturn v;\n}\n});\nclojure.string.split_with_empty_regex \x3d (function clojure$string$split_with_empty_regex(s,limit){\nif((((limit \x3c\x3d (0))) || ((limit \x3e\x3d ((2) + cljs.core.count(s)))))){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons(\x22\x22,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s)))),\x22\x22);\n} else {\nvar pred__39765 \x3d cljs.core._EQ__EQ_;\nvar expr__39766 \x3d limit;\nif(cljs.core.truth_((pred__39765.cljs$core$IFn$_invoke$arity$2 ? pred__39765.cljs$core$IFn$_invoke$arity$2((1),expr__39766) : pred__39765.call(null,(1),expr__39766)))){\nreturn (new cljs.core.PersistentVector(null,1,(5),cljs.core.PersistentVector.EMPTY_NODE,[s],null));\n} else {\nif(cljs.core.truth_((pred__39765.cljs$core$IFn$_invoke$arity$2 ? pred__39765.cljs$core$IFn$_invoke$arity$2((2),expr__39766) : pred__39765.call(null,(2),expr__39766)))){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[\x22\x22,s],null));\n} else {\nvar c \x3d (limit - (2));\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.vec(cljs.core.cons(\x22\x22,cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.seq(s))),(0),c))),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,c));\n}\n}\n}\n});\n/**\n * Splits string on a regular expression. Optional argument limit is\n *   the maximum number of splits. Not lazy. Returns vector of the splits.\n */\nclojure.string.split \x3d (function clojure$string$split(var_args){\nvar G__39773 \x3d arguments.length;\nswitch (G__39773) {\ncase 2:\nreturn clojure.string.split.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn clojure.string.split.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(clojure.string.split.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,re){\nreturn clojure.string.split.cljs$core$IFn$_invoke$arity$3(s,re,(0));\n}));\n\n(clojure.string.split.cljs$core$IFn$_invoke$arity$3 \x3d (function (s,re,limit){\nreturn clojure.string.discard_trailing_if_needed(limit,(((\x22/(?:)/\x22 \x3d\x3d\x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(re)))?clojure.string.split_with_empty_regex(s,limit):(((limit \x3c (1)))?cljs.core.vec(cljs.core.str.cljs$core$IFn$_invoke$arity$1(s).split(re)):(function (){var s__$1 \x3d s;\nvar limit__$1 \x3d limit;\nvar parts \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nif(((1) \x3d\x3d\x3d limit__$1)){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);\n} else {\nvar m \x3d cljs.core.re_find(re,s__$1);\nif((!((m \x3d\x3d null)))){\nvar index \x3d s__$1.indexOf(m);\nvar G__39902 \x3d s__$1.substring((index + cljs.core.count(m)));\nvar G__39903 \x3d (limit__$1 - (1));\nvar G__39904 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1.substring((0),index));\ns__$1 \x3d G__39902;\nlimit__$1 \x3d G__39903;\nparts \x3d G__39904;\ncontinue;\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(parts,s__$1);\n}\n}\nbreak;\n}\n})())));\n}));\n\n(clojure.string.split.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Splits s on \\n or \\r\\n.\n */\nclojure.string.split_lines \x3d (function clojure$string$split_lines(s){\nreturn clojure.string.split.cljs$core$IFn$_invoke$arity$2(s,/\\n|\\r\\n/);\n});\n/**\n * Removes whitespace from both ends of string.\n */\nclojure.string.trim \x3d (function clojure$string$trim(s){\nreturn goog.string.trim(s);\n});\n/**\n * Removes whitespace from the left side of string.\n */\nclojure.string.triml \x3d (function clojure$string$triml(s){\nreturn goog.string.trimLeft(s);\n});\n/**\n * Removes whitespace from the right side of string.\n */\nclojure.string.trimr \x3d (function clojure$string$trimr(s){\nreturn goog.string.trimRight(s);\n});\n/**\n * Removes all trailing newline \\n or return \\r characters from\n *   string.  Similar to Perl\x27s chomp.\n */\nclojure.string.trim_newline \x3d (function clojure$string$trim_newline(s){\nvar index \x3d s.length;\nwhile(true){\nif((index \x3d\x3d\x3d (0))){\nreturn \x22\x22;\n} else {\nvar ch \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(s,(index - (1)));\nif((((\x22\\n\x22 \x3d\x3d\x3d ch)) || ((\x22\\r\x22 \x3d\x3d\x3d ch)))){\nvar G__39919 \x3d (index - (1));\nindex \x3d G__39919;\ncontinue;\n} else {\nreturn s.substring((0),index);\n}\n}\nbreak;\n}\n});\n/**\n * True is s is nil, empty, or contains only whitespace.\n */\nclojure.string.blank_QMARK_ \x3d (function clojure$string$blank_QMARK_(s){\nreturn goog.string.isEmptyOrWhitespace(goog.string.makeSafe(s));\n});\n/**\n * Return a new string, using cmap to escape each character ch\n * from s as follows:\n * \n * If (cmap ch) is nil, append ch to the new string.\n * If (cmap ch) is non-nil, append (str (cmap ch)) instead.\n */\nclojure.string.escape \x3d (function clojure$string$escape(s,cmap){\nvar buffer \x3d (new goog.string.StringBuffer());\nvar length \x3d s.length;\nvar index \x3d (0);\nwhile(true){\nif((length \x3d\x3d\x3d index)){\nreturn buffer.toString();\n} else {\nvar ch \x3d s.charAt(index);\nvar replacement \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cmap,ch);\nif((!((replacement \x3d\x3d null)))){\nbuffer.append(cljs.core.str.cljs$core$IFn$_invoke$arity$1(replacement));\n} else {\nbuffer.append(ch);\n}\n\nvar G__39933 \x3d (index + (1));\nindex \x3d G__39933;\ncontinue;\n}\nbreak;\n}\n});\n/**\n * Return index of value (string or char) in s, optionally searching\n *   forward from from-index or nil if not found.\n */\nclojure.string.index_of \x3d (function clojure$string$index_of(var_args){\nvar G__39800 \x3d arguments.length;\nswitch (G__39800) {\ncase 2:\nreturn clojure.string.index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn clojure.string.index_of.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(clojure.string.index_of.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,value){\nvar result \x3d s.indexOf(value);\nif((result \x3c (0))){\nreturn null;\n} else {\nreturn result;\n}\n}));\n\n(clojure.string.index_of.cljs$core$IFn$_invoke$arity$3 \x3d (function (s,value,from_index){\nvar result \x3d s.indexOf(value,from_index);\nif((result \x3c (0))){\nreturn null;\n} else {\nreturn result;\n}\n}));\n\n(clojure.string.index_of.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Return last index of value (string or char) in s, optionally\n *   searching backward from from-index or nil if not found.\n */\nclojure.string.last_index_of \x3d (function clojure$string$last_index_of(var_args){\nvar G__39806 \x3d arguments.length;\nswitch (G__39806) {\ncase 2:\nreturn clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,value){\nvar result \x3d s.lastIndexOf(value);\nif((result \x3c (0))){\nreturn null;\n} else {\nreturn result;\n}\n}));\n\n(clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$3 \x3d (function (s,value,from_index){\nvar result \x3d s.lastIndexOf(value,from_index);\nif((result \x3c (0))){\nreturn null;\n} else {\nreturn result;\n}\n}));\n\n(clojure.string.last_index_of.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * True if s starts with substr.\n */\nclojure.string.starts_with_QMARK_ \x3d (function clojure$string$starts_with_QMARK_(s,substr){\nreturn goog.string.startsWith(s,substr);\n});\n/**\n * True if s ends with substr.\n */\nclojure.string.ends_with_QMARK_ \x3d (function clojure$string$ends_with_QMARK_(s,substr){\nreturn goog.string.endsWith(s,substr);\n});\n/**\n * True if s includes substr.\n */\nclojure.string.includes_QMARK_ \x3d (function clojure$string$includes_QMARK_(s,substr){\nreturn goog.string.contains(s,substr);\n});\n");
SHADOW_ENV.evalLoad("shadow.cljs.devtools.client.console.js", true , "goog.provide(\x27shadow.cljs.devtools.client.console\x27);\nshadow.cljs.devtools.client.console.push_all \x3d (function shadow$cljs$devtools$client$console$push_all(arr,item){\nif(cljs.core.vector_QMARK_(item)){\nvar seq__39819 \x3d cljs.core.seq(item);\nvar chunk__39820 \x3d null;\nvar count__39821 \x3d (0);\nvar i__39822 \x3d (0);\nwhile(true){\nif((i__39822 \x3c count__39821)){\nvar it \x3d chunk__39820.cljs$core$IIndexed$_nth$arity$2(null,i__39822);\narr.push(it);\n\n\nvar G__40036 \x3d seq__39819;\nvar G__40037 \x3d chunk__39820;\nvar G__40038 \x3d count__39821;\nvar G__40039 \x3d (i__39822 + (1));\nseq__39819 \x3d G__40036;\nchunk__39820 \x3d G__40037;\ncount__39821 \x3d G__40038;\ni__39822 \x3d G__40039;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__39819);\nif(temp__5753__auto__){\nvar seq__39819__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__39819__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__39819__$1);\nvar G__40048 \x3d cljs.core.chunk_rest(seq__39819__$1);\nvar G__40049 \x3d c__4591__auto__;\nvar G__40050 \x3d cljs.core.count(c__4591__auto__);\nvar G__40051 \x3d (0);\nseq__39819 \x3d G__40048;\nchunk__39820 \x3d G__40049;\ncount__39821 \x3d G__40050;\ni__39822 \x3d G__40051;\ncontinue;\n} else {\nvar it \x3d cljs.core.first(seq__39819__$1);\narr.push(it);\n\n\nvar G__40058 \x3d cljs.core.next(seq__39819__$1);\nvar G__40059 \x3d null;\nvar G__40060 \x3d (0);\nvar G__40061 \x3d (0);\nseq__39819 \x3d G__40058;\nchunk__39820 \x3d G__40059;\ncount__39821 \x3d G__40060;\ni__39822 \x3d G__40061;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn arr.push(item);\n}\n});\nshadow.cljs.devtools.client.console.object_ref \x3d (function shadow$cljs$devtools$client$console$object_ref(obj){\nif(cljs.core.truth_(obj)){\nreturn [\x22object\x22,({\x22object\x22: obj})];\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.console.map__GT_style \x3d (function shadow$cljs$devtools$client$console$map__GT_style(m){\nreturn ({\x22style\x22: clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22\x22,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__39841){\nvar vec__39844 \x3d p__39841;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39844,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39844,(1),null);\nreturn [cljs.core.name(k),\x22: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(v),\x22;\x22].join(\x27\x27);\n}),m))});\n});\nshadow.cljs.devtools.client.console.clj__GT_jsonml \x3d (function shadow$cljs$devtools$client$console$clj__GT_jsonml(struct){\nif((struct \x3d\x3d null)){\nreturn null;\n} else {\nif(cljs.core.array_QMARK_(struct)){\nreturn struct;\n} else {\nif(cljs.core.vector_QMARK_(struct)){\nvar vec__39854 \x3d struct;\nvar seq__39855 \x3d cljs.core.seq(vec__39854);\nvar first__39856 \x3d cljs.core.first(seq__39855);\nvar seq__39855__$1 \x3d cljs.core.next(seq__39855);\nvar tag \x3d first__39856;\nvar first__39856__$1 \x3d cljs.core.first(seq__39855__$1);\nvar seq__39855__$2 \x3d cljs.core.next(seq__39855__$1);\nvar attrs \x3d first__39856__$1;\nvar children \x3d seq__39855__$2;\nvar js \x3d [cljs.core.name(tag),shadow.cljs.devtools.client.console.map__GT_style(attrs)];\nvar seq__39857_40068 \x3d cljs.core.seq(children);\nvar chunk__39858_40069 \x3d null;\nvar count__39859_40070 \x3d (0);\nvar i__39860_40071 \x3d (0);\nwhile(true){\nif((i__39860_40071 \x3c count__39859_40070)){\nvar child_40072 \x3d chunk__39858_40069.cljs$core$IIndexed$_nth$arity$2(null,i__39860_40071);\nshadow.cljs.devtools.client.console.push_all(js,(shadow.cljs.devtools.client.console.clj__GT_jsonml.cljs$core$IFn$_invoke$arity$1 ? shadow.cljs.devtools.client.console.clj__GT_jsonml.cljs$core$IFn$_invoke$arity$1(child_40072) : shadow.cljs.devtools.client.console.clj__GT_jsonml.call(null,child_40072)));\n\n\nvar G__40073 \x3d seq__39857_40068;\nvar G__40074 \x3d chunk__39858_40069;\nvar G__40075 \x3d count__39859_40070;\nvar G__40076 \x3d (i__39860_40071 + (1));\nseq__39857_40068 \x3d G__40073;\nchunk__39858_40069 \x3d G__40074;\ncount__39859_40070 \x3d G__40075;\ni__39860_40071 \x3d G__40076;\ncontinue;\n} else {\nvar temp__5753__auto___40077 \x3d cljs.core.seq(seq__39857_40068);\nif(temp__5753__auto___40077){\nvar seq__39857_40078__$1 \x3d temp__5753__auto___40077;\nif(cljs.core.chunked_seq_QMARK_(seq__39857_40078__$1)){\nvar c__4591__auto___40079 \x3d cljs.core.chunk_first(seq__39857_40078__$1);\nvar G__40080 \x3d cljs.core.chunk_rest(seq__39857_40078__$1);\nvar G__40081 \x3d c__4591__auto___40079;\nvar G__40082 \x3d cljs.core.count(c__4591__auto___40079);\nvar G__40083 \x3d (0);\nseq__39857_40068 \x3d G__40080;\nchunk__39858_40069 \x3d G__40081;\ncount__39859_40070 \x3d G__40082;\ni__39860_40071 \x3d G__40083;\ncontinue;\n} else {\nvar child_40084 \x3d cljs.core.first(seq__39857_40078__$1);\nshadow.cljs.devtools.client.console.push_all(js,(shadow.cljs.devtools.client.console.clj__GT_jsonml.cljs$core$IFn$_invoke$arity$1 ? shadow.cljs.devtools.client.console.clj__GT_jsonml.cljs$core$IFn$_invoke$arity$1(child_40084) : shadow.cljs.devtools.client.console.clj__GT_jsonml.call(null,child_40084)));\n\n\nvar G__40085 \x3d cljs.core.next(seq__39857_40078__$1);\nvar G__40086 \x3d null;\nvar G__40087 \x3d (0);\nvar G__40088 \x3d (0);\nseq__39857_40068 \x3d G__40085;\nchunk__39858_40069 \x3d G__40086;\ncount__39859_40070 \x3d G__40087;\ni__39860_40071 \x3d G__40088;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn js;\n} else {\nif(typeof struct \x3d\x3d\x3d \x27string\x27){\nreturn struct;\n} else {\nif(typeof struct \x3d\x3d\x3d \x27number\x27){\nreturn struct;\n} else {\nif(cljs.core.seq_QMARK_(struct)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.console.clj__GT_jsonml),struct);\n} else {\nreturn shadow.cljs.devtools.client.console.object_ref(struct);\n\n}\n}\n}\n}\n}\n}\n});\n\n/**\n* @constructor\n*/\nshadow.cljs.devtools.client.console.SeqFormatter \x3d (function (){\n});\n(shadow.cljs.devtools.client.console.SeqFormatter.prototype.shadow$formatter \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(shadow.cljs.devtools.client.console.SeqFormatter.prototype.header \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif(((cljs.core.sequential_QMARK_(obj)) || (cljs.core.set_QMARK_(obj)))){\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),cljs.core.PersistentArrayMap.EMPTY,[cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.type(obj)], 0)),\x22 [count: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.count(obj)),\x22]\x22].join(\x27\x27)], null));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.console.SeqFormatter.prototype.hasBody \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn cljs.core.boolean$(cljs.core.seq(obj));\n}));\n\n(shadow.cljs.devtools.client.console.SeqFormatter.prototype.body \x3d (function (s){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22ol\x22,\x22ol\x22,932524051),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22margin\x22,\x22margin\x22,-995903681),(0)], null),(function (){var iter__4564__auto__ \x3d (function shadow$cljs$devtools$client$console$iter__39906(s__39907){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__39907__$1 \x3d s__39907;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__39907__$1);\nif(temp__5753__auto__){\nvar s__39907__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__39907__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__39907__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__39909 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__39908 \x3d (0);\nwhile(true){\nif((i__39908 \x3c size__4563__auto__)){\nvar value \x3d cljs.core._nth(c__4562__auto__,i__39908);\ncljs.core.chunk_append(b__39909,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22li\x22,\x22li\x22,723558921),cljs.core.PersistentArrayMap.EMPTY,shadow.cljs.devtools.client.console.object_ref(value)], null));\n\nvar G__40099 \x3d (i__39908 + (1));\ni__39908 \x3d G__40099;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__39909),shadow$cljs$devtools$client$console$iter__39906(cljs.core.chunk_rest(s__39907__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__39909),null);\n}\n} else {\nvar value \x3d cljs.core.first(s__39907__$2);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22li\x22,\x22li\x22,723558921),cljs.core.PersistentArrayMap.EMPTY,shadow.cljs.devtools.client.console.object_ref(value)], null),shadow$cljs$devtools$client$console$iter__39906(cljs.core.rest(s__39907__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(s);\n})()], null));\n}));\n\n(shadow.cljs.devtools.client.console.SeqFormatter.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(shadow.cljs.devtools.client.console.SeqFormatter.cljs$lang$type \x3d true);\n\n(shadow.cljs.devtools.client.console.SeqFormatter.cljs$lang$ctorStr \x3d \x22shadow.cljs.devtools.client.console/SeqFormatter\x22);\n\n(shadow.cljs.devtools.client.console.SeqFormatter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.cljs.devtools.client.console/SeqFormatter\x22);\n}));\n\n/**\n * Positional factory function for shadow.cljs.devtools.client.console/SeqFormatter.\n */\nshadow.cljs.devtools.client.console.__GT_SeqFormatter \x3d (function shadow$cljs$devtools$client$console$__GT_SeqFormatter(){\nreturn (new shadow.cljs.devtools.client.console.SeqFormatter());\n});\n\n\n/**\n* @constructor\n*/\nshadow.cljs.devtools.client.console.MapFormatter \x3d (function (){\n});\n(shadow.cljs.devtools.client.console.MapFormatter.prototype.shadow$formatter \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(shadow.cljs.devtools.client.console.MapFormatter.prototype.header \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((((obj instanceof cljs.core.PersistentHashMap)) || ((obj instanceof cljs.core.PersistentArrayMap)) || (cljs.core.record_QMARK_(obj)))){\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),cljs.core.PersistentArrayMap.EMPTY,[cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.type(obj)], 0)),\x22 [count: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.count(obj)),\x22]\x22].join(\x27\x27)], null));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.console.MapFormatter.prototype.hasBody \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn cljs.core.boolean$(cljs.core.seq(obj));\n}));\n\n(shadow.cljs.devtools.client.console.MapFormatter.prototype.body \x3d (function (m){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22table\x22,\x22table\x22,-564943036),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22width\x22,\x22width\x22,-384071477),\x22100%\x22,new cljs.core.Keyword(null,\x22margin-left\x22,\x22margin-left\x22,2015598377),\x2214px\x22], null),(function (){var iter__4564__auto__ \x3d (function shadow$cljs$devtools$client$console$iter__39945(s__39946){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__39946__$1 \x3d s__39946;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__39946__$1);\nif(temp__5753__auto__){\nvar s__39946__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__39946__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__39946__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__39948 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__39947 \x3d (0);\nwhile(true){\nif((i__39947 \x3c size__4563__auto__)){\nvar key \x3d cljs.core._nth(c__4562__auto__,i__39947);\nvar value \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,key);\ncljs.core.chunk_append(b__39948,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22tr\x22,\x22tr\x22,-1424774646),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22vertical-align\x22,\x22vertical-align\x22,651007333),\x22top\x22], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22td\x22,\x22td\x22,1479933353),cljs.core.PersistentArrayMap.EMPTY,shadow.cljs.devtools.client.console.object_ref(key)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22td\x22,\x22td\x22,1479933353),cljs.core.PersistentArrayMap.EMPTY,shadow.cljs.devtools.client.console.object_ref(value)], null)], null));\n\nvar G__40117 \x3d (i__39947 + (1));\ni__39947 \x3d G__40117;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__39948),shadow$cljs$devtools$client$console$iter__39945(cljs.core.chunk_rest(s__39946__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__39948),null);\n}\n} else {\nvar key \x3d cljs.core.first(s__39946__$2);\nvar value \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,key);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22tr\x22,\x22tr\x22,-1424774646),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22vertical-align\x22,\x22vertical-align\x22,651007333),\x22top\x22], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22td\x22,\x22td\x22,1479933353),cljs.core.PersistentArrayMap.EMPTY,shadow.cljs.devtools.client.console.object_ref(key)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22td\x22,\x22td\x22,1479933353),cljs.core.PersistentArrayMap.EMPTY,shadow.cljs.devtools.client.console.object_ref(value)], null)], null),shadow$cljs$devtools$client$console$iter__39945(cljs.core.rest(s__39946__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__((function (){var k \x3d cljs.core.keys(m);\ntry{return cljs.core.sort.cljs$core$IFn$_invoke$arity$1(k);\n}catch (e39959){var e \x3d e39959;\nreturn k;\n}})());\n})()], null));\n}));\n\n(shadow.cljs.devtools.client.console.MapFormatter.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(shadow.cljs.devtools.client.console.MapFormatter.cljs$lang$type \x3d true);\n\n(shadow.cljs.devtools.client.console.MapFormatter.cljs$lang$ctorStr \x3d \x22shadow.cljs.devtools.client.console/MapFormatter\x22);\n\n(shadow.cljs.devtools.client.console.MapFormatter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.cljs.devtools.client.console/MapFormatter\x22);\n}));\n\n/**\n * Positional factory function for shadow.cljs.devtools.client.console/MapFormatter.\n */\nshadow.cljs.devtools.client.console.__GT_MapFormatter \x3d (function shadow$cljs$devtools$client$console$__GT_MapFormatter(){\nreturn (new shadow.cljs.devtools.client.console.MapFormatter());\n});\n\nshadow.cljs.devtools.client.console.keyword_style \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22color\x22,\x22color\x22,1011675173),\x22rgb(136, 19, 145)\x22], null);\n\n/**\n* @constructor\n*/\nshadow.cljs.devtools.client.console.KeywordFormatter \x3d (function (){\n});\n(shadow.cljs.devtools.client.console.KeywordFormatter.prototype.shadow$formatter \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.prototype.header \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((obj instanceof cljs.core.Keyword)){\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),shadow.cljs.devtools.client.console.keyword_style,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([obj], 0))], null));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.prototype.hasBody \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn false;\n}));\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.prototype.body \x3d (function (m){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn null;\n}));\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.cljs$lang$type \x3d true);\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.cljs$lang$ctorStr \x3d \x22shadow.cljs.devtools.client.console/KeywordFormatter\x22);\n\n(shadow.cljs.devtools.client.console.KeywordFormatter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.cljs.devtools.client.console/KeywordFormatter\x22);\n}));\n\n/**\n * Positional factory function for shadow.cljs.devtools.client.console/KeywordFormatter.\n */\nshadow.cljs.devtools.client.console.__GT_KeywordFormatter \x3d (function shadow$cljs$devtools$client$console$__GT_KeywordFormatter(){\nreturn (new shadow.cljs.devtools.client.console.KeywordFormatter());\n});\n\n\n/**\n* @constructor\n*/\nshadow.cljs.devtools.client.console.SymbolFormatter \x3d (function (){\n});\n(shadow.cljs.devtools.client.console.SymbolFormatter.prototype.shadow$formatter \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.prototype.header \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((obj instanceof cljs.core.Symbol)){\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),shadow.cljs.devtools.client.console.keyword_style,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([obj], 0))], null));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.prototype.hasBody \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn false;\n}));\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.prototype.body \x3d (function (m){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn null;\n}));\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.cljs$lang$type \x3d true);\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.cljs$lang$ctorStr \x3d \x22shadow.cljs.devtools.client.console/SymbolFormatter\x22);\n\n(shadow.cljs.devtools.client.console.SymbolFormatter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.cljs.devtools.client.console/SymbolFormatter\x22);\n}));\n\n/**\n * Positional factory function for shadow.cljs.devtools.client.console/SymbolFormatter.\n */\nshadow.cljs.devtools.client.console.__GT_SymbolFormatter \x3d (function shadow$cljs$devtools$client$console$__GT_SymbolFormatter(){\nreturn (new shadow.cljs.devtools.client.console.SymbolFormatter());\n});\n\n\n/**\n* @constructor\n*/\nshadow.cljs.devtools.client.console.DerefFormatter \x3d (function (){\n});\n(shadow.cljs.devtools.client.console.DerefFormatter.prototype.shadow$formatter \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(shadow.cljs.devtools.client.console.DerefFormatter.prototype.header \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif((((obj instanceof cljs.core.Atom)) || ((obj instanceof cljs.core.Volatile)))){\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),shadow.cljs.devtools.client.console.keyword_style,[\x22@DEREF \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.type(obj)], 0))].join(\x27\x27)], null));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.console.DerefFormatter.prototype.hasBody \x3d (function (obj){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn true;\n}));\n\n(shadow.cljs.devtools.client.console.DerefFormatter.prototype.body \x3d (function (v){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn shadow.cljs.devtools.client.console.clj__GT_jsonml(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22margin-left\x22,\x22margin-left\x22,2015598377),\x2214px\x22], null),shadow.cljs.devtools.client.console.object_ref(cljs.core.deref(v))], null));\n}));\n\n(shadow.cljs.devtools.client.console.DerefFormatter.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(shadow.cljs.devtools.client.console.DerefFormatter.cljs$lang$type \x3d true);\n\n(shadow.cljs.devtools.client.console.DerefFormatter.cljs$lang$ctorStr \x3d \x22shadow.cljs.devtools.client.console/DerefFormatter\x22);\n\n(shadow.cljs.devtools.client.console.DerefFormatter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.cljs.devtools.client.console/DerefFormatter\x22);\n}));\n\n/**\n * Positional factory function for shadow.cljs.devtools.client.console/DerefFormatter.\n */\nshadow.cljs.devtools.client.console.__GT_DerefFormatter \x3d (function shadow$cljs$devtools$client$console$__GT_DerefFormatter(){\nreturn (new shadow.cljs.devtools.client.console.DerefFormatter());\n});\n\nshadow.cljs.devtools.client.console.install_all_BANG_ \x3d (function shadow$cljs$devtools$client$console$install_all_BANG_(){\nvar temp__5753__auto__ \x3d goog.global.devtoolsFormatters;\nif(cljs.core.truth_(temp__5753__auto__)){\nvar f \x3d temp__5753__auto__;\nvar G__40021 \x3d f;\nG__40021.push((new shadow.cljs.devtools.client.console.KeywordFormatter()));\n\nG__40021.push((new shadow.cljs.devtools.client.console.MapFormatter()));\n\nG__40021.push((new shadow.cljs.devtools.client.console.SeqFormatter()));\n\nG__40021.push((new shadow.cljs.devtools.client.console.SymbolFormatter()));\n\nG__40021.push((new shadow.cljs.devtools.client.console.DerefFormatter()));\n\nreturn G__40021;\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.console.remove_all_BANG_ \x3d (function shadow$cljs$devtools$client$console$remove_all_BANG_(){\nvar all \x3d cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p1__40023_SHARP_){\nreturn goog.object.get(p1__40023_SHARP_,\x22shadow$formatter\x22);\n}),cljs.core.array_seq.cljs$core$IFn$_invoke$arity$1((function (){var or__4160__auto__ \x3d goog.global.devtoolsFormatters;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn [];\n}\n})())));\nreturn goog.object.set(goog.global,\x22devtoolsFormatters\x22,all);\n});\nshadow.cljs.devtools.client.console.remove_all_BANG_();\nshadow.cljs.devtools.client.console.install_all_BANG_();\n");
SHADOW_ENV.evalLoad("goog.labs.useragent.engine.js", true , "goog.provide(\x22goog.labs.userAgent.engine\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.labs.userAgent.util\x22);\ngoog.require(\x22goog.string\x22);\ngoog.labs.userAgent.engine.isPresto \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Presto\x22);\n};\ngoog.labs.userAgent.engine.isTrident \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Trident\x22) || goog.labs.userAgent.util.matchUserAgent(\x22MSIE\x22);\n};\ngoog.labs.userAgent.engine.isEdge \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Edge\x22);\n};\ngoog.labs.userAgent.engine.isWebKit \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\x22WebKit\x22) \x26\x26 !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Gecko\x22) \x26\x26 !goog.labs.userAgent.engine.isWebKit() \x26\x26 !goog.labs.userAgent.engine.isTrident() \x26\x26 !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion \x3d function() {\n  var userAgentString \x3d goog.labs.userAgent.util.getUserAgent();\n  if (userAgentString) {\n    var tuples \x3d goog.labs.userAgent.util.extractVersionTuples(userAgentString);\n    var engineTuple \x3d goog.labs.userAgent.engine.getEngineTuple_(tuples);\n    if (engineTuple) {\n      if (engineTuple[0] \x3d\x3d \x22Gecko\x22) {\n        return goog.labs.userAgent.engine.getVersionForKey_(tuples, \x22Firefox\x22);\n      }\n      return engineTuple[1];\n    }\n    var browserTuple \x3d tuples[0];\n    var info;\n    if (browserTuple \x26\x26 (info \x3d browserTuple[2])) {\n      var match \x3d /Trident\\/([^\\s;]+)/.exec(info);\n      if (match) {\n        return match[1];\n      }\n    }\n  }\n  return \x22\x22;\n};\ngoog.labs.userAgent.engine.getEngineTuple_ \x3d function(tuples) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return tuples[1];\n  }\n  for (var i \x3d 0; i \x3c tuples.length; i++) {\n    var tuple \x3d tuples[i];\n    if (tuple[0] \x3d\x3d \x22Edge\x22) {\n      return tuple;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher \x3d function(version) {\n  return goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), version) \x3e\x3d 0;\n};\ngoog.labs.userAgent.engine.getVersionForKey_ \x3d function(tuples, key) {\n  var pair \x3d goog.array.find(tuples, function(pair) {\n    return key \x3d\x3d pair[0];\n  });\n  return pair \x26\x26 pair[1] || \x22\x22;\n};\n");
SHADOW_ENV.evalLoad("goog.labs.useragent.platform.js", true , "goog.provide(\x22goog.labs.userAgent.platform\x22);\ngoog.require(\x22goog.labs.userAgent.util\x22);\ngoog.require(\x22goog.string\x22);\ngoog.labs.userAgent.platform.isAndroid \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Android\x22);\n};\ngoog.labs.userAgent.platform.isIpod \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22iPod\x22);\n};\ngoog.labs.userAgent.platform.isIphone \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22iPhone\x22) \x26\x26 !goog.labs.userAgent.util.matchUserAgent(\x22iPod\x22) \x26\x26 !goog.labs.userAgent.util.matchUserAgent(\x22iPad\x22);\n};\ngoog.labs.userAgent.platform.isIpad \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22iPad\x22);\n};\ngoog.labs.userAgent.platform.isIos \x3d function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Macintosh\x22);\n};\ngoog.labs.userAgent.platform.isLinux \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Linux\x22);\n};\ngoog.labs.userAgent.platform.isWindows \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22Windows\x22);\n};\ngoog.labs.userAgent.platform.isChromeOS \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22CrOS\x22);\n};\ngoog.labs.userAgent.platform.isChromecast \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgent(\x22CrKey\x22);\n};\ngoog.labs.userAgent.platform.isKaiOS \x3d function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\x22KaiOS\x22);\n};\ngoog.labs.userAgent.platform.getVersion \x3d function() {\n  var userAgentString \x3d goog.labs.userAgent.util.getUserAgent();\n  var version \x3d \x22\x22, re;\n  if (goog.labs.userAgent.platform.isWindows()) {\n    re \x3d /Windows (?:NT|Phone) ([0-9.]+)/;\n    var match \x3d re.exec(userAgentString);\n    if (match) {\n      version \x3d match[1];\n    } else {\n      version \x3d \x220.0\x22;\n    }\n  } else {\n    if (goog.labs.userAgent.platform.isIos()) {\n      re \x3d /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/;\n      var match \x3d re.exec(userAgentString);\n      version \x3d match \x26\x26 match[1].replace(/_/g, \x22.\x22);\n    } else {\n      if (goog.labs.userAgent.platform.isMacintosh()) {\n        re \x3d /Mac OS X ([0-9_.]+)/;\n        var match \x3d re.exec(userAgentString);\n        version \x3d match ? match[1].replace(/_/g, \x22.\x22) : \x2210\x22;\n      } else {\n        if (goog.labs.userAgent.platform.isKaiOS()) {\n          re \x3d /(?:KaiOS)\\/(\\S+)/i;\n          var match \x3d re.exec(userAgentString);\n          version \x3d match \x26\x26 match[1];\n        } else {\n          if (goog.labs.userAgent.platform.isAndroid()) {\n            re \x3d /Android\\s+([^\\);]+)(\\)|;)/;\n            var match \x3d re.exec(userAgentString);\n            version \x3d match \x26\x26 match[1];\n          } else {\n            if (goog.labs.userAgent.platform.isChromeOS()) {\n              re \x3d /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/;\n              var match \x3d re.exec(userAgentString);\n              version \x3d match \x26\x26 match[1];\n            }\n          }\n        }\n      }\n    }\n  }\n  return version || \x22\x22;\n};\ngoog.labs.userAgent.platform.isVersionOrHigher \x3d function(version) {\n  return goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), version) \x3e\x3d 0;\n};\n");
SHADOW_ENV.evalLoad("goog.useragent.useragent.js", true , "goog.provide(\x22goog.userAgent\x22);\ngoog.require(\x22goog.labs.userAgent.browser\x22);\ngoog.require(\x22goog.labs.userAgent.engine\x22);\ngoog.require(\x22goog.labs.userAgent.platform\x22);\ngoog.require(\x22goog.labs.userAgent.util\x22);\ngoog.require(\x22goog.reflect\x22);\ngoog.require(\x22goog.string\x22);\ngoog.userAgent.ASSUME_IE \x3d goog.define(\x22goog.userAgent.ASSUME_IE\x22, false);\ngoog.userAgent.ASSUME_EDGE \x3d goog.define(\x22goog.userAgent.ASSUME_EDGE\x22, false);\ngoog.userAgent.ASSUME_GECKO \x3d goog.define(\x22goog.userAgent.ASSUME_GECKO\x22, false);\ngoog.userAgent.ASSUME_WEBKIT \x3d goog.define(\x22goog.userAgent.ASSUME_WEBKIT\x22, false);\ngoog.userAgent.ASSUME_MOBILE_WEBKIT \x3d goog.define(\x22goog.userAgent.ASSUME_MOBILE_WEBKIT\x22, false);\ngoog.userAgent.ASSUME_OPERA \x3d goog.define(\x22goog.userAgent.ASSUME_OPERA\x22, false);\ngoog.userAgent.ASSUME_ANY_VERSION \x3d goog.define(\x22goog.userAgent.ASSUME_ANY_VERSION\x22, false);\ngoog.userAgent.BROWSER_KNOWN_ \x3d goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString \x3d function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped \x3d function() {\n  return goog.global[\x22navigator\x22] || null;\n};\ngoog.userAgent.getNavigator \x3d function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA \x3d goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE \x3d goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE \x3d goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE \x3d goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO \x3d goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT \x3d goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ \x3d function() {\n  return goog.userAgent.WEBKIT \x26\x26 goog.labs.userAgent.util.matchUserAgent(\x22Mobile\x22);\n};\ngoog.userAgent.MOBILE \x3d goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI \x3d goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ \x3d function() {\n  var navigator \x3d goog.userAgent.getNavigatorTyped();\n  return navigator \x26\x26 navigator.platform || \x22\x22;\n};\ngoog.userAgent.PLATFORM \x3d goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC \x3d goog.define(\x22goog.userAgent.ASSUME_MAC\x22, false);\ngoog.userAgent.ASSUME_WINDOWS \x3d goog.define(\x22goog.userAgent.ASSUME_WINDOWS\x22, false);\ngoog.userAgent.ASSUME_LINUX \x3d goog.define(\x22goog.userAgent.ASSUME_LINUX\x22, false);\ngoog.userAgent.ASSUME_X11 \x3d goog.define(\x22goog.userAgent.ASSUME_X11\x22, false);\ngoog.userAgent.ASSUME_ANDROID \x3d goog.define(\x22goog.userAgent.ASSUME_ANDROID\x22, false);\ngoog.userAgent.ASSUME_IPHONE \x3d goog.define(\x22goog.userAgent.ASSUME_IPHONE\x22, false);\ngoog.userAgent.ASSUME_IPAD \x3d goog.define(\x22goog.userAgent.ASSUME_IPAD\x22, false);\ngoog.userAgent.ASSUME_IPOD \x3d goog.define(\x22goog.userAgent.ASSUME_IPOD\x22, false);\ngoog.userAgent.ASSUME_KAIOS \x3d goog.define(\x22goog.userAgent.ASSUME_KAIOS\x22, false);\ngoog.userAgent.PLATFORM_KNOWN_ \x3d goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ \x3d function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ \x3d function() {\n  var navigator \x3d goog.userAgent.getNavigatorTyped();\n  return !!navigator \x26\x26 goog.string.contains(navigator[\x22appVersion\x22] || \x22\x22, \x22X11\x22);\n};\ngoog.userAgent.X11 \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS \x3d goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.determineVersion_ \x3d function() {\n  var version \x3d \x22\x22;\n  var arr \x3d goog.userAgent.getVersionRegexResult_();\n  if (arr) {\n    version \x3d arr ? arr[1] : \x22\x22;\n  }\n  if (goog.userAgent.IE) {\n    var docMode \x3d goog.userAgent.getDocumentMode_();\n    if (docMode !\x3d null \x26\x26 docMode \x3e parseFloat(version)) {\n      return String(docMode);\n    }\n  }\n  return version;\n};\ngoog.userAgent.getVersionRegexResult_ \x3d function() {\n  var userAgent \x3d goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(userAgent);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(userAgent);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(userAgent);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(userAgent);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(userAgent);\n  }\n  return undefined;\n};\ngoog.userAgent.getDocumentMode_ \x3d function() {\n  var doc \x3d goog.global[\x22document\x22];\n  return doc ? doc[\x22documentMode\x22] : undefined;\n};\ngoog.userAgent.VERSION \x3d goog.userAgent.determineVersion_();\ngoog.userAgent.compare \x3d function(v1, v2) {\n  return goog.string.compareVersions(v1, v2);\n};\ngoog.userAgent.isVersionOrHigherCache_ \x3d {};\ngoog.userAgent.isVersionOrHigher \x3d function(version) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, version, function() {\n    return goog.string.compareVersions(goog.userAgent.VERSION, version) \x3e\x3d 0;\n  });\n};\ngoog.userAgent.isVersion \x3d goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher \x3d function(documentMode) {\n  return Number(goog.userAgent.DOCUMENT_MODE) \x3e\x3d documentMode;\n};\ngoog.userAgent.isDocumentMode \x3d goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE \x3d function() {\n  var doc \x3d goog.global[\x22document\x22];\n  if (!doc || !goog.userAgent.IE) {\n    return undefined;\n  }\n  var documentMode \x3d goog.userAgent.getDocumentMode_();\n  if (documentMode) {\n    return documentMode;\n  }\n  var ieVersion \x3d parseInt(goog.userAgent.VERSION, 10);\n  return ieVersion || undefined;\n}();\n");
SHADOW_ENV.evalLoad("goog.dom.browserfeature.js", true , "goog.provide(\x22goog.dom.BrowserFeature\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS \x3d goog.define(\x22goog.dom.ASSUME_NO_OFFSCREEN_CANVAS\x22, false);\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS \x3d goog.define(\x22goog.dom.ASSUME_OFFSCREEN_CANVAS\x22, false);\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ \x3d function(contextName) {\n  try {\n    return Boolean((new self.OffscreenCanvas(0, 0)).getContext(contextName));\n  } catch (ex) {\n  }\n  return false;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D \x3d !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS \x26\x26 (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\x222d\x22));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES \x3d !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE \x3d !goog.userAgent.GECKO \x26\x26 !goog.userAgent.IE || goog.userAgent.IE \x26\x26 goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO \x26\x26 goog.userAgent.isVersionOrHigher(\x221.9.1\x22);\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT \x3d goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x229\x22);\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY \x3d goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT \x3d goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES \x3d goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(9);\n");
SHADOW_ENV.evalLoad("goog.math.coordinate.js", true , "goog.provide(\x22goog.math.Coordinate\x22);\ngoog.require(\x22goog.math\x22);\ngoog.math.Coordinate \x3d function(opt_x, opt_y) {\n  this.x \x3d opt_x !\x3d\x3d undefined ? opt_x : 0;\n  this.y \x3d opt_y !\x3d\x3d undefined ? opt_y : 0;\n};\ngoog.math.Coordinate.prototype.clone \x3d function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\nif (goog.DEBUG) {\n  goog.math.Coordinate.prototype.toString \x3d function() {\n    return \x22(\x22 + this.x + \x22, \x22 + this.y + \x22)\x22;\n  };\n}\ngoog.math.Coordinate.prototype.equals \x3d function(other) {\n  return other instanceof goog.math.Coordinate \x26\x26 goog.math.Coordinate.equals(this, other);\n};\ngoog.math.Coordinate.equals \x3d function(a, b) {\n  if (a \x3d\x3d b) {\n    return true;\n  }\n  if (!a || !b) {\n    return false;\n  }\n  return a.x \x3d\x3d b.x \x26\x26 a.y \x3d\x3d b.y;\n};\ngoog.math.Coordinate.distance \x3d function(a, b) {\n  var dx \x3d a.x - b.x;\n  var dy \x3d a.y - b.y;\n  return Math.sqrt(dx * dx + dy * dy);\n};\ngoog.math.Coordinate.magnitude \x3d function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth \x3d function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance \x3d function(a, b) {\n  var dx \x3d a.x - b.x;\n  var dy \x3d a.y - b.y;\n  return dx * dx + dy * dy;\n};\ngoog.math.Coordinate.difference \x3d function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum \x3d function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil \x3d function() {\n  this.x \x3d Math.ceil(this.x);\n  this.y \x3d Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor \x3d function() {\n  this.x \x3d Math.floor(this.x);\n  this.y \x3d Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round \x3d function() {\n  this.x \x3d Math.round(this.x);\n  this.y \x3d Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate \x3d function(tx, opt_ty) {\n  if (tx instanceof goog.math.Coordinate) {\n    this.x +\x3d tx.x;\n    this.y +\x3d tx.y;\n  } else {\n    this.x +\x3d Number(tx);\n    if (typeof opt_ty \x3d\x3d\x3d \x22number\x22) {\n      this.y +\x3d opt_ty;\n    }\n  }\n  return this;\n};\ngoog.math.Coordinate.prototype.scale \x3d function(sx, opt_sy) {\n  var sy \x3d typeof opt_sy \x3d\x3d\x3d \x22number\x22 ? opt_sy : sx;\n  this.x *\x3d sx;\n  this.y *\x3d sy;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians \x3d function(radians, opt_center) {\n  var center \x3d opt_center || new goog.math.Coordinate(0, 0);\n  var x \x3d this.x;\n  var y \x3d this.y;\n  var cos \x3d Math.cos(radians);\n  var sin \x3d Math.sin(radians);\n  this.x \x3d (x - center.x) * cos - (y - center.y) * sin + center.x;\n  this.y \x3d (x - center.x) * sin + (y - center.y) * cos + center.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees \x3d function(degrees, opt_center) {\n  this.rotateRadians(goog.math.toRadians(degrees), opt_center);\n};\n");
SHADOW_ENV.evalLoad("goog.math.size.js", true , "goog.provide(\x22goog.math.Size\x22);\ngoog.math.Size \x3d function(width, height) {\n  this.width \x3d width;\n  this.height \x3d height;\n};\ngoog.math.Size.equals \x3d function(a, b) {\n  if (a \x3d\x3d b) {\n    return true;\n  }\n  if (!a || !b) {\n    return false;\n  }\n  return a.width \x3d\x3d b.width \x26\x26 a.height \x3d\x3d b.height;\n};\ngoog.math.Size.prototype.clone \x3d function() {\n  return new goog.math.Size(this.width, this.height);\n};\nif (goog.DEBUG) {\n  goog.math.Size.prototype.toString \x3d function() {\n    return \x22(\x22 + this.width + \x22 x \x22 + this.height + \x22)\x22;\n  };\n}\ngoog.math.Size.prototype.getLongest \x3d function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest \x3d function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area \x3d function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter \x3d function() {\n  return (this.width + this.height) * 2;\n};\ngoog.math.Size.prototype.aspectRatio \x3d function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty \x3d function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil \x3d function() {\n  this.width \x3d Math.ceil(this.width);\n  this.height \x3d Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside \x3d function(target) {\n  return this.width \x3c\x3d target.width \x26\x26 this.height \x3c\x3d target.height;\n};\ngoog.math.Size.prototype.floor \x3d function() {\n  this.width \x3d Math.floor(this.width);\n  this.height \x3d Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round \x3d function() {\n  this.width \x3d Math.round(this.width);\n  this.height \x3d Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale \x3d function(sx, opt_sy) {\n  var sy \x3d typeof opt_sy \x3d\x3d\x3d \x22number\x22 ? opt_sy : sx;\n  this.width *\x3d sx;\n  this.height *\x3d sy;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover \x3d function(target) {\n  var s \x3d this.aspectRatio() \x3c\x3d target.aspectRatio() ? target.width / this.width : target.height / this.height;\n  return this.scale(s);\n};\ngoog.math.Size.prototype.scaleToFit \x3d function(target) {\n  var s \x3d this.aspectRatio() \x3e target.aspectRatio() ? target.width / this.width : target.height / this.height;\n  return this.scale(s);\n};\n");
SHADOW_ENV.evalLoad("goog.dom.dom.js", true , "goog.provide(\x22goog.dom\x22);\ngoog.provide(\x22goog.dom.Appendable\x22);\ngoog.provide(\x22goog.dom.DomHelper\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.dom.BrowserFeature\x22);\ngoog.require(\x22goog.dom.NodeType\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.safe\x22);\ngoog.require(\x22goog.html.SafeHtml\x22);\ngoog.require(\x22goog.html.uncheckedconversions\x22);\ngoog.require(\x22goog.math.Coordinate\x22);\ngoog.require(\x22goog.math.Size\x22);\ngoog.require(\x22goog.object\x22);\ngoog.require(\x22goog.string\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.string.Unicode\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.dom.ASSUME_QUIRKS_MODE \x3d goog.define(\x22goog.dom.ASSUME_QUIRKS_MODE\x22, false);\ngoog.dom.ASSUME_STANDARDS_MODE \x3d goog.define(\x22goog.dom.ASSUME_STANDARDS_MODE\x22, false);\ngoog.dom.COMPAT_MODE_KNOWN_ \x3d goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper \x3d function(opt_element) {\n  return opt_element ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(opt_element)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ \x3d new goog.dom.DomHelper);\n};\ngoog.dom.defaultDomHelper_;\ngoog.dom.getDocument \x3d function() {\n  return document;\n};\ngoog.dom.getElement \x3d function(element) {\n  return goog.dom.getElementHelper_(document, element);\n};\ngoog.dom.getElementHelper_ \x3d function(doc, element) {\n  return typeof element \x3d\x3d\x3d \x22string\x22 ? doc.getElementById(element) : element;\n};\ngoog.dom.getRequiredElement \x3d function(id) {\n  return goog.dom.getRequiredElementHelper_(document, id);\n};\ngoog.dom.getRequiredElementHelper_ \x3d function(doc, id) {\n  goog.asserts.assertString(id);\n  var element \x3d goog.dom.getElementHelper_(doc, id);\n  element \x3d goog.asserts.assertElement(element, \x22No element found with id: \x22 + id);\n  return element;\n};\ngoog.dom.$ \x3d goog.dom.getElement;\ngoog.dom.getElementsByTagName \x3d function(tagName, opt_parent) {\n  var parent \x3d opt_parent || document;\n  return parent.getElementsByTagName(String(tagName));\n};\ngoog.dom.getElementsByTagNameAndClass \x3d function(opt_tag, opt_class, opt_el) {\n  return goog.dom.getElementsByTagNameAndClass_(document, opt_tag, opt_class, opt_el);\n};\ngoog.dom.getElementByTagNameAndClass \x3d function(opt_tag, opt_class, opt_el) {\n  return goog.dom.getElementByTagNameAndClass_(document, opt_tag, opt_class, opt_el);\n};\ngoog.dom.getElementsByClass \x3d function(className, opt_el) {\n  var parent \x3d opt_el || document;\n  if (goog.dom.canUseQuerySelector_(parent)) {\n    return parent.querySelectorAll(\x22.\x22 + className);\n  }\n  return goog.dom.getElementsByTagNameAndClass_(document, \x22*\x22, className, opt_el);\n};\ngoog.dom.getElementByClass \x3d function(className, opt_el) {\n  var parent \x3d opt_el || document;\n  var retVal \x3d null;\n  if (parent.getElementsByClassName) {\n    retVal \x3d parent.getElementsByClassName(className)[0];\n  } else {\n    retVal \x3d goog.dom.getElementByTagNameAndClass_(document, \x22*\x22, className, opt_el);\n  }\n  return retVal || null;\n};\ngoog.dom.getRequiredElementByClass \x3d function(className, opt_root) {\n  var retValue \x3d goog.dom.getElementByClass(className, opt_root);\n  return goog.asserts.assert(retValue, \x22No element found with className: \x22 + className);\n};\ngoog.dom.canUseQuerySelector_ \x3d function(parent) {\n  return !!(parent.querySelectorAll \x26\x26 parent.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ \x3d function(doc, opt_tag, opt_class, opt_el) {\n  var parent \x3d opt_el || doc;\n  var tagName \x3d opt_tag \x26\x26 opt_tag !\x3d \x22*\x22 ? String(opt_tag).toUpperCase() : \x22\x22;\n  if (goog.dom.canUseQuerySelector_(parent) \x26\x26 (tagName || opt_class)) {\n    var query \x3d tagName + (opt_class ? \x22.\x22 + opt_class : \x22\x22);\n    return parent.querySelectorAll(query);\n  }\n  if (opt_class \x26\x26 parent.getElementsByClassName) {\n    var els \x3d parent.getElementsByClassName(opt_class);\n    if (tagName) {\n      var arrayLike \x3d {};\n      var len \x3d 0;\n      for (var i \x3d 0, el; el \x3d els[i]; i++) {\n        if (tagName \x3d\x3d el.nodeName) {\n          arrayLike[len++] \x3d el;\n        }\n      }\n      arrayLike.length \x3d len;\n      return arrayLike;\n    } else {\n      return els;\n    }\n  }\n  var els \x3d parent.getElementsByTagName(tagName || \x22*\x22);\n  if (opt_class) {\n    var arrayLike \x3d {};\n    var len \x3d 0;\n    for (var i \x3d 0, el; el \x3d els[i]; i++) {\n      var className \x3d el.className;\n      if (typeof className.split \x3d\x3d \x22function\x22 \x26\x26 goog.array.contains(className.split(/\\s+/), opt_class)) {\n        arrayLike[len++] \x3d el;\n      }\n    }\n    arrayLike.length \x3d len;\n    return arrayLike;\n  } else {\n    return els;\n  }\n};\ngoog.dom.getElementByTagNameAndClass_ \x3d function(doc, opt_tag, opt_class, opt_el) {\n  var parent \x3d opt_el || doc;\n  var tag \x3d opt_tag \x26\x26 opt_tag !\x3d \x22*\x22 ? String(opt_tag).toUpperCase() : \x22\x22;\n  if (goog.dom.canUseQuerySelector_(parent) \x26\x26 (tag || opt_class)) {\n    return parent.querySelector(tag + (opt_class ? \x22.\x22 + opt_class : \x22\x22));\n  }\n  var elements \x3d goog.dom.getElementsByTagNameAndClass_(doc, opt_tag, opt_class, opt_el);\n  return elements[0] || null;\n};\ngoog.dom.$$ \x3d goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties \x3d function(element, properties) {\n  goog.object.forEach(properties, function(val, key) {\n    if (val \x26\x26 typeof val \x3d\x3d \x22object\x22 \x26\x26 val.implementsGoogStringTypedString) {\n      val \x3d val.getTypedStringValue();\n    }\n    if (key \x3d\x3d \x22style\x22) {\n      element.style.cssText \x3d val;\n    } else {\n      if (key \x3d\x3d \x22class\x22) {\n        element.className \x3d val;\n      } else {\n        if (key \x3d\x3d \x22for\x22) {\n          element.htmlFor \x3d val;\n        } else {\n          if (goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(key)) {\n            element.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[key], val);\n          } else {\n            if (goog.string.startsWith(key, \x22aria-\x22) || goog.string.startsWith(key, \x22data-\x22)) {\n              element.setAttribute(key, val);\n            } else {\n              element[key] \x3d val;\n            }\n          }\n        }\n      }\n    }\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ \x3d {\x22cellpadding\x22:\x22cellPadding\x22, \x22cellspacing\x22:\x22cellSpacing\x22, \x22colspan\x22:\x22colSpan\x22, \x22frameborder\x22:\x22frameBorder\x22, \x22height\x22:\x22height\x22, \x22maxlength\x22:\x22maxLength\x22, \x22nonce\x22:\x22nonce\x22, \x22role\x22:\x22role\x22, \x22rowspan\x22:\x22rowSpan\x22, \x22type\x22:\x22type\x22, \x22usemap\x22:\x22useMap\x22, \x22valign\x22:\x22vAlign\x22, \x22width\x22:\x22width\x22};\ngoog.dom.getViewportSize \x3d function(opt_window) {\n  return goog.dom.getViewportSize_(opt_window || window);\n};\ngoog.dom.getViewportSize_ \x3d function(win) {\n  var doc \x3d win.document;\n  var el \x3d goog.dom.isCss1CompatMode_(doc) ? doc.documentElement : doc.body;\n  return new goog.math.Size(el.clientWidth, el.clientHeight);\n};\ngoog.dom.getDocumentHeight \x3d function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow \x3d function(win) {\n  return goog.dom.getDocumentHeight_(win);\n};\ngoog.dom.getDocumentHeight_ \x3d function(win) {\n  var doc \x3d win.document;\n  var height \x3d 0;\n  if (doc) {\n    var body \x3d doc.body;\n    var docEl \x3d doc.documentElement;\n    if (!(docEl \x26\x26 body)) {\n      return 0;\n    }\n    var vh \x3d goog.dom.getViewportSize_(win).height;\n    if (goog.dom.isCss1CompatMode_(doc) \x26\x26 docEl.scrollHeight) {\n      height \x3d docEl.scrollHeight !\x3d vh ? docEl.scrollHeight : docEl.offsetHeight;\n    } else {\n      var sh \x3d docEl.scrollHeight;\n      var oh \x3d docEl.offsetHeight;\n      if (docEl.clientHeight !\x3d oh) {\n        sh \x3d body.scrollHeight;\n        oh \x3d body.offsetHeight;\n      }\n      if (sh \x3e vh) {\n        height \x3d sh \x3e oh ? sh : oh;\n      } else {\n        height \x3d sh \x3c oh ? sh : oh;\n      }\n    }\n  }\n  return height;\n};\ngoog.dom.getPageScroll \x3d function(opt_window) {\n  var win \x3d opt_window || goog.global || window;\n  return goog.dom.getDomHelper(win.document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll \x3d function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ \x3d function(doc) {\n  var el \x3d goog.dom.getDocumentScrollElement_(doc);\n  var win \x3d goog.dom.getWindow_(doc);\n  if (goog.userAgent.IE \x26\x26 goog.userAgent.isVersionOrHigher(\x2210\x22) \x26\x26 win.pageYOffset !\x3d el.scrollTop) {\n    return new goog.math.Coordinate(el.scrollLeft, el.scrollTop);\n  }\n  return new goog.math.Coordinate(win.pageXOffset || el.scrollLeft, win.pageYOffset || el.scrollTop);\n};\ngoog.dom.getDocumentScrollElement \x3d function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ \x3d function(doc) {\n  if (doc.scrollingElement) {\n    return doc.scrollingElement;\n  }\n  if (!goog.userAgent.WEBKIT \x26\x26 goog.dom.isCss1CompatMode_(doc)) {\n    return doc.documentElement;\n  }\n  return doc.body || doc.documentElement;\n};\ngoog.dom.getWindow \x3d function(opt_doc) {\n  return opt_doc ? goog.dom.getWindow_(opt_doc) : window;\n};\ngoog.dom.getWindow_ \x3d function(doc) {\n  return doc.parentWindow || doc.defaultView;\n};\ngoog.dom.createDom \x3d function(tagName, opt_attributes, var_args) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ \x3d function(doc, args) {\n  var tagName \x3d String(args[0]);\n  var attributes \x3d args[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES \x26\x26 attributes \x26\x26 (attributes.name || attributes.type)) {\n    var tagNameArr \x3d [\x22\\x3c\x22, tagName];\n    if (attributes.name) {\n      tagNameArr.push(\x27 name\\x3d\x22\x27, goog.string.htmlEscape(attributes.name), \x27\x22\x27);\n    }\n    if (attributes.type) {\n      tagNameArr.push(\x27 type\\x3d\x22\x27, goog.string.htmlEscape(attributes.type), \x27\x22\x27);\n      var clone \x3d {};\n      goog.object.extend(clone, attributes);\n      delete clone[\x22type\x22];\n      attributes \x3d clone;\n    }\n    tagNameArr.push(\x22\\x3e\x22);\n    tagName \x3d tagNameArr.join(\x22\x22);\n  }\n  var element \x3d goog.dom.createElement_(doc, tagName);\n  if (attributes) {\n    if (typeof attributes \x3d\x3d\x3d \x22string\x22) {\n      element.className \x3d attributes;\n    } else {\n      if (Array.isArray(attributes)) {\n        element.className \x3d attributes.join(\x22 \x22);\n      } else {\n        goog.dom.setProperties(element, attributes);\n      }\n    }\n  }\n  if (args.length \x3e 2) {\n    goog.dom.append_(doc, element, args, 2);\n  }\n  return element;\n};\ngoog.dom.append_ \x3d function(doc, parent, args, startIndex) {\n  function childHandler(child) {\n    if (child) {\n      parent.appendChild(typeof child \x3d\x3d\x3d \x22string\x22 ? doc.createTextNode(child) : child);\n    }\n  }\n  for (var i \x3d startIndex; i \x3c args.length; i++) {\n    var arg \x3d args[i];\n    if (goog.isArrayLike(arg) \x26\x26 !goog.dom.isNodeLike(arg)) {\n      goog.array.forEach(goog.dom.isNodeList(arg) ? goog.array.toArray(arg) : arg, childHandler);\n    } else {\n      childHandler(arg);\n    }\n  }\n};\ngoog.dom.$dom \x3d goog.dom.createDom;\ngoog.dom.createElement \x3d function(name) {\n  return goog.dom.createElement_(document, name);\n};\ngoog.dom.createElement_ \x3d function(doc, name) {\n  name \x3d String(name);\n  if (doc.contentType \x3d\x3d\x3d \x22application/xhtml+xml\x22) {\n    name \x3d name.toLowerCase();\n  }\n  return doc.createElement(name);\n};\ngoog.dom.createTextNode \x3d function(content) {\n  return document.createTextNode(String(content));\n};\ngoog.dom.createTable \x3d function(rows, columns, opt_fillWithNbsp) {\n  return goog.dom.createTable_(document, rows, columns, !!opt_fillWithNbsp);\n};\ngoog.dom.createTable_ \x3d function(doc, rows, columns, fillWithNbsp) {\n  var table \x3d goog.dom.createElement_(doc, goog.dom.TagName.TABLE);\n  var tbody \x3d table.appendChild(goog.dom.createElement_(doc, goog.dom.TagName.TBODY));\n  for (var i \x3d 0; i \x3c rows; i++) {\n    var tr \x3d goog.dom.createElement_(doc, goog.dom.TagName.TR);\n    for (var j \x3d 0; j \x3c columns; j++) {\n      var td \x3d goog.dom.createElement_(doc, goog.dom.TagName.TD);\n      if (fillWithNbsp) {\n        goog.dom.setTextContent(td, goog.string.Unicode.NBSP);\n      }\n      tr.appendChild(td);\n    }\n    tbody.appendChild(tr);\n  }\n  return table;\n};\ngoog.dom.constHtmlToNode \x3d function(var_args) {\n  var stringArray \x3d goog.array.map(arguments, goog.string.Const.unwrap);\n  var safeHtml \x3d goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\x22Constant HTML string, that gets turned into a \x22 + \x22Node later, so it will be automatically balanced.\x22), stringArray.join(\x22\x22));\n  return goog.dom.safeHtmlToNode(safeHtml);\n};\ngoog.dom.safeHtmlToNode \x3d function(html) {\n  return goog.dom.safeHtmlToNode_(document, html);\n};\ngoog.dom.safeHtmlToNode_ \x3d function(doc, html) {\n  var tempDiv \x3d goog.dom.createElement_(doc, goog.dom.TagName.DIV);\n  if (goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT) {\n    goog.dom.safe.setInnerHtml(tempDiv, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, html));\n    tempDiv.removeChild(goog.asserts.assert(tempDiv.firstChild));\n  } else {\n    goog.dom.safe.setInnerHtml(tempDiv, html);\n  }\n  return goog.dom.childrenToNode_(doc, tempDiv);\n};\ngoog.dom.childrenToNode_ \x3d function(doc, tempDiv) {\n  if (tempDiv.childNodes.length \x3d\x3d 1) {\n    return tempDiv.removeChild(goog.asserts.assert(tempDiv.firstChild));\n  } else {\n    var fragment \x3d doc.createDocumentFragment();\n    while (tempDiv.firstChild) {\n      fragment.appendChild(tempDiv.firstChild);\n    }\n    return fragment;\n  }\n};\ngoog.dom.isCss1CompatMode \x3d function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ \x3d function(doc) {\n  if (goog.dom.COMPAT_MODE_KNOWN_) {\n    return goog.dom.ASSUME_STANDARDS_MODE;\n  }\n  return doc.compatMode \x3d\x3d \x22CSS1Compat\x22;\n};\ngoog.dom.canHaveChildren \x3d function(node) {\n  if (node.nodeType !\x3d goog.dom.NodeType.ELEMENT) {\n    return false;\n  }\n  switch(node.tagName) {\n    case String(goog.dom.TagName.APPLET):\n    case String(goog.dom.TagName.AREA):\n    case String(goog.dom.TagName.BASE):\n    case String(goog.dom.TagName.BR):\n    case String(goog.dom.TagName.COL):\n    case String(goog.dom.TagName.COMMAND):\n    case String(goog.dom.TagName.EMBED):\n    case String(goog.dom.TagName.FRAME):\n    case String(goog.dom.TagName.HR):\n    case String(goog.dom.TagName.IMG):\n    case String(goog.dom.TagName.INPUT):\n    case String(goog.dom.TagName.IFRAME):\n    case String(goog.dom.TagName.ISINDEX):\n    case String(goog.dom.TagName.KEYGEN):\n    case String(goog.dom.TagName.LINK):\n    case String(goog.dom.TagName.NOFRAMES):\n    case String(goog.dom.TagName.NOSCRIPT):\n    case String(goog.dom.TagName.META):\n    case String(goog.dom.TagName.OBJECT):\n    case String(goog.dom.TagName.PARAM):\n    case String(goog.dom.TagName.SCRIPT):\n    case String(goog.dom.TagName.SOURCE):\n    case String(goog.dom.TagName.STYLE):\n    case String(goog.dom.TagName.TRACK):\n    case String(goog.dom.TagName.WBR):\n      return false;\n  }\n  return true;\n};\ngoog.dom.appendChild \x3d function(parent, child) {\n  goog.asserts.assert(parent !\x3d null \x26\x26 child !\x3d null, \x22goog.dom.appendChild expects non-null arguments\x22);\n  parent.appendChild(child);\n};\ngoog.dom.append \x3d function(parent, var_args) {\n  goog.dom.append_(goog.dom.getOwnerDocument(parent), parent, arguments, 1);\n};\ngoog.dom.removeChildren \x3d function(node) {\n  var child;\n  while (child \x3d node.firstChild) {\n    node.removeChild(child);\n  }\n};\ngoog.dom.insertSiblingBefore \x3d function(newNode, refNode) {\n  goog.asserts.assert(newNode !\x3d null \x26\x26 refNode !\x3d null, \x22goog.dom.insertSiblingBefore expects non-null arguments\x22);\n  if (refNode.parentNode) {\n    refNode.parentNode.insertBefore(newNode, refNode);\n  }\n};\ngoog.dom.insertSiblingAfter \x3d function(newNode, refNode) {\n  goog.asserts.assert(newNode !\x3d null \x26\x26 refNode !\x3d null, \x22goog.dom.insertSiblingAfter expects non-null arguments\x22);\n  if (refNode.parentNode) {\n    refNode.parentNode.insertBefore(newNode, refNode.nextSibling);\n  }\n};\ngoog.dom.insertChildAt \x3d function(parent, child, index) {\n  goog.asserts.assert(parent !\x3d null, \x22goog.dom.insertChildAt expects a non-null parent\x22);\n  parent.insertBefore(child, parent.childNodes[index] || null);\n};\ngoog.dom.removeNode \x3d function(node) {\n  return node \x26\x26 node.parentNode ? node.parentNode.removeChild(node) : null;\n};\ngoog.dom.replaceNode \x3d function(newNode, oldNode) {\n  goog.asserts.assert(newNode !\x3d null \x26\x26 oldNode !\x3d null, \x22goog.dom.replaceNode expects non-null arguments\x22);\n  var parent \x3d oldNode.parentNode;\n  if (parent) {\n    parent.replaceChild(newNode, oldNode);\n  }\n};\ngoog.dom.copyContents \x3d function(target, source) {\n  goog.asserts.assert(target !\x3d null \x26\x26 source !\x3d null, \x22goog.dom.copyContents expects non-null arguments\x22);\n  var childNodes \x3d source.cloneNode(true).childNodes;\n  goog.dom.removeChildren(target);\n  while (childNodes.length) {\n    target.appendChild(childNodes[0]);\n  }\n};\ngoog.dom.flattenElement \x3d function(element) {\n  var child, parent \x3d element.parentNode;\n  if (parent \x26\x26 parent.nodeType !\x3d goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (element.removeNode) {\n      return element.removeNode(false);\n    } else {\n      while (child \x3d element.firstChild) {\n        parent.insertBefore(child, element);\n      }\n      return goog.dom.removeNode(element);\n    }\n  }\n};\ngoog.dom.getChildren \x3d function(element) {\n  if (goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE \x26\x26 element.children !\x3d undefined) {\n    return element.children;\n  }\n  return goog.array.filter(element.childNodes, function(node) {\n    return node.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild \x3d function(node) {\n  if (node.firstElementChild !\x3d\x3d undefined) {\n    return node.firstElementChild;\n  }\n  return goog.dom.getNextElementNode_(node.firstChild, true);\n};\ngoog.dom.getLastElementChild \x3d function(node) {\n  if (node.lastElementChild !\x3d\x3d undefined) {\n    return node.lastElementChild;\n  }\n  return goog.dom.getNextElementNode_(node.lastChild, false);\n};\ngoog.dom.getNextElementSibling \x3d function(node) {\n  if (node.nextElementSibling !\x3d\x3d undefined) {\n    return node.nextElementSibling;\n  }\n  return goog.dom.getNextElementNode_(node.nextSibling, true);\n};\ngoog.dom.getPreviousElementSibling \x3d function(node) {\n  if (node.previousElementSibling !\x3d\x3d undefined) {\n    return node.previousElementSibling;\n  }\n  return goog.dom.getNextElementNode_(node.previousSibling, false);\n};\ngoog.dom.getNextElementNode_ \x3d function(node, forward) {\n  while (node \x26\x26 node.nodeType !\x3d goog.dom.NodeType.ELEMENT) {\n    node \x3d forward ? node.nextSibling : node.previousSibling;\n  }\n  return node;\n};\ngoog.dom.getNextNode \x3d function(node) {\n  if (!node) {\n    return null;\n  }\n  if (node.firstChild) {\n    return node.firstChild;\n  }\n  while (node \x26\x26 !node.nextSibling) {\n    node \x3d node.parentNode;\n  }\n  return node ? node.nextSibling : null;\n};\ngoog.dom.getPreviousNode \x3d function(node) {\n  if (!node) {\n    return null;\n  }\n  if (!node.previousSibling) {\n    return node.parentNode;\n  }\n  node \x3d node.previousSibling;\n  while (node \x26\x26 node.lastChild) {\n    node \x3d node.lastChild;\n  }\n  return node;\n};\ngoog.dom.isNodeLike \x3d function(obj) {\n  return goog.isObject(obj) \x26\x26 obj.nodeType \x3e 0;\n};\ngoog.dom.isElement \x3d function(obj) {\n  return goog.isObject(obj) \x26\x26 obj.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow \x3d function(obj) {\n  return goog.isObject(obj) \x26\x26 obj[\x22window\x22] \x3d\x3d obj;\n};\ngoog.dom.getParentElement \x3d function(element) {\n  var parent;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY) {\n    var isIe9 \x3d goog.userAgent.IE \x26\x26 goog.userAgent.isVersionOrHigher(\x229\x22) \x26\x26 !goog.userAgent.isVersionOrHigher(\x2210\x22);\n    if (!(isIe9 \x26\x26 goog.global[\x22SVGElement\x22] \x26\x26 element instanceof goog.global[\x22SVGElement\x22])) {\n      parent \x3d element.parentElement;\n      if (parent) {\n        return parent;\n      }\n    }\n  }\n  parent \x3d element.parentNode;\n  return goog.dom.isElement(parent) ? parent : null;\n};\ngoog.dom.contains \x3d function(parent, descendant) {\n  if (!parent || !descendant) {\n    return false;\n  }\n  if (parent.contains \x26\x26 descendant.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT) {\n    return parent \x3d\x3d descendant || parent.contains(descendant);\n  }\n  if (typeof parent.compareDocumentPosition !\x3d \x22undefined\x22) {\n    return parent \x3d\x3d descendant || Boolean(parent.compareDocumentPosition(descendant) \x26 16);\n  }\n  while (descendant \x26\x26 parent !\x3d descendant) {\n    descendant \x3d descendant.parentNode;\n  }\n  return descendant \x3d\x3d parent;\n};\ngoog.dom.compareNodeOrder \x3d function(node1, node2) {\n  if (node1 \x3d\x3d node2) {\n    return 0;\n  }\n  if (node1.compareDocumentPosition) {\n    return node1.compareDocumentPosition(node2) \x26 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (node1.nodeType \x3d\x3d goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (node2.nodeType \x3d\x3d goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\x22sourceIndex\x22 in node1 || node1.parentNode \x26\x26 \x22sourceIndex\x22 in node1.parentNode) {\n    var isElement1 \x3d node1.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT;\n    var isElement2 \x3d node2.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT;\n    if (isElement1 \x26\x26 isElement2) {\n      return node1.sourceIndex - node2.sourceIndex;\n    } else {\n      var parent1 \x3d node1.parentNode;\n      var parent2 \x3d node2.parentNode;\n      if (parent1 \x3d\x3d parent2) {\n        return goog.dom.compareSiblingOrder_(node1, node2);\n      }\n      if (!isElement1 \x26\x26 goog.dom.contains(parent1, node2)) {\n        return -1 * goog.dom.compareParentsDescendantNodeIe_(node1, node2);\n      }\n      if (!isElement2 \x26\x26 goog.dom.contains(parent2, node1)) {\n        return goog.dom.compareParentsDescendantNodeIe_(node2, node1);\n      }\n      return (isElement1 ? node1.sourceIndex : parent1.sourceIndex) - (isElement2 ? node2.sourceIndex : parent2.sourceIndex);\n    }\n  }\n  var doc \x3d goog.dom.getOwnerDocument(node1);\n  var range1, range2;\n  range1 \x3d doc.createRange();\n  range1.selectNode(node1);\n  range1.collapse(true);\n  range2 \x3d doc.createRange();\n  range2.selectNode(node2);\n  range2.collapse(true);\n  return range1.compareBoundaryPoints(goog.global[\x22Range\x22].START_TO_END, range2);\n};\ngoog.dom.compareParentsDescendantNodeIe_ \x3d function(textNode, node) {\n  var parent \x3d textNode.parentNode;\n  if (parent \x3d\x3d node) {\n    return -1;\n  }\n  var sibling \x3d node;\n  while (sibling.parentNode !\x3d parent) {\n    sibling \x3d sibling.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(sibling, textNode);\n};\ngoog.dom.compareSiblingOrder_ \x3d function(node1, node2) {\n  var s \x3d node2;\n  while (s \x3d s.previousSibling) {\n    if (s \x3d\x3d node1) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor \x3d function(var_args) {\n  var i, count \x3d arguments.length;\n  if (!count) {\n    return null;\n  } else {\n    if (count \x3d\x3d 1) {\n      return arguments[0];\n    }\n  }\n  var paths \x3d [];\n  var minLength \x3d Infinity;\n  for (i \x3d 0; i \x3c count; i++) {\n    var ancestors \x3d [];\n    var node \x3d arguments[i];\n    while (node) {\n      ancestors.unshift(node);\n      node \x3d node.parentNode;\n    }\n    paths.push(ancestors);\n    minLength \x3d Math.min(minLength, ancestors.length);\n  }\n  var output \x3d null;\n  for (i \x3d 0; i \x3c minLength; i++) {\n    var first \x3d paths[0][i];\n    for (var j \x3d 1; j \x3c count; j++) {\n      if (first !\x3d paths[j][i]) {\n        return output;\n      }\n    }\n    output \x3d first;\n  }\n  return output;\n};\ngoog.dom.isInDocument \x3d function(node) {\n  return (node.ownerDocument.compareDocumentPosition(node) \x26 16) \x3d\x3d 16;\n};\ngoog.dom.getOwnerDocument \x3d function(node) {\n  goog.asserts.assert(node, \x22Node cannot be null or undefined.\x22);\n  return node.nodeType \x3d\x3d goog.dom.NodeType.DOCUMENT ? node : node.ownerDocument || node.document;\n};\ngoog.dom.getFrameContentDocument \x3d function(frame) {\n  return frame.contentDocument || frame.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow \x3d function(frame) {\n  try {\n    return frame.contentWindow || (frame.contentDocument ? goog.dom.getWindow(frame.contentDocument) : null);\n  } catch (e) {\n  }\n  return null;\n};\ngoog.dom.setTextContent \x3d function(node, text) {\n  goog.asserts.assert(node !\x3d null, \x22goog.dom.setTextContent expects a non-null value for node\x22);\n  if (\x22textContent\x22 in node) {\n    node.textContent \x3d text;\n  } else {\n    if (node.nodeType \x3d\x3d goog.dom.NodeType.TEXT) {\n      node.data \x3d String(text);\n    } else {\n      if (node.firstChild \x26\x26 node.firstChild.nodeType \x3d\x3d goog.dom.NodeType.TEXT) {\n        while (node.lastChild !\x3d node.firstChild) {\n          node.removeChild(goog.asserts.assert(node.lastChild));\n        }\n        node.firstChild.data \x3d String(text);\n      } else {\n        goog.dom.removeChildren(node);\n        var doc \x3d goog.dom.getOwnerDocument(node);\n        node.appendChild(doc.createTextNode(String(text)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml \x3d function(element) {\n  goog.asserts.assert(element !\x3d\x3d null, \x22goog.dom.getOuterHtml expects a non-null value for element\x22);\n  if (\x22outerHTML\x22 in element) {\n    return element.outerHTML;\n  } else {\n    var doc \x3d goog.dom.getOwnerDocument(element);\n    var div \x3d goog.dom.createElement_(doc, goog.dom.TagName.DIV);\n    div.appendChild(element.cloneNode(true));\n    return div.innerHTML;\n  }\n};\ngoog.dom.findNode \x3d function(root, p) {\n  var rv \x3d [];\n  var found \x3d goog.dom.findNodes_(root, p, rv, true);\n  return found ? rv[0] : undefined;\n};\ngoog.dom.findNodes \x3d function(root, p) {\n  var rv \x3d [];\n  goog.dom.findNodes_(root, p, rv, false);\n  return rv;\n};\ngoog.dom.findNodes_ \x3d function(root, p, rv, findOne) {\n  if (root !\x3d null) {\n    var child \x3d root.firstChild;\n    while (child) {\n      if (p(child)) {\n        rv.push(child);\n        if (findOne) {\n          return true;\n        }\n      }\n      if (goog.dom.findNodes_(child, p, rv, findOne)) {\n        return true;\n      }\n      child \x3d child.nextSibling;\n    }\n  }\n  return false;\n};\ngoog.dom.findElement \x3d function(root, pred) {\n  var stack \x3d goog.dom.getChildrenReverse_(root);\n  while (stack.length \x3e 0) {\n    var next \x3d stack.pop();\n    if (pred(next)) {\n      return next;\n    }\n    for (var c \x3d next.lastElementChild; c; c \x3d c.previousElementSibling) {\n      stack.push(c);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements \x3d function(root, pred) {\n  var result \x3d [], stack \x3d goog.dom.getChildrenReverse_(root);\n  while (stack.length \x3e 0) {\n    var next \x3d stack.pop();\n    if (pred(next)) {\n      result.push(next);\n    }\n    for (var c \x3d next.lastElementChild; c; c \x3d c.previousElementSibling) {\n      stack.push(c);\n    }\n  }\n  return result;\n};\ngoog.dom.getChildrenReverse_ \x3d function(node) {\n  if (node.nodeType \x3d\x3d goog.dom.NodeType.DOCUMENT) {\n    return [node.documentElement];\n  } else {\n    var children \x3d [];\n    for (var c \x3d node.lastElementChild; c; c \x3d c.previousElementSibling) {\n      children.push(c);\n    }\n    return children;\n  }\n};\ngoog.dom.TAGS_TO_IGNORE_ \x3d {\x22SCRIPT\x22:1, \x22STYLE\x22:1, \x22HEAD\x22:1, \x22IFRAME\x22:1, \x22OBJECT\x22:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ \x3d {\x22IMG\x22:\x22 \x22, \x22BR\x22:\x22\\n\x22};\ngoog.dom.isFocusableTabIndex \x3d function(element) {\n  return goog.dom.hasSpecifiedTabIndex_(element) \x26\x26 goog.dom.isTabIndexFocusable_(element);\n};\ngoog.dom.setFocusableTabIndex \x3d function(element, enable) {\n  if (enable) {\n    element.tabIndex \x3d 0;\n  } else {\n    element.tabIndex \x3d -1;\n    element.removeAttribute(\x22tabIndex\x22);\n  }\n};\ngoog.dom.isFocusable \x3d function(element) {\n  var focusable;\n  if (goog.dom.nativelySupportsFocus_(element)) {\n    focusable \x3d !element.disabled \x26\x26 (!goog.dom.hasSpecifiedTabIndex_(element) || goog.dom.isTabIndexFocusable_(element));\n  } else {\n    focusable \x3d goog.dom.isFocusableTabIndex(element);\n  }\n  return focusable \x26\x26 goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(element) : focusable;\n};\ngoog.dom.hasSpecifiedTabIndex_ \x3d function(element) {\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x229\x22)) {\n    var attrNode \x3d element.getAttributeNode(\x22tabindex\x22);\n    return attrNode !\x3d null \x26\x26 attrNode.specified;\n  } else {\n    return element.hasAttribute(\x22tabindex\x22);\n  }\n};\ngoog.dom.isTabIndexFocusable_ \x3d function(element) {\n  var index \x3d element.tabIndex;\n  return typeof index \x3d\x3d\x3d \x22number\x22 \x26\x26 index \x3e\x3d 0 \x26\x26 index \x3c 32768;\n};\ngoog.dom.nativelySupportsFocus_ \x3d function(element) {\n  return element.tagName \x3d\x3d goog.dom.TagName.A \x26\x26 element.hasAttribute(\x22href\x22) || element.tagName \x3d\x3d goog.dom.TagName.INPUT || element.tagName \x3d\x3d goog.dom.TagName.TEXTAREA || element.tagName \x3d\x3d goog.dom.TagName.SELECT || element.tagName \x3d\x3d goog.dom.TagName.BUTTON;\n};\ngoog.dom.hasNonZeroBoundingRect_ \x3d function(element) {\n  var rect;\n  if (typeof element[\x22getBoundingClientRect\x22] !\x3d\x3d \x22function\x22 || goog.userAgent.IE \x26\x26 element.parentElement \x3d\x3d null) {\n    rect \x3d {\x22height\x22:element.offsetHeight, \x22width\x22:element.offsetWidth};\n  } else {\n    rect \x3d element.getBoundingClientRect();\n  }\n  return rect !\x3d null \x26\x26 rect.height \x3e 0 \x26\x26 rect.width \x3e 0;\n};\ngoog.dom.getTextContent \x3d function(node) {\n  var textContent;\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT \x26\x26 node !\x3d\x3d null \x26\x26 \x22innerText\x22 in node) {\n    textContent \x3d goog.string.canonicalizeNewlines(node.innerText);\n  } else {\n    var buf \x3d [];\n    goog.dom.getTextContent_(node, buf, true);\n    textContent \x3d buf.join(\x22\x22);\n  }\n  textContent \x3d textContent.replace(/ \\xAD /g, \x22 \x22).replace(/\\xAD/g, \x22\x22);\n  textContent \x3d textContent.replace(/\\u200B/g, \x22\x22);\n  if (!goog.dom.BrowserFeature.CAN_USE_INNER_TEXT) {\n    textContent \x3d textContent.replace(/ +/g, \x22 \x22);\n  }\n  if (textContent !\x3d \x22 \x22) {\n    textContent \x3d textContent.replace(/^\\s*/, \x22\x22);\n  }\n  return textContent;\n};\ngoog.dom.getRawTextContent \x3d function(node) {\n  var buf \x3d [];\n  goog.dom.getTextContent_(node, buf, false);\n  return buf.join(\x22\x22);\n};\ngoog.dom.getTextContent_ \x3d function(node, buf, normalizeWhitespace) {\n  if (node.nodeName in goog.dom.TAGS_TO_IGNORE_) {\n  } else {\n    if (node.nodeType \x3d\x3d goog.dom.NodeType.TEXT) {\n      if (normalizeWhitespace) {\n        buf.push(String(node.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \x22\x22));\n      } else {\n        buf.push(node.nodeValue);\n      }\n    } else {\n      if (node.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        buf.push(goog.dom.PREDEFINED_TAG_VALUES_[node.nodeName]);\n      } else {\n        var child \x3d node.firstChild;\n        while (child) {\n          goog.dom.getTextContent_(child, buf, normalizeWhitespace);\n          child \x3d child.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength \x3d function(node) {\n  return goog.dom.getTextContent(node).length;\n};\ngoog.dom.getNodeTextOffset \x3d function(node, opt_offsetParent) {\n  var root \x3d opt_offsetParent || goog.dom.getOwnerDocument(node).body;\n  var buf \x3d [];\n  while (node \x26\x26 node !\x3d root) {\n    var cur \x3d node;\n    while (cur \x3d cur.previousSibling) {\n      buf.unshift(goog.dom.getTextContent(cur));\n    }\n    node \x3d node.parentNode;\n  }\n  return goog.string.trimLeft(buf.join(\x22\x22)).replace(/ +/g, \x22 \x22).length;\n};\ngoog.dom.getNodeAtOffset \x3d function(parent, offset, opt_result) {\n  var stack \x3d [parent], pos \x3d 0, cur \x3d null;\n  while (stack.length \x3e 0 \x26\x26 pos \x3c offset) {\n    cur \x3d stack.pop();\n    if (cur.nodeName in goog.dom.TAGS_TO_IGNORE_) {\n    } else {\n      if (cur.nodeType \x3d\x3d goog.dom.NodeType.TEXT) {\n        var text \x3d cur.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \x22\x22).replace(/ +/g, \x22 \x22);\n        pos +\x3d text.length;\n      } else {\n        if (cur.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          pos +\x3d goog.dom.PREDEFINED_TAG_VALUES_[cur.nodeName].length;\n        } else {\n          for (var i \x3d cur.childNodes.length - 1; i \x3e\x3d 0; i--) {\n            stack.push(cur.childNodes[i]);\n          }\n        }\n      }\n    }\n  }\n  if (goog.isObject(opt_result)) {\n    opt_result.remainder \x3d cur ? cur.nodeValue.length + offset - pos - 1 : 0;\n    opt_result.node \x3d cur;\n  }\n  return cur;\n};\ngoog.dom.isNodeList \x3d function(val) {\n  if (val \x26\x26 typeof val.length \x3d\x3d \x22number\x22) {\n    if (goog.isObject(val)) {\n      return typeof val.item \x3d\x3d \x22function\x22 || typeof val.item \x3d\x3d \x22string\x22;\n    } else {\n      if (typeof val \x3d\x3d\x3d \x22function\x22) {\n        return typeof val.item \x3d\x3d \x22function\x22;\n      }\n    }\n  }\n  return false;\n};\ngoog.dom.getAncestorByTagNameAndClass \x3d function(element, opt_tag, opt_class, opt_maxSearchSteps) {\n  if (!opt_tag \x26\x26 !opt_class) {\n    return null;\n  }\n  var tagName \x3d opt_tag ? String(opt_tag).toUpperCase() : null;\n  return goog.dom.getAncestor(element, function(node) {\n    return (!tagName || node.nodeName \x3d\x3d tagName) \x26\x26 (!opt_class || typeof node.className \x3d\x3d\x3d \x22string\x22 \x26\x26 goog.array.contains(node.className.split(/\\s+/), opt_class));\n  }, true, opt_maxSearchSteps);\n};\ngoog.dom.getAncestorByClass \x3d function(element, className, opt_maxSearchSteps) {\n  return goog.dom.getAncestorByTagNameAndClass(element, null, className, opt_maxSearchSteps);\n};\ngoog.dom.getAncestor \x3d function(element, matcher, opt_includeNode, opt_maxSearchSteps) {\n  if (element \x26\x26 !opt_includeNode) {\n    element \x3d element.parentNode;\n  }\n  var steps \x3d 0;\n  while (element \x26\x26 (opt_maxSearchSteps \x3d\x3d null || steps \x3c\x3d opt_maxSearchSteps)) {\n    goog.asserts.assert(element.name !\x3d \x22parentNode\x22);\n    if (matcher(element)) {\n      return element;\n    }\n    element \x3d element.parentNode;\n    steps++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement \x3d function(doc) {\n  try {\n    var activeElement \x3d doc \x26\x26 doc.activeElement;\n    return activeElement \x26\x26 activeElement.nodeName ? activeElement : null;\n  } catch (e) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio \x3d function() {\n  var win \x3d goog.dom.getWindow();\n  if (win.devicePixelRatio !\x3d\x3d undefined) {\n    return win.devicePixelRatio;\n  } else {\n    if (win.matchMedia) {\n      return goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75;\n    }\n  }\n  return 1;\n};\ngoog.dom.matchesPixelRatio_ \x3d function(pixelRatio) {\n  var win \x3d goog.dom.getWindow();\n  var dpiPerDppx \x3d 96;\n  var query \x3d \x22(min-resolution: \x22 + pixelRatio + \x22dppx),\x22 + \x22(min--moz-device-pixel-ratio: \x22 + pixelRatio + \x22),\x22 + \x22(min-resolution: \x22 + pixelRatio * dpiPerDppx + \x22dpi)\x22;\n  return win.matchMedia(query).matches ? pixelRatio : 0;\n};\ngoog.dom.getCanvasContext2D \x3d function(canvas) {\n  return canvas.getContext(\x222d\x22);\n};\ngoog.dom.DomHelper \x3d function(opt_document) {\n  this.document_ \x3d opt_document || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper \x3d goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument \x3d function(document) {\n  this.document_ \x3d document;\n};\ngoog.dom.DomHelper.prototype.getDocument \x3d function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement \x3d function(element) {\n  return goog.dom.getElementHelper_(this.document_, element);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement \x3d function(id) {\n  return goog.dom.getRequiredElementHelper_(this.document_, id);\n};\ngoog.dom.DomHelper.prototype.$ \x3d goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName \x3d function(tagName, opt_parent) {\n  var parent \x3d opt_parent || this.document_;\n  return parent.getElementsByTagName(String(tagName));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass \x3d function(opt_tag, opt_class, opt_el) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, opt_tag, opt_class, opt_el);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass \x3d function(opt_tag, opt_class, opt_el) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, opt_tag, opt_class, opt_el);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass \x3d function(className, opt_el) {\n  var doc \x3d opt_el || this.document_;\n  return goog.dom.getElementsByClass(className, doc);\n};\ngoog.dom.DomHelper.prototype.getElementByClass \x3d function(className, opt_el) {\n  var doc \x3d opt_el || this.document_;\n  return goog.dom.getElementByClass(className, doc);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass \x3d function(className, opt_root) {\n  var root \x3d opt_root || this.document_;\n  return goog.dom.getRequiredElementByClass(className, root);\n};\ngoog.dom.DomHelper.prototype.$$ \x3d goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties \x3d goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize \x3d function(opt_window) {\n  return goog.dom.getViewportSize(opt_window || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight \x3d function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.Appendable;\ngoog.dom.DomHelper.prototype.createDom \x3d function(tagName, opt_attributes, var_args) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom \x3d goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement \x3d function(name) {\n  return goog.dom.createElement_(this.document_, name);\n};\ngoog.dom.DomHelper.prototype.createTextNode \x3d function(content) {\n  return this.document_.createTextNode(String(content));\n};\ngoog.dom.DomHelper.prototype.createTable \x3d function(rows, columns, opt_fillWithNbsp) {\n  return goog.dom.createTable_(this.document_, rows, columns, !!opt_fillWithNbsp);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode \x3d function(html) {\n  return goog.dom.safeHtmlToNode_(this.document_, html);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode \x3d function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow \x3d function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement \x3d function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll \x3d function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement \x3d function(opt_doc) {\n  return goog.dom.getActiveElement(opt_doc || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild \x3d goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append \x3d goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren \x3d goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren \x3d goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore \x3d goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter \x3d goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt \x3d goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode \x3d goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode \x3d goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.copyContents \x3d goog.dom.copyContents;\ngoog.dom.DomHelper.prototype.flattenElement \x3d goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren \x3d goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild \x3d goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild \x3d goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling \x3d goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling \x3d goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode \x3d goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode \x3d goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike \x3d goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement \x3d goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow \x3d goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement \x3d goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains \x3d goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder \x3d goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor \x3d goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument \x3d goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument \x3d goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow \x3d goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent \x3d goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml \x3d goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode \x3d goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes \x3d goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex \x3d goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex \x3d goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable \x3d goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent \x3d goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength \x3d goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset \x3d goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset \x3d goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList \x3d goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass \x3d goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass \x3d goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor \x3d goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D \x3d goog.dom.getCanvasContext2D;\n");
SHADOW_ENV.evalLoad("goog.useragent.product.js", true , "goog.provide(\x22goog.userAgent.product\x22);\ngoog.require(\x22goog.labs.userAgent.browser\x22);\ngoog.require(\x22goog.labs.userAgent.platform\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.userAgent.product.ASSUME_FIREFOX \x3d goog.define(\x22goog.userAgent.product.ASSUME_FIREFOX\x22, false);\ngoog.userAgent.product.ASSUME_IPHONE \x3d goog.define(\x22goog.userAgent.product.ASSUME_IPHONE\x22, false);\ngoog.userAgent.product.ASSUME_IPAD \x3d goog.define(\x22goog.userAgent.product.ASSUME_IPAD\x22, false);\ngoog.userAgent.product.ASSUME_ANDROID \x3d goog.define(\x22goog.userAgent.product.ASSUME_ANDROID\x22, false);\ngoog.userAgent.product.ASSUME_CHROME \x3d goog.define(\x22goog.userAgent.product.ASSUME_CHROME\x22, false);\ngoog.userAgent.product.ASSUME_SAFARI \x3d goog.define(\x22goog.userAgent.product.ASSUME_SAFARI\x22, false);\ngoog.userAgent.product.PRODUCT_KNOWN_ \x3d goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_OPERA || goog.userAgent.product.ASSUME_FIREFOX || goog.userAgent.product.ASSUME_IPHONE || goog.userAgent.product.ASSUME_IPAD || goog.userAgent.product.ASSUME_ANDROID || goog.userAgent.product.ASSUME_CHROME || goog.userAgent.product.ASSUME_SAFARI;\ngoog.userAgent.product.OPERA \x3d goog.userAgent.OPERA;\ngoog.userAgent.product.IE \x3d goog.userAgent.IE;\ngoog.userAgent.product.EDGE \x3d goog.userAgent.EDGE;\ngoog.userAgent.product.FIREFOX \x3d goog.userAgent.product.PRODUCT_KNOWN_ ? goog.userAgent.product.ASSUME_FIREFOX : goog.labs.userAgent.browser.isFirefox();\ngoog.userAgent.product.isIphoneOrIpod_ \x3d function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.userAgent.product.IPHONE \x3d goog.userAgent.product.PRODUCT_KNOWN_ ? goog.userAgent.product.ASSUME_IPHONE : goog.userAgent.product.isIphoneOrIpod_();\ngoog.userAgent.product.IPAD \x3d goog.userAgent.product.PRODUCT_KNOWN_ ? goog.userAgent.product.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.product.ANDROID \x3d goog.userAgent.product.PRODUCT_KNOWN_ ? goog.userAgent.product.ASSUME_ANDROID : goog.labs.userAgent.browser.isAndroidBrowser();\ngoog.userAgent.product.CHROME \x3d goog.userAgent.product.PRODUCT_KNOWN_ ? goog.userAgent.product.ASSUME_CHROME : goog.labs.userAgent.browser.isChrome();\ngoog.userAgent.product.isSafariDesktop_ \x3d function() {\n  return goog.labs.userAgent.browser.isSafari() \x26\x26 !goog.labs.userAgent.platform.isIos();\n};\ngoog.userAgent.product.SAFARI \x3d goog.userAgent.product.PRODUCT_KNOWN_ ? goog.userAgent.product.ASSUME_SAFARI : goog.userAgent.product.isSafariDesktop_();\n");
SHADOW_ENV.evalLoad("shadow.json.js", true , "goog.provide(\x27shadow.json\x27);\n/**\n * simplified js-\x3eclj for JSON data, :key-fn default to keyword\n */\nshadow.json.to_clj \x3d (function shadow$json$to_clj(var_args){\nvar G__39737 \x3d arguments.length;\nswitch (G__39737) {\ncase 1:\nreturn shadow.json.to_clj.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.json.to_clj.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2(x,cljs.core.PersistentArrayMap.EMPTY);\n}));\n\n(shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2 \x3d (function (x,opts){\nif((x \x3d\x3d null)){\nreturn x;\n} else {\nif(typeof x \x3d\x3d\x3d \x27number\x27){\nreturn x;\n} else {\nif(typeof x \x3d\x3d\x3d \x27string\x27){\nreturn x;\n} else {\nif(cljs.core.boolean_QMARK_(x)){\nreturn x;\n} else {\nif(cljs.core.array_QMARK_(x)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$1((function (p1__39735_SHARP_){\nreturn shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2(p1__39735_SHARP_,opts);\n})),cljs.core.array_seq.cljs$core$IFn$_invoke$arity$1(x));\n} else {\nvar key_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(opts,new cljs.core.Keyword(null,\x22key-fn\x22,\x22key-fn\x22,-636154479),cljs.core.keyword);\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (result,key){\nvar value \x3d goog.object.get(x,key);\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(result,((typeof key \x3d\x3d\x3d \x27string\x27)?(key_fn.cljs$core$IFn$_invoke$arity$1 ? key_fn.cljs$core$IFn$_invoke$arity$1(key) : key_fn.call(null,key)):shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2(key,opts)),shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2(value,opts));\n}),cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY),goog.object.getKeys(x)));\n\n}\n}\n}\n}\n}\n}));\n\n(shadow.json.to_clj.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.json.read_str \x3d (function shadow$json$read_str(str,opts){\nreturn shadow.json.to_clj.cljs$core$IFn$_invoke$arity$2(JSON.parse(str),opts);\n});\nshadow.json.write_str \x3d (function shadow$json$write_str(obj){\nreturn JSON.stringify(cljs.core.clj__GT_js(obj));\n});\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.impl.utils.js", true , "goog.provide(\x27cljs.tools.reader.impl.utils\x27);\ncljs.tools.reader.impl.utils.char$ \x3d (function cljs$tools$reader$impl$utils$char(x){\nif((x \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.char$(x);\n}\n});\ncljs.tools.reader.impl.utils.ex_info_QMARK_ \x3d (function cljs$tools$reader$impl$utils$ex_info_QMARK_(ex){\nreturn (ex instanceof cljs.core.ExceptionInfo);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.tools.reader.impl.utils.ReaderConditional \x3d (function (splicing_QMARK_,form,__meta,__extmap,__hash){\nthis.splicing_QMARK_ \x3d splicing_QMARK_;\nthis.form \x3d form;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k39827,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__39863 \x3d k39827;\nvar G__39863__$1 \x3d (((G__39863 instanceof cljs.core.Keyword))?G__39863.fqn:null);\nswitch (G__39863__$1) {\ncase \x22splicing?\x22:\nreturn self__.splicing_QMARK_;\n\nbreak;\ncase \x22form\x22:\nreturn self__.form;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k39827,else__4418__auto__);\n\n}\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__39867){\nvar vec__39868 \x3d p__39867;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39868,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39868,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.tools.reader.impl.utils.ReaderConditional{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),self__.splicing_QMARK_],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471),self__.form],null))], null),self__.__extmap));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__39826){\nvar self__ \x3d this;\nvar G__39826__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__39826__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(self__.splicing_QMARK_,self__.form,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (2 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-209062840 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this39828,other39829){\nvar self__ \x3d this;\nvar this39828__$1 \x3d this;\nreturn (((!((other39829 \x3d\x3d null)))) \x26\x26 ((this39828__$1.constructor \x3d\x3d\x3d other39829.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this39828__$1.splicing_QMARK_,other39829.splicing_QMARK_)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this39828__$1.form,other39829.form)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this39828__$1.__extmap,other39829.__extmap)));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),null,new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(self__.splicing_QMARK_,self__.form,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__39826){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__39898 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__39899 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__39898.cljs$core$IFn$_invoke$arity$2 ? pred__39898.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),expr__39899) : pred__39898.call(null,new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),expr__39899)))){\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(G__39826,self__.form,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__39898.cljs$core$IFn$_invoke$arity$2 ? pred__39898.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471),expr__39899) : pred__39898.call(null,new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471),expr__39899)))){\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(self__.splicing_QMARK_,G__39826,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(self__.splicing_QMARK_,self__.form,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__39826),null));\n}\n}\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),self__.splicing_QMARK_,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471),self__.form,null))], null),self__.__extmap));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__39826){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(self__.splicing_QMARK_,self__.form,G__39826,self__.__extmap,self__.__hash));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22splicing?\x22,\x22splicing?\x22,1211935161,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null);\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.cljs$lang$type \x3d true);\n\n(cljs.tools.reader.impl.utils.ReaderConditional.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.tools.reader.impl.utils/ReaderConditional\x22,null,(1),null));\n}));\n\n(cljs.tools.reader.impl.utils.ReaderConditional.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.tools.reader.impl.utils/ReaderConditional\x22);\n}));\n\n/**\n * Positional factory function for cljs.tools.reader.impl.utils/ReaderConditional.\n */\ncljs.tools.reader.impl.utils.__GT_ReaderConditional \x3d (function cljs$tools$reader$impl$utils$__GT_ReaderConditional(splicing_QMARK_,form){\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(splicing_QMARK_,form,null,null,null));\n});\n\n/**\n * Factory function for cljs.tools.reader.impl.utils/ReaderConditional, taking a map of keywords to field values.\n */\ncljs.tools.reader.impl.utils.map__GT_ReaderConditional \x3d (function cljs$tools$reader$impl$utils$map__GT_ReaderConditional(G__39842){\nvar extmap__4454__auto__ \x3d (function (){var G__39922 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__39842,new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471)], 0));\nif(cljs.core.record_QMARK_(G__39842)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__39922);\n} else {\nreturn G__39922;\n}\n})();\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(new cljs.core.Keyword(null,\x22splicing?\x22,\x22splicing?\x22,-428596366).cljs$core$IFn$_invoke$arity$1(G__39842),new cljs.core.Keyword(null,\x22form\x22,\x22form\x22,-1624062471).cljs$core$IFn$_invoke$arity$1(G__39842),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n/**\n * Return true if the value is the data representation of a reader conditional\n */\ncljs.tools.reader.impl.utils.reader_conditional_QMARK_ \x3d (function cljs$tools$reader$impl$utils$reader_conditional_QMARK_(value){\nreturn (value instanceof cljs.tools.reader.impl.utils.ReaderConditional);\n});\n/**\n * Construct a data representation of a reader conditional.\n *   If true, splicing? indicates read-cond-splicing.\n */\ncljs.tools.reader.impl.utils.reader_conditional \x3d (function cljs$tools$reader$impl$utils$reader_conditional(form,splicing_QMARK_){\nreturn (new cljs.tools.reader.impl.utils.ReaderConditional(splicing_QMARK_,form,null,null,null));\n});\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.impl.utils.ReaderConditional.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar coll__$1 \x3d this;\ncljs.core._write(writer,[\x22#?\x22,(cljs.core.truth_(coll__$1.splicing_QMARK_)?\x22@\x22:null)].join(\x27\x27));\n\nreturn cljs.core.pr_writer(coll__$1.form,writer,opts);\n}));\ncljs.tools.reader.impl.utils.ws_rx \x3d /[\\s]/;\n/**\n * Checks whether a given character is whitespace\n */\ncljs.tools.reader.impl.utils.whitespace_QMARK_ \x3d (function cljs$tools$reader$impl$utils$whitespace_QMARK_(ch){\nif((ch \x3d\x3d null)){\nreturn null;\n} else {\nif((ch \x3d\x3d\x3d \x22,\x22)){\nreturn true;\n} else {\nreturn cljs.tools.reader.impl.utils.ws_rx.test(ch);\n}\n}\n});\n/**\n * Checks whether a given character is numeric\n */\ncljs.tools.reader.impl.utils.numeric_QMARK_ \x3d (function cljs$tools$reader$impl$utils$numeric_QMARK_(ch){\nif((ch \x3d\x3d null)){\nreturn null;\n} else {\nreturn goog.string.isNumeric(ch);\n}\n});\n/**\n * Checks whether the character is a newline\n */\ncljs.tools.reader.impl.utils.newline_QMARK_ \x3d (function cljs$tools$reader$impl$utils$newline_QMARK_(c){\nreturn (((\x22\\n\x22 \x3d\x3d\x3d c)) || ((\x22\\n\x22 \x3d\x3d\x3d c)) || ((c \x3d\x3d null)));\n});\n/**\n * Resolves syntactical sugar in metadata\n */\ncljs.tools.reader.impl.utils.desugar_meta \x3d (function cljs$tools$reader$impl$utils$desugar_meta(f){\nif((f instanceof cljs.core.Keyword)){\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([f,true]);\n} else {\nif((f instanceof cljs.core.Symbol)){\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),f], null);\n} else {\nif(typeof f \x3d\x3d\x3d \x27string\x27){\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),f], null);\n} else {\nreturn f;\n\n}\n}\n}\n});\ncljs.tools.reader.impl.utils.last_id \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0));\ncljs.tools.reader.impl.utils.next_id \x3d (function cljs$tools$reader$impl$utils$next_id(){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(cljs.tools.reader.impl.utils.last_id,cljs.core.inc);\n});\ncljs.tools.reader.impl.utils.namespace_keys \x3d (function cljs$tools$reader$impl$utils$namespace_keys(ns,keys){\nvar iter__4564__auto__ \x3d (function cljs$tools$reader$impl$utils$namespace_keys_$_iter__39973(s__39974){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__39974__$1 \x3d s__39974;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__39974__$1);\nif(temp__5753__auto__){\nvar s__39974__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__39974__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__39974__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__39976 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__39975 \x3d (0);\nwhile(true){\nif((i__39975 \x3c size__4563__auto__)){\nvar key \x3d cljs.core._nth(c__4562__auto__,i__39975);\ncljs.core.chunk_append(b__39976,(((((key instanceof cljs.core.Symbol)) || ((key instanceof cljs.core.Keyword))))?(function (){var vec__39983 \x3d cljs.core.juxt.cljs$core$IFn$_invoke$arity$2(cljs.core.namespace,cljs.core.name)(key);\nvar key_ns \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39983,(0),null);\nvar key_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39983,(1),null);\nvar __GT_key \x3d (((key instanceof cljs.core.Symbol))?cljs.core.symbol:cljs.core.keyword);\nif((key_ns \x3d\x3d null)){\nreturn (__GT_key.cljs$core$IFn$_invoke$arity$2 ? __GT_key.cljs$core$IFn$_invoke$arity$2(ns,key_name) : __GT_key.call(null,ns,key_name));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22_\x22,key_ns)){\nreturn (__GT_key.cljs$core$IFn$_invoke$arity$1 ? __GT_key.cljs$core$IFn$_invoke$arity$1(key_name) : __GT_key.call(null,key_name));\n} else {\nreturn key;\n\n}\n}\n})():key));\n\nvar G__40116 \x3d (i__39975 + (1));\ni__39975 \x3d G__40116;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__39976),cljs$tools$reader$impl$utils$namespace_keys_$_iter__39973(cljs.core.chunk_rest(s__39974__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__39976),null);\n}\n} else {\nvar key \x3d cljs.core.first(s__39974__$2);\nreturn cljs.core.cons((((((key instanceof cljs.core.Symbol)) || ((key instanceof cljs.core.Keyword))))?(function (){var vec__39994 \x3d cljs.core.juxt.cljs$core$IFn$_invoke$arity$2(cljs.core.namespace,cljs.core.name)(key);\nvar key_ns \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39994,(0),null);\nvar key_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39994,(1),null);\nvar __GT_key \x3d (((key instanceof cljs.core.Symbol))?cljs.core.symbol:cljs.core.keyword);\nif((key_ns \x3d\x3d null)){\nreturn (__GT_key.cljs$core$IFn$_invoke$arity$2 ? __GT_key.cljs$core$IFn$_invoke$arity$2(ns,key_name) : __GT_key.call(null,ns,key_name));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22_\x22,key_ns)){\nreturn (__GT_key.cljs$core$IFn$_invoke$arity$1 ? __GT_key.cljs$core$IFn$_invoke$arity$1(key_name) : __GT_key.call(null,key_name));\n} else {\nreturn key;\n\n}\n}\n})():key),cljs$tools$reader$impl$utils$namespace_keys_$_iter__39973(cljs.core.rest(s__39974__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(keys);\n});\ncljs.tools.reader.impl.utils.second_SINGLEQUOTE_ \x3d (function cljs$tools$reader$impl$utils$second_SINGLEQUOTE_(p__40002){\nvar vec__40003 \x3d p__40002;\nvar a \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40003,(0),null);\nvar b \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40003,(1),null);\nif(cljs.core.truth_(a)){\nreturn null;\n} else {\nreturn b;\n}\n});\ncljs.tools.reader.impl.utils.char_code \x3d (function cljs$tools$reader$impl$utils$char_code(ch,base){\nvar code \x3d parseInt(ch,base);\nif(cljs.core.truth_(isNaN(code))){\nreturn (-1);\n} else {\nreturn code;\n}\n});\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.reader_types.js", true , "goog.provide(\x27cljs.tools.reader.reader_types\x27);\n\n/**\n * @interface\n */\ncljs.tools.reader.reader_types.Reader \x3d function(){};\n\nvar cljs$tools$reader$reader_types$Reader$read_char$dyn_40182 \x3d (function (reader){\nvar x__4463__auto__ \x3d (((reader \x3d\x3d null))?null:reader);\nvar m__4464__auto__ \x3d (cljs.tools.reader.reader_types.read_char[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4464__auto__.call(null,reader));\n} else {\nvar m__4461__auto__ \x3d (cljs.tools.reader.reader_types.read_char[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4461__auto__.call(null,reader));\n} else {\nthrow cljs.core.missing_protocol(\x22Reader.read-char\x22,reader);\n}\n}\n});\n/**\n * Returns the next char from the Reader, nil if the end of stream has been reached\n */\ncljs.tools.reader.reader_types.read_char \x3d (function cljs$tools$reader$reader_types$read_char(reader){\nif((((!((reader \x3d\x3d null)))) \x26\x26 ((!((reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1 \x3d\x3d null)))))){\nreturn reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(reader);\n} else {\nreturn cljs$tools$reader$reader_types$Reader$read_char$dyn_40182(reader);\n}\n});\n\nvar cljs$tools$reader$reader_types$Reader$peek_char$dyn_40187 \x3d (function (reader){\nvar x__4463__auto__ \x3d (((reader \x3d\x3d null))?null:reader);\nvar m__4464__auto__ \x3d (cljs.tools.reader.reader_types.peek_char[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4464__auto__.call(null,reader));\n} else {\nvar m__4461__auto__ \x3d (cljs.tools.reader.reader_types.peek_char[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4461__auto__.call(null,reader));\n} else {\nthrow cljs.core.missing_protocol(\x22Reader.peek-char\x22,reader);\n}\n}\n});\n/**\n * Returns the next char from the Reader without removing it from the reader stream\n */\ncljs.tools.reader.reader_types.peek_char \x3d (function cljs$tools$reader$reader_types$peek_char(reader){\nif((((!((reader \x3d\x3d null)))) \x26\x26 ((!((reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1 \x3d\x3d null)))))){\nreturn reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(reader);\n} else {\nreturn cljs$tools$reader$reader_types$Reader$peek_char$dyn_40187(reader);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.tools.reader.reader_types.IPushbackReader \x3d function(){};\n\nvar cljs$tools$reader$reader_types$IPushbackReader$unread$dyn_40189 \x3d (function (reader,ch){\nvar x__4463__auto__ \x3d (((reader \x3d\x3d null))?null:reader);\nvar m__4464__auto__ \x3d (cljs.tools.reader.reader_types.unread[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(reader,ch) : m__4464__auto__.call(null,reader,ch));\n} else {\nvar m__4461__auto__ \x3d (cljs.tools.reader.reader_types.unread[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(reader,ch) : m__4461__auto__.call(null,reader,ch));\n} else {\nthrow cljs.core.missing_protocol(\x22IPushbackReader.unread\x22,reader);\n}\n}\n});\n/**\n * Pushes back a single character on to the stream\n */\ncljs.tools.reader.reader_types.unread \x3d (function cljs$tools$reader$reader_types$unread(reader,ch){\nif((((!((reader \x3d\x3d null)))) \x26\x26 ((!((reader.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2 \x3d\x3d null)))))){\nreturn reader.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(reader,ch);\n} else {\nreturn cljs$tools$reader$reader_types$IPushbackReader$unread$dyn_40189(reader,ch);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.tools.reader.reader_types.IndexingReader \x3d function(){};\n\nvar cljs$tools$reader$reader_types$IndexingReader$get_line_number$dyn_40194 \x3d (function (reader){\nvar x__4463__auto__ \x3d (((reader \x3d\x3d null))?null:reader);\nvar m__4464__auto__ \x3d (cljs.tools.reader.reader_types.get_line_number[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4464__auto__.call(null,reader));\n} else {\nvar m__4461__auto__ \x3d (cljs.tools.reader.reader_types.get_line_number[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4461__auto__.call(null,reader));\n} else {\nthrow cljs.core.missing_protocol(\x22IndexingReader.get-line-number\x22,reader);\n}\n}\n});\n/**\n * Returns the line number of the next character to be read from the stream\n */\ncljs.tools.reader.reader_types.get_line_number \x3d (function cljs$tools$reader$reader_types$get_line_number(reader){\nif((((!((reader \x3d\x3d null)))) \x26\x26 ((!((reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1 \x3d\x3d null)))))){\nreturn reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(reader);\n} else {\nreturn cljs$tools$reader$reader_types$IndexingReader$get_line_number$dyn_40194(reader);\n}\n});\n\nvar cljs$tools$reader$reader_types$IndexingReader$get_column_number$dyn_40199 \x3d (function (reader){\nvar x__4463__auto__ \x3d (((reader \x3d\x3d null))?null:reader);\nvar m__4464__auto__ \x3d (cljs.tools.reader.reader_types.get_column_number[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4464__auto__.call(null,reader));\n} else {\nvar m__4461__auto__ \x3d (cljs.tools.reader.reader_types.get_column_number[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4461__auto__.call(null,reader));\n} else {\nthrow cljs.core.missing_protocol(\x22IndexingReader.get-column-number\x22,reader);\n}\n}\n});\n/**\n * Returns the column number of the next character to be read from the stream\n */\ncljs.tools.reader.reader_types.get_column_number \x3d (function cljs$tools$reader$reader_types$get_column_number(reader){\nif((((!((reader \x3d\x3d null)))) \x26\x26 ((!((reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1 \x3d\x3d null)))))){\nreturn reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(reader);\n} else {\nreturn cljs$tools$reader$reader_types$IndexingReader$get_column_number$dyn_40199(reader);\n}\n});\n\nvar cljs$tools$reader$reader_types$IndexingReader$get_file_name$dyn_40202 \x3d (function (reader){\nvar x__4463__auto__ \x3d (((reader \x3d\x3d null))?null:reader);\nvar m__4464__auto__ \x3d (cljs.tools.reader.reader_types.get_file_name[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4464__auto__.call(null,reader));\n} else {\nvar m__4461__auto__ \x3d (cljs.tools.reader.reader_types.get_file_name[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(reader) : m__4461__auto__.call(null,reader));\n} else {\nthrow cljs.core.missing_protocol(\x22IndexingReader.get-file-name\x22,reader);\n}\n}\n});\n/**\n * Returns the file name the reader is reading from, or nil\n */\ncljs.tools.reader.reader_types.get_file_name \x3d (function cljs$tools$reader$reader_types$get_file_name(reader){\nif((((!((reader \x3d\x3d null)))) \x26\x26 ((!((reader.cljs$tools$reader$reader_types$IndexingReader$get_file_name$arity$1 \x3d\x3d null)))))){\nreturn reader.cljs$tools$reader$reader_types$IndexingReader$get_file_name$arity$1(reader);\n} else {\nreturn cljs$tools$reader$reader_types$IndexingReader$get_file_name$dyn_40202(reader);\n}\n});\n\n\n/**\n* @constructor\n * @implements {cljs.tools.reader.reader_types.Reader}\n*/\ncljs.tools.reader.reader_types.StringReader \x3d (function (s,s_len,s_pos){\nthis.s \x3d s;\nthis.s_len \x3d s_len;\nthis.s_pos \x3d s_pos;\n});\n(cljs.tools.reader.reader_types.StringReader.prototype.cljs$tools$reader$reader_types$Reader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.StringReader.prototype.cljs$tools$reader$reader_types$Reader$read_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif((self__.s_len \x3e self__.s_pos)){\nvar r \x3d self__.s.charAt(self__.s_pos);\n(self__.s_pos \x3d (self__.s_pos + (1)));\n\nreturn r;\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.reader_types.StringReader.prototype.cljs$tools$reader$reader_types$Reader$peek_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif((self__.s_len \x3e self__.s_pos)){\nreturn self__.s.charAt(self__.s_pos);\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.reader_types.StringReader.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22s-len\x22,\x22s-len\x22,1869978331,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22s-pos\x22,\x22s-pos\x22,-540562492,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.tools.reader.reader_types.StringReader.cljs$lang$type \x3d true);\n\n(cljs.tools.reader.reader_types.StringReader.cljs$lang$ctorStr \x3d \x22cljs.tools.reader.reader-types/StringReader\x22);\n\n(cljs.tools.reader.reader_types.StringReader.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.tools.reader.reader-types/StringReader\x22);\n}));\n\n/**\n * Positional factory function for cljs.tools.reader.reader-types/StringReader.\n */\ncljs.tools.reader.reader_types.__GT_StringReader \x3d (function cljs$tools$reader$reader_types$__GT_StringReader(s,s_len,s_pos){\nreturn (new cljs.tools.reader.reader_types.StringReader(s,s_len,s_pos));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.tools.reader.reader_types.Reader}\n*/\ncljs.tools.reader.reader_types.NodeReadableReader \x3d (function (readable,buf){\nthis.readable \x3d readable;\nthis.buf \x3d buf;\n});\n(cljs.tools.reader.reader_types.NodeReadableReader.prototype.cljs$tools$reader$reader_types$Reader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.NodeReadableReader.prototype.cljs$tools$reader$reader_types$Reader$read_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif(cljs.core.truth_(self__.buf)){\nvar c \x3d (self__.buf[(0)]);\n(self__.buf \x3d null);\n\nreturn cljs.tools.reader.impl.utils.char$(c);\n} else {\nvar c \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.readable.read((1)));\nif(cljs.core.truth_(c)){\nreturn cljs.tools.reader.impl.utils.char$(c);\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.tools.reader.reader_types.NodeReadableReader.prototype.cljs$tools$reader$reader_types$Reader$peek_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif(cljs.core.truth_(self__.buf)){\n} else {\n(self__.buf \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.readable.read((1))));\n}\n\nif(cljs.core.truth_(self__.buf)){\nreturn cljs.tools.reader.impl.utils.char$((self__.buf[(0)]));\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.reader_types.NodeReadableReader.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22readable\x22,\x22readable\x22,2113054478,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.tools.reader.reader_types.NodeReadableReader.cljs$lang$type \x3d true);\n\n(cljs.tools.reader.reader_types.NodeReadableReader.cljs$lang$ctorStr \x3d \x22cljs.tools.reader.reader-types/NodeReadableReader\x22);\n\n(cljs.tools.reader.reader_types.NodeReadableReader.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.tools.reader.reader-types/NodeReadableReader\x22);\n}));\n\n/**\n * Positional factory function for cljs.tools.reader.reader-types/NodeReadableReader.\n */\ncljs.tools.reader.reader_types.__GT_NodeReadableReader \x3d (function cljs$tools$reader$reader_types$__GT_NodeReadableReader(readable,buf){\nreturn (new cljs.tools.reader.reader_types.NodeReadableReader(readable,buf));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.tools.reader.reader_types.Reader}\n * @implements {cljs.tools.reader.reader_types.IPushbackReader}\n*/\ncljs.tools.reader.reader_types.PushbackReader \x3d (function (rdr,buf,buf_len,buf_pos){\nthis.rdr \x3d rdr;\nthis.buf \x3d buf;\nthis.buf_len \x3d buf_len;\nthis.buf_pos \x3d buf_pos;\n});\n(cljs.tools.reader.reader_types.PushbackReader.prototype.cljs$tools$reader$reader_types$Reader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.PushbackReader.prototype.cljs$tools$reader$reader_types$Reader$read_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nvar c \x3d (((self__.buf_pos \x3c self__.buf_len))?(self__.buf[self__.buf_pos]):self__.rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null));\nif((self__.buf_pos \x3c self__.buf_len)){\n(self__.buf_pos \x3d (self__.buf_pos + (1)));\n} else {\n}\n\nreturn cljs.tools.reader.impl.utils.char$(c);\n}));\n\n(cljs.tools.reader.reader_types.PushbackReader.prototype.cljs$tools$reader$reader_types$Reader$peek_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nvar c \x3d (((self__.buf_pos \x3c self__.buf_len))?(self__.buf[self__.buf_pos]):self__.rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null));\nreturn cljs.tools.reader.impl.utils.char$(c);\n}));\n\n(cljs.tools.reader.reader_types.PushbackReader.prototype.cljs$tools$reader$reader_types$IPushbackReader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.PushbackReader.prototype.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2 \x3d (function (reader,ch){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif(cljs.core.truth_(ch)){\nif((self__.buf_pos \x3d\x3d\x3d (0))){\nthrow (new Error(\x22Pushback buffer is full\x22));\n} else {\n}\n\n(self__.buf_pos \x3d (self__.buf_pos - (1)));\n\nreturn (self__.buf[self__.buf_pos] \x3d ch);\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.reader_types.PushbackReader.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.Symbol(null,\x22buf-len\x22,\x22buf-len\x22,404510846,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22buf-pos\x22,\x22buf-pos\x22,-807229033,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.tools.reader.reader_types.PushbackReader.cljs$lang$type \x3d true);\n\n(cljs.tools.reader.reader_types.PushbackReader.cljs$lang$ctorStr \x3d \x22cljs.tools.reader.reader-types/PushbackReader\x22);\n\n(cljs.tools.reader.reader_types.PushbackReader.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.tools.reader.reader-types/PushbackReader\x22);\n}));\n\n/**\n * Positional factory function for cljs.tools.reader.reader-types/PushbackReader.\n */\ncljs.tools.reader.reader_types.__GT_PushbackReader \x3d (function cljs$tools$reader$reader_types$__GT_PushbackReader(rdr,buf,buf_len,buf_pos){\nreturn (new cljs.tools.reader.reader_types.PushbackReader(rdr,buf,buf_len,buf_pos));\n});\n\ncljs.tools.reader.reader_types.normalize_newline \x3d (function cljs$tools$reader$reader_types$normalize_newline(rdr,ch){\nif((\x22\\r\x22 \x3d\x3d\x3d ch)){\nvar c \x3d rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\nif((((\x22\\f\x22 \x3d\x3d\x3d c)) || ((\x22\\n\x22 \x3d\x3d\x3d c)))){\nrdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n} else {\n}\n\nreturn \x22\\n\x22;\n} else {\nreturn ch;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.tools.reader.reader_types.IndexingReader}\n * @implements {cljs.tools.reader.reader_types.Reader}\n * @implements {cljs.tools.reader.reader_types.IPushbackReader}\n*/\ncljs.tools.reader.reader_types.IndexingPushbackReader \x3d (function (rdr,line,column,line_start_QMARK_,prev,prev_column,file_name){\nthis.rdr \x3d rdr;\nthis.line \x3d line;\nthis.column \x3d column;\nthis.line_start_QMARK_ \x3d line_start_QMARK_;\nthis.prev \x3d prev;\nthis.prev_column \x3d prev_column;\nthis.file_name \x3d file_name;\n});\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$Reader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$Reader$read_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nvar temp__5753__auto__ \x3d self__.rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ch \x3d temp__5753__auto__;\nvar ch__$1 \x3d cljs.tools.reader.reader_types.normalize_newline(self__.rdr,ch);\n(self__.prev \x3d self__.line_start_QMARK_);\n\n(self__.line_start_QMARK_ \x3d cljs.tools.reader.impl.utils.newline_QMARK_(ch__$1));\n\nif(cljs.core.truth_(self__.line_start_QMARK_)){\n(self__.prev_column \x3d self__.column);\n\n(self__.column \x3d (0));\n\n(self__.line \x3d (self__.line + (1)));\n} else {\n}\n\n(self__.column \x3d (self__.column + (1)));\n\nreturn ch__$1;\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$Reader$peek_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn self__.rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$IPushbackReader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2 \x3d (function (reader,ch){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif(cljs.core.truth_(self__.line_start_QMARK_)){\n(self__.line \x3d (self__.line - (1)));\n\n(self__.column \x3d self__.prev_column);\n} else {\n(self__.column \x3d (self__.column - (1)));\n}\n\n(self__.line_start_QMARK_ \x3d self__.prev);\n\nreturn self__.rdr.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,ch);\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn (self__.line | (0));\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn (self__.column | (0));\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$get_file_name$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn self__.file_name;\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22line\x22,\x22line\x22,1852876762,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22column\x22,\x22column\x22,-576213674,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22line-start?\x22,\x22line-start?\x22,1357012474,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22prev\x22,\x22prev\x22,43462301,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22prev-column\x22,\x22prev-column\x22,324083974,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22file-name\x22,\x22file-name\x22,-13685732,null)], null);\n}));\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.cljs$lang$type \x3d true);\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.cljs$lang$ctorStr \x3d \x22cljs.tools.reader.reader-types/IndexingPushbackReader\x22);\n\n(cljs.tools.reader.reader_types.IndexingPushbackReader.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.tools.reader.reader-types/IndexingPushbackReader\x22);\n}));\n\n/**\n * Positional factory function for cljs.tools.reader.reader-types/IndexingPushbackReader.\n */\ncljs.tools.reader.reader_types.__GT_IndexingPushbackReader \x3d (function cljs$tools$reader$reader_types$__GT_IndexingPushbackReader(rdr,line,column,line_start_QMARK_,prev,prev_column,file_name){\nreturn (new cljs.tools.reader.reader_types.IndexingPushbackReader(rdr,line,column,line_start_QMARK_,prev,prev_column,file_name));\n});\n\n/**\n * Returns an object of the same type and value as `obj`, with its\n * metadata merged over `m`.\n */\ncljs.tools.reader.reader_types.merge_meta \x3d (function cljs$tools$reader$reader_types$merge_meta(obj,m){\nvar orig_meta \x3d cljs.core.meta(obj);\nreturn cljs.core.with_meta(obj,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([m,cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(orig_meta,new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539))], 0)));\n});\n/**\n * Returns a string containing the contents of the top most source\n * logging frame.\n */\ncljs.tools.reader.reader_types.peek_source_log \x3d (function cljs$tools$reader$reader_types$peek_source_log(frames){\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(frames)),cljs.core.first(new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(frames)));\n});\n/**\n * Logs `char` to all currently active source logging frames.\n */\ncljs.tools.reader.reader_types.log_source_char \x3d (function cljs$tools$reader$reader_types$log_source_char(frames,char$){\nvar temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(frames);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar buffer \x3d temp__5753__auto__;\nreturn buffer.append(char$);\n} else {\nreturn null;\n}\n});\n/**\n * Removes the last logged character from all currently active source\n * logging frames. Called when pushing a character back.\n */\ncljs.tools.reader.reader_types.drop_last_logged_char \x3d (function cljs$tools$reader$reader_types$drop_last_logged_char(frames){\nvar temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(frames);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar buffer \x3d temp__5753__auto__;\nreturn buffer.set(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(cljs.core.str.cljs$core$IFn$_invoke$arity$1(buffer),(0),(buffer.getLength() - (1))));\n} else {\nreturn null;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.tools.reader.reader_types.IndexingReader}\n * @implements {cljs.tools.reader.reader_types.Reader}\n * @implements {cljs.tools.reader.reader_types.IPushbackReader}\n*/\ncljs.tools.reader.reader_types.SourceLoggingPushbackReader \x3d (function (rdr,line,column,line_start_QMARK_,prev,prev_column,file_name,frames){\nthis.rdr \x3d rdr;\nthis.line \x3d line;\nthis.column \x3d column;\nthis.line_start_QMARK_ \x3d line_start_QMARK_;\nthis.prev \x3d prev;\nthis.prev_column \x3d prev_column;\nthis.file_name \x3d file_name;\nthis.frames \x3d frames;\n});\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$Reader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$Reader$read_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nvar temp__5753__auto__ \x3d self__.rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ch \x3d temp__5753__auto__;\nvar ch__$1 \x3d cljs.tools.reader.reader_types.normalize_newline(self__.rdr,ch);\n(self__.prev \x3d self__.line_start_QMARK_);\n\n(self__.line_start_QMARK_ \x3d cljs.tools.reader.impl.utils.newline_QMARK_(ch__$1));\n\nif(cljs.core.truth_(self__.line_start_QMARK_)){\n(self__.prev_column \x3d self__.column);\n\n(self__.column \x3d (0));\n\n(self__.line \x3d (self__.line + (1)));\n} else {\n}\n\n(self__.column \x3d (self__.column + (1)));\n\ncljs.tools.reader.reader_types.log_source_char(cljs.core.deref(self__.frames),ch__$1);\n\nreturn ch__$1;\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$Reader$peek_char$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn self__.rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$IPushbackReader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2 \x3d (function (reader,ch){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nif(cljs.core.truth_(self__.line_start_QMARK_)){\n(self__.line \x3d (self__.line - (1)));\n\n(self__.column \x3d self__.prev_column);\n} else {\n(self__.column \x3d (self__.column - (1)));\n}\n\n(self__.line_start_QMARK_ \x3d self__.prev);\n\nif(cljs.core.truth_(ch)){\ncljs.tools.reader.reader_types.drop_last_logged_char(cljs.core.deref(self__.frames));\n} else {\n}\n\nreturn self__.rdr.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,ch);\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn (self__.line | (0));\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn (self__.column | (0));\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.prototype.cljs$tools$reader$reader_types$IndexingReader$get_file_name$arity$1 \x3d (function (reader){\nvar self__ \x3d this;\nvar reader__$1 \x3d this;\nreturn self__.file_name;\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22line\x22,\x22line\x22,1852876762,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22column\x22,\x22column\x22,-576213674,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22line-start?\x22,\x22line-start?\x22,1357012474,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22prev\x22,\x22prev\x22,43462301,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22prev-column\x22,\x22prev-column\x22,324083974,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22file-name\x22,\x22file-name\x22,-13685732,null),new cljs.core.Symbol(null,\x22frames\x22,\x22frames\x22,-888748272,null)], null);\n}));\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.cljs$lang$type \x3d true);\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.cljs$lang$ctorStr \x3d \x22cljs.tools.reader.reader-types/SourceLoggingPushbackReader\x22);\n\n(cljs.tools.reader.reader_types.SourceLoggingPushbackReader.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.tools.reader.reader-types/SourceLoggingPushbackReader\x22);\n}));\n\n/**\n * Positional factory function for cljs.tools.reader.reader-types/SourceLoggingPushbackReader.\n */\ncljs.tools.reader.reader_types.__GT_SourceLoggingPushbackReader \x3d (function cljs$tools$reader$reader_types$__GT_SourceLoggingPushbackReader(rdr,line,column,line_start_QMARK_,prev,prev_column,file_name,frames){\nreturn (new cljs.tools.reader.reader_types.SourceLoggingPushbackReader(rdr,line,column,line_start_QMARK_,prev,prev_column,file_name,frames));\n});\n\n/**\n * Returns true if the reader satisfies IndexingReader\n */\ncljs.tools.reader.reader_types.indexing_reader_QMARK_ \x3d (function cljs$tools$reader$reader_types$indexing_reader_QMARK_(rdr){\nif((!((rdr \x3d\x3d null)))){\nif(((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d rdr.cljs$tools$reader$reader_types$IndexingReader$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n});\n/**\n * Creates a StringReader from a given string\n */\ncljs.tools.reader.reader_types.string_reader \x3d (function cljs$tools$reader$reader_types$string_reader(s){\nreturn (new cljs.tools.reader.reader_types.StringReader(s,cljs.core.count(s),(0)));\n});\n/**\n * Creates a PushbackReader from a given string\n */\ncljs.tools.reader.reader_types.string_push_back_reader \x3d (function cljs$tools$reader$reader_types$string_push_back_reader(var_args){\nvar G__40167 \x3d arguments.length;\nswitch (G__40167) {\ncase 1:\nreturn cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$2(s,(1));\n}));\n\n(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,buf_len){\nreturn (new cljs.tools.reader.reader_types.PushbackReader(cljs.tools.reader.reader_types.string_reader(s),cljs.core.object_array.cljs$core$IFn$_invoke$arity$1(buf_len),buf_len,buf_len));\n}));\n\n(cljs.tools.reader.reader_types.string_push_back_reader.cljs$lang$maxFixedArity \x3d 2);\n\ncljs.tools.reader.reader_types.node_readable_push_back_reader \x3d (function cljs$tools$reader$reader_types$node_readable_push_back_reader(readable){\nreturn (new cljs.tools.reader.reader_types.PushbackReader((new cljs.tools.reader.reader_types.NodeReadableReader(readable,null)),cljs.core.object_array.cljs$core$IFn$_invoke$arity$1((1)),(1),(1)));\n});\n/**\n * Creates an IndexingPushbackReader from a given string or PushbackReader\n */\ncljs.tools.reader.reader_types.indexing_push_back_reader \x3d (function cljs$tools$reader$reader_types$indexing_push_back_reader(var_args){\nvar G__40169 \x3d arguments.length;\nswitch (G__40169) {\ncase 1:\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1 \x3d (function (s_or_rdr){\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$2(s_or_rdr,(1));\n}));\n\n(cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$2 \x3d (function (s_or_rdr,buf_len){\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$3(s_or_rdr,buf_len,null);\n}));\n\n(cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$3 \x3d (function (s_or_rdr,buf_len,file_name){\nreturn (new cljs.tools.reader.reader_types.IndexingPushbackReader(((typeof s_or_rdr \x3d\x3d\x3d \x27string\x27)?cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$2(s_or_rdr,buf_len):s_or_rdr),(1),(1),true,null,(0),file_name));\n}));\n\n(cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Creates a SourceLoggingPushbackReader from a given string or PushbackReader\n */\ncljs.tools.reader.reader_types.source_logging_push_back_reader \x3d (function cljs$tools$reader$reader_types$source_logging_push_back_reader(var_args){\nvar G__40171 \x3d arguments.length;\nswitch (G__40171) {\ncase 1:\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$1 \x3d (function (s_or_rdr){\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$2(s_or_rdr,(1));\n}));\n\n(cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$2 \x3d (function (s_or_rdr,buf_len){\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$3(s_or_rdr,buf_len,null);\n}));\n\n(cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$3 \x3d (function (s_or_rdr,buf_len,file_name){\nreturn (new cljs.tools.reader.reader_types.SourceLoggingPushbackReader(((typeof s_or_rdr \x3d\x3d\x3d \x27string\x27)?cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$2(s_or_rdr,buf_len):s_or_rdr),(1),(1),true,null,(0),file_name,cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198),(new goog.string.StringBuffer()),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),cljs.core.list((0))], null))));\n}));\n\n(cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Reads a line from the reader or from *in* if no reader is specified\n */\ncljs.tools.reader.reader_types.read_line \x3d (function cljs$tools$reader$reader_types$read_line(rdr){\nvar c \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nvar s \x3d (new goog.string.StringBuffer());\nwhile(true){\nif(cljs.tools.reader.impl.utils.newline_QMARK_(c)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(s);\n} else {\nvar G__40231 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nvar G__40232 \x3d s.append(c);\nc \x3d G__40231;\ns \x3d G__40232;\ncontinue;\n}\nbreak;\n}\n});\ncljs.tools.reader.reader_types.source_logging_reader_QMARK_ \x3d (function cljs$tools$reader$reader_types$source_logging_reader_QMARK_(rdr){\nreturn (rdr instanceof cljs.tools.reader.reader_types.SourceLoggingPushbackReader);\n});\n/**\n * Returns true if rdr is an IndexingReader and the current char starts a new line\n */\ncljs.tools.reader.reader_types.line_start_QMARK_ \x3d (function cljs$tools$reader$reader_types$line_start_QMARK_(rdr){\nif(cljs.tools.reader.reader_types.indexing_reader_QMARK_(rdr)){\nreturn ((1) \x3d\x3d\x3d rdr.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null));\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.reader_types.log_source_STAR_ \x3d (function cljs$tools$reader$reader_types$log_source_STAR_(reader,f){\nvar buffer \x3d new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(reader.frames));\ntry{cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(reader.frames,cljs.core.update_in,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311)], null),cljs.core.conj,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([buffer.getLength()], 0));\n\nvar ret \x3d (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\nif((((!((ret \x3d\x3d null))))?(((((ret.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d ret.cljs$core$IMeta$))))?true:false):false)){\nreturn cljs.tools.reader.reader_types.merge_meta(ret,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),cljs.tools.reader.reader_types.peek_source_log(cljs.core.deref(reader.frames))], null));\n} else {\nreturn ret;\n}\n}finally {cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(reader.frames,cljs.core.update_in,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311)], null),cljs.core.rest);\n}});\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.impl.inspect.js", true , "goog.provide(\x27cljs.tools.reader.impl.inspect\x27);\ncljs.tools.reader.impl.inspect.inspect_STAR__col \x3d (function cljs$tools$reader$impl$inspect$inspect_STAR__col(truncate,col,start,end){\nvar n \x3d cljs.core.count(col);\nvar l \x3d (cljs.core.truth_(truncate)?(0):(function (){var x__4252__auto__ \x3d (10);\nvar y__4253__auto__ \x3d n;\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})());\nvar elements \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(cljs.tools.reader.impl.inspect.inspect_STAR_,true),cljs.core.take.cljs$core$IFn$_invoke$arity$2(l,col));\nvar content \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(\x22 \x22,elements));\nvar suffix \x3d (((l \x3c n))?\x22...\x22:null);\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(start),cljs.core.str.cljs$core$IFn$_invoke$arity$1(content),suffix,cljs.core.str.cljs$core$IFn$_invoke$arity$1(end)].join(\x27\x27);\n});\ncljs.tools.reader.impl.inspect.dispatch_inspect \x3d (function cljs$tools$reader$impl$inspect$dispatch_inspect(_,x){\nif((x \x3d\x3d null)){\nreturn new cljs.core.Keyword(null,\x22nil\x22,\x22nil\x22,99600501);\n} else {\nif(typeof x \x3d\x3d\x3d \x27string\x27){\nreturn new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586);\n} else {\nif((x instanceof cljs.core.Keyword)){\nreturn new cljs.core.Keyword(null,\x22strable\x22,\x22strable\x22,1877668047);\n} else {\nif(typeof x \x3d\x3d\x3d \x27number\x27){\nreturn new cljs.core.Keyword(null,\x22strable\x22,\x22strable\x22,1877668047);\n} else {\nif((x instanceof cljs.core.Symbol)){\nreturn new cljs.core.Keyword(null,\x22strable\x22,\x22strable\x22,1877668047);\n} else {\nif(cljs.core.vector_QMARK_(x)){\nreturn new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158);\n} else {\nif(cljs.core.list_QMARK_(x)){\nreturn new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683);\n} else {\nif(cljs.core.map_QMARK_(x)){\nreturn new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461);\n} else {\nif(cljs.core.set_QMARK_(x)){\nreturn new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,true)){\nreturn new cljs.core.Keyword(null,\x22strable\x22,\x22strable\x22,1877668047);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,false)){\nreturn new cljs.core.Keyword(null,\x22strable\x22,\x22strable\x22,1877668047);\n} else {\nreturn cljs.core.type(x);\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader.impl.inspect !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader.impl.inspect.inspect_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.tools.reader.impl.inspect.inspect_STAR_ \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__39746 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__39746.cljs$core$IFn$_invoke$arity$0 ? fexpr__39746.cljs$core$IFn$_invoke$arity$0() : fexpr__39746.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22cljs.tools.reader.impl.inspect\x22,\x22inspect*\x22),cljs.tools.reader.impl.inspect.dispatch_inspect,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586),(function (truncate,x){\nvar n \x3d (cljs.core.truth_(truncate)?(5):(20));\nvar suffix \x3d (((x.length \x3e n))?\x22...\\\x22\x22:\x22\\\x22\x22);\nreturn [\x22\\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x.substring((0),(function (){var x__4252__auto__ \x3d n;\nvar y__4253__auto__ \x3d x.length;\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})())),suffix].join(\x27\x27);\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22strable\x22,\x22strable\x22,1877668047),(function (truncate,x){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(x);\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.IndexedSeq,(function (truncate,x){\nreturn \x22\x3cindexed seq\x3e\x22;\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.PersistentArrayMapSeq,(function (truncate,x){\nreturn \x22\x3cmap seq\x3e\x22;\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.NodeSeq,(function (truncate,x){\nreturn \x22\x3cmap seq\x3e\x22;\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.Cons,(function (truncate,x){\nreturn \x22\x3ccons\x3e\x22;\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,cljs.core.LazySeq,(function (truncate,x){\nreturn \x22\x3clazy seq\x3e\x22;\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22nil\x22,\x22nil\x22,99600501),(function (_,___$1){\nreturn \x22nil\x22;\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683),(function (truncate,col){\nreturn cljs.tools.reader.impl.inspect.inspect_STAR__col(truncate,col,\x22(\x22,\x22)\x22);\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),(function (truncate,m){\nvar len \x3d cljs.core.count(m);\nvar n_shown \x3d (cljs.core.truth_(truncate)?(0):len);\nvar contents \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.take.cljs$core$IFn$_invoke$arity$2(n_shown,m));\nvar suffix \x3d (((len \x3e n_shown))?\x22...}\x22:\x22}\x22);\nreturn cljs.tools.reader.impl.inspect.inspect_STAR__col(truncate,contents,\x22{\x22,suffix);\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),(function (truncate,col){\nreturn cljs.tools.reader.impl.inspect.inspect_STAR__col(truncate,col,\x22#{\x22,\x22}\x22);\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158),(function (truncate,col){\nreturn cljs.tools.reader.impl.inspect.inspect_STAR__col(truncate,col,\x22[\x22,\x22]\x22);\n}));\ncljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),(function (truncate,x){\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.type(x)], 0));\n}));\n/**\n * Return a string description of the value supplied.\n * May be the a string version of the value itself (e.g. \x22true\x22)\n * or it may be a description (e.g. \x22an instance of Foo\x22).\n * If truncate is true then return a very terse version of\n * the inspection.\n */\ncljs.tools.reader.impl.inspect.inspect \x3d (function cljs$tools$reader$impl$inspect$inspect(var_args){\nvar G__39762 \x3d arguments.length;\nswitch (G__39762) {\ncase 1:\nreturn cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1 \x3d (function (x){\nreturn cljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IFn$_invoke$arity$2(false,x);\n}));\n\n(cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$2 \x3d (function (truncate,x){\nreturn cljs.tools.reader.impl.inspect.inspect_STAR_.cljs$core$IFn$_invoke$arity$2(truncate,x);\n}));\n\n(cljs.tools.reader.impl.inspect.inspect.cljs$lang$maxFixedArity \x3d 2);\n\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.impl.errors.js", true , "goog.provide(\x27cljs.tools.reader.impl.errors\x27);\ncljs.tools.reader.impl.errors.ex_details \x3d (function cljs$tools$reader$impl$errors$ex_details(rdr,ex_type){\nvar details \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098),new cljs.core.Keyword(null,\x22ex-kind\x22,\x22ex-kind\x22,1581199296),ex_type], null);\nif(cljs.tools.reader.reader_types.indexing_reader_QMARK_(rdr)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(details,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.tools.reader.reader_types.get_file_name(rdr),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),cljs.tools.reader.reader_types.get_line_number(rdr),new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),cljs.tools.reader.reader_types.get_column_number(rdr)], 0));\n} else {\nreturn details;\n}\n});\n/**\n * Throw an ex-info error.\n */\ncljs.tools.reader.impl.errors.throw_ex \x3d (function cljs$tools$reader$impl$errors$throw_ex(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40262 \x3d arguments.length;\nvar i__4772__auto___40263 \x3d (0);\nwhile(true){\nif((i__4772__auto___40263 \x3c len__4771__auto___40262)){\nargs__4777__auto__.push((arguments[i__4772__auto___40263]));\n\nvar G__40264 \x3d (i__4772__auto___40263 + (1));\ni__4772__auto___40263 \x3d G__40264;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn cljs.tools.reader.impl.errors.throw_ex.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(cljs.tools.reader.impl.errors.throw_ex.cljs$core$IFn$_invoke$arity$variadic \x3d (function (rdr,ex_type,msg){\nvar details \x3d cljs.tools.reader.impl.errors.ex_details(rdr,ex_type);\nvar file \x3d new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878).cljs$core$IFn$_invoke$arity$1(details);\nvar line \x3d new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235).cljs$core$IFn$_invoke$arity$1(details);\nvar col \x3d new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084).cljs$core$IFn$_invoke$arity$1(details);\nvar msg1 \x3d (cljs.core.truth_(file)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(file),\x22 \x22].join(\x27\x27):null);\nvar msg2 \x3d (cljs.core.truth_(line)?[\x22[line \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(line),\x22, col \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col),\x22]\x22].join(\x27\x27):null);\nvar msg3 \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d msg1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn msg2;\n}\n})())?\x22 \x22:null);\nvar full_msg \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$5(cljs.core.str,msg1,msg2,msg3,msg);\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(full_msg,details);\n}));\n\n(cljs.tools.reader.impl.errors.throw_ex.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(cljs.tools.reader.impl.errors.throw_ex.cljs$lang$applyTo \x3d (function (seq40190){\nvar G__40191 \x3d cljs.core.first(seq40190);\nvar seq40190__$1 \x3d cljs.core.next(seq40190);\nvar G__40192 \x3d cljs.core.first(seq40190__$1);\nvar seq40190__$2 \x3d cljs.core.next(seq40190__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40191,G__40192,seq40190__$2);\n}));\n\n/**\n * Throws an ExceptionInfo with the given message.\n * If rdr is an IndexingReader, additional information about column and line number is provided\n */\ncljs.tools.reader.impl.errors.reader_error \x3d (function cljs$tools$reader$impl$errors$reader_error(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40270 \x3d arguments.length;\nvar i__4772__auto___40271 \x3d (0);\nwhile(true){\nif((i__4772__auto___40271 \x3c len__4771__auto___40270)){\nargs__4777__auto__.push((arguments[i__4772__auto___40271]));\n\nvar G__40272 \x3d (i__4772__auto___40271 + (1));\ni__4772__auto___40271 \x3d G__40272;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic \x3d (function (rdr,msgs){\nreturn cljs.tools.reader.impl.errors.throw_ex.cljs$core$IFn$_invoke$arity$variadic(rdr,new cljs.core.Keyword(null,\x22reader-error\x22,\x22reader-error\x22,1610253121),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,msgs)], 0));\n}));\n\n(cljs.tools.reader.impl.errors.reader_error.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.tools.reader.impl.errors.reader_error.cljs$lang$applyTo \x3d (function (seq40200){\nvar G__40201 \x3d cljs.core.first(seq40200);\nvar seq40200__$1 \x3d cljs.core.next(seq40200);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40201,seq40200__$1);\n}));\n\n/**\n * Throws an ExceptionInfo with the given message.\n * If rdr is an IndexingReader, additional information about column and line number is provided\n */\ncljs.tools.reader.impl.errors.illegal_arg_error \x3d (function cljs$tools$reader$impl$errors$illegal_arg_error(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40273 \x3d arguments.length;\nvar i__4772__auto___40274 \x3d (0);\nwhile(true){\nif((i__4772__auto___40274 \x3c len__4771__auto___40273)){\nargs__4777__auto__.push((arguments[i__4772__auto___40274]));\n\nvar G__40275 \x3d (i__4772__auto___40274 + (1));\ni__4772__auto___40274 \x3d G__40275;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.tools.reader.impl.errors.illegal_arg_error.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.tools.reader.impl.errors.illegal_arg_error.cljs$core$IFn$_invoke$arity$variadic \x3d (function (rdr,msgs){\nreturn cljs.tools.reader.impl.errors.throw_ex.cljs$core$IFn$_invoke$arity$variadic(rdr,new cljs.core.Keyword(null,\x22illegal-argument\x22,\x22illegal-argument\x22,-1845493170),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,msgs)], 0));\n}));\n\n(cljs.tools.reader.impl.errors.illegal_arg_error.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.tools.reader.impl.errors.illegal_arg_error.cljs$lang$applyTo \x3d (function (seq40203){\nvar G__40204 \x3d cljs.core.first(seq40203);\nvar seq40203__$1 \x3d cljs.core.next(seq40203);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40204,seq40203__$1);\n}));\n\n/**\n * Throws an ExceptionInfo with the given message.\n * If rdr is an IndexingReader, additional information about column and line number is provided\n */\ncljs.tools.reader.impl.errors.eof_error \x3d (function cljs$tools$reader$impl$errors$eof_error(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40276 \x3d arguments.length;\nvar i__4772__auto___40277 \x3d (0);\nwhile(true){\nif((i__4772__auto___40277 \x3c len__4771__auto___40276)){\nargs__4777__auto__.push((arguments[i__4772__auto___40277]));\n\nvar G__40278 \x3d (i__4772__auto___40277 + (1));\ni__4772__auto___40277 \x3d G__40278;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic \x3d (function (rdr,msgs){\nreturn cljs.tools.reader.impl.errors.throw_ex.cljs$core$IFn$_invoke$arity$variadic(rdr,new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,msgs)], 0));\n}));\n\n(cljs.tools.reader.impl.errors.eof_error.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.tools.reader.impl.errors.eof_error.cljs$lang$applyTo \x3d (function (seq40205){\nvar G__40206 \x3d cljs.core.first(seq40205);\nvar seq40205__$1 \x3d cljs.core.next(seq40205);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40206,seq40205__$1);\n}));\n\ncljs.tools.reader.impl.errors.throw_eof_delimited \x3d (function cljs$tools$reader$impl$errors$throw_eof_delimited(var_args){\nvar G__40211 \x3d arguments.length;\nswitch (G__40211) {\ncase 4:\nreturn cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$4 \x3d (function (rdr,kind,column,line){\nreturn cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$5(rdr,kind,line,column,null);\n}));\n\n(cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$5 \x3d (function (rdr,kind,line,column,n){\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unexpected EOF while reading \x22,(cljs.core.truth_(n)?[\x22item \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),\x22 of \x22].join(\x27\x27):null),cljs.core.name(kind),(cljs.core.truth_(line)?[\x22, starting at line \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(line),\x22 and column \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(column)].join(\x27\x27):null),\x22.\x22], 0));\n}));\n\n(cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$lang$maxFixedArity \x3d 5);\n\ncljs.tools.reader.impl.errors.throw_odd_map \x3d (function cljs$tools$reader$impl$errors$throw_odd_map(rdr,line,col,elements){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22The map literal starting with \x22,cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(cljs.core.first(elements)),(cljs.core.truth_(line)?[\x22 on line \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(line),\x22 column \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col)].join(\x27\x27):null),\x22 contains \x22,cljs.core.count(elements),\x22 form(s). Map literals must contain an even number of forms.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_number \x3d (function cljs$tools$reader$impl$errors$throw_invalid_number(rdr,token){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid number: \x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_unicode_literal \x3d (function cljs$tools$reader$impl$errors$throw_invalid_unicode_literal(rdr,token){\nthrow cljs.tools.reader.impl.errors.illegal_arg_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid unicode literal: \\\\\x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_unicode_escape \x3d (function cljs$tools$reader$impl$errors$throw_invalid_unicode_escape(rdr,ch){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid unicode escape: \\\\u\x22,ch,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid \x3d (function cljs$tools$reader$impl$errors$throw_invalid(rdr,kind,token){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid \x22,cljs.core.name(kind),\x22: \x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_eof_at_start \x3d (function cljs$tools$reader$impl$errors$throw_eof_at_start(rdr,kind){\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unexpected EOF while reading start of \x22,cljs.core.name(kind),\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_char \x3d (function cljs$tools$reader$impl$errors$throw_bad_char(rdr,kind,ch){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid character: \x22,ch,\x22 found while reading \x22,cljs.core.name(kind),\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_eof_at_dispatch \x3d (function cljs$tools$reader$impl$errors$throw_eof_at_dispatch(rdr){\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unexpected EOF while reading dispatch character.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_unmatch_delimiter \x3d (function cljs$tools$reader$impl$errors$throw_unmatch_delimiter(rdr,ch){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unmatched delimiter \x22,ch,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_eof_reading \x3d (function cljs$tools$reader$impl$errors$throw_eof_reading(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40286 \x3d arguments.length;\nvar i__4772__auto___40287 \x3d (0);\nwhile(true){\nif((i__4772__auto___40287 \x3c len__4771__auto___40286)){\nargs__4777__auto__.push((arguments[i__4772__auto___40287]));\n\nvar G__40288 \x3d (i__4772__auto___40287 + (1));\ni__4772__auto___40287 \x3d G__40288;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn cljs.tools.reader.impl.errors.throw_eof_reading.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(cljs.tools.reader.impl.errors.throw_eof_reading.cljs$core$IFn$_invoke$arity$variadic \x3d (function (rdr,kind,start){\nvar init \x3d (function (){var G__40216 \x3d kind;\nvar G__40216__$1 \x3d (((G__40216 instanceof cljs.core.Keyword))?G__40216.fqn:null);\nswitch (G__40216__$1) {\ncase \x22regex\x22:\nreturn \x22#\\\x22\x22;\n\nbreak;\ncase \x22string\x22:\nreturn \x22\\\x22\x22;\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__40216__$1)].join(\x27\x27)));\n\n}\n})();\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unexpected EOF reading \x22,cljs.core.name(kind),\x22 starting \x22,cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.str,init,start),\x22.\x22], 0));\n}));\n\n(cljs.tools.reader.impl.errors.throw_eof_reading.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(cljs.tools.reader.impl.errors.throw_eof_reading.cljs$lang$applyTo \x3d (function (seq40213){\nvar G__40214 \x3d cljs.core.first(seq40213);\nvar seq40213__$1 \x3d cljs.core.next(seq40213);\nvar G__40215 \x3d cljs.core.first(seq40213__$1);\nvar seq40213__$2 \x3d cljs.core.next(seq40213__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40214,G__40215,seq40213__$2);\n}));\n\ncljs.tools.reader.impl.errors.throw_invalid_unicode_char \x3d (function cljs$tools$reader$impl$errors$throw_invalid_unicode_char(rdr,token){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid unicode character \\\\\x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_unicode_digit_in_token \x3d (function cljs$tools$reader$impl$errors$throw_invalid_unicode_digit_in_token(rdr,ch,token){\nreturn cljs.tools.reader.impl.errors.illegal_arg_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid digit \x22,ch,\x22 in unicode character \\\\\x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_unicode_digit \x3d (function cljs$tools$reader$impl$errors$throw_invalid_unicode_digit(rdr,ch){\nreturn cljs.tools.reader.impl.errors.illegal_arg_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid digit \x22,ch,\x22 in unicode character.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_unicode_len \x3d (function cljs$tools$reader$impl$errors$throw_invalid_unicode_len(rdr,actual,expected){\nreturn cljs.tools.reader.impl.errors.illegal_arg_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid unicode literal. Unicode literals should be \x22,expected,\x22characters long.  \x22,\x22value suppled is \x22,actual,\x22characters long.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_character_literal \x3d (function cljs$tools$reader$impl$errors$throw_invalid_character_literal(rdr,token){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid character literal \\\\u\x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_invalid_octal_len \x3d (function cljs$tools$reader$impl$errors$throw_invalid_octal_len(rdr,token){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid octal escape sequence in a character literal:\x22,token,\x22. Octal escape sequences must be 3 or fewer digits.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_octal_number \x3d (function cljs$tools$reader$impl$errors$throw_bad_octal_number(rdr){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Octal escape sequence must be in range [0, 377].\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_unsupported_character \x3d (function cljs$tools$reader$impl$errors$throw_unsupported_character(rdr,token){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unsupported character: \x22,token,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_eof_in_character \x3d (function cljs$tools$reader$impl$errors$throw_eof_in_character(rdr){\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unexpected EOF while reading character.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_escape_char \x3d (function cljs$tools$reader$impl$errors$throw_bad_escape_char(rdr,ch){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Unsupported escape character: \\\\\x22,ch,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_single_colon \x3d (function cljs$tools$reader$impl$errors$throw_single_colon(rdr){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22A single colon is not a valid keyword.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_metadata \x3d (function cljs$tools$reader$impl$errors$throw_bad_metadata(rdr,x){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Metadata cannot be \x22,cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(x),\x22. Metadata must be a Symbol, Keyword, String or Map.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_metadata_target \x3d (function cljs$tools$reader$impl$errors$throw_bad_metadata_target(rdr,target){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Metadata can not be applied to \x22,cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(target),\x22. \x22,\x22Metadata can only be applied to IMetas.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_feature_not_keyword \x3d (function cljs$tools$reader$impl$errors$throw_feature_not_keyword(rdr,feature){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Feature cannot be \x22,cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(feature),\x22 Features must be keywords.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_ns_map_no_map \x3d (function cljs$tools$reader$impl$errors$throw_ns_map_no_map(rdr,ns_name){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Namespaced map with namespace \x22,ns_name,\x22 does not specify a map.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_ns \x3d (function cljs$tools$reader$impl$errors$throw_bad_ns(rdr,ns_name){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid value used as namespace in namespaced map: \x22,ns_name,\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_bad_reader_tag \x3d (function cljs$tools$reader$impl$errors$throw_bad_reader_tag(rdr,tag){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid reader tag: \x22,cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(tag),\x22. Reader tags must be symbols.\x22], 0));\n});\ncljs.tools.reader.impl.errors.throw_unknown_reader_tag \x3d (function cljs$tools$reader$impl$errors$throw_unknown_reader_tag(rdr,tag){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22No reader function for tag \x22,cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(tag),\x22.\x22], 0));\n});\ncljs.tools.reader.impl.errors.duplicate_keys_error \x3d (function cljs$tools$reader$impl$errors$duplicate_keys_error(msg,coll){\nvar duplicates \x3d (function cljs$tools$reader$impl$errors$duplicate_keys_error_$_duplicates(seq){\nvar iter__4564__auto__ \x3d (function cljs$tools$reader$impl$errors$duplicate_keys_error_$_duplicates_$_iter__40246(s__40247){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__40247__$1 \x3d s__40247;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__40247__$1);\nif(temp__5753__auto__){\nvar s__40247__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__40247__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__40247__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__40249 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__40248 \x3d (0);\nwhile(true){\nif((i__40248 \x3c size__4563__auto__)){\nvar vec__40250 \x3d cljs.core._nth(c__4562__auto__,i__40248);\nvar id \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40250,(0),null);\nvar freq \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40250,(1),null);\nif((freq \x3e (1))){\ncljs.core.chunk_append(b__40249,id);\n\nvar G__40306 \x3d (i__40248 + (1));\ni__40248 \x3d G__40306;\ncontinue;\n} else {\nvar G__40307 \x3d (i__40248 + (1));\ni__40248 \x3d G__40307;\ncontinue;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40249),cljs$tools$reader$impl$errors$duplicate_keys_error_$_duplicates_$_iter__40246(cljs.core.chunk_rest(s__40247__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40249),null);\n}\n} else {\nvar vec__40254 \x3d cljs.core.first(s__40247__$2);\nvar id \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40254,(0),null);\nvar freq \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40254,(1),null);\nif((freq \x3e (1))){\nreturn cljs.core.cons(id,cljs$tools$reader$impl$errors$duplicate_keys_error_$_duplicates_$_iter__40246(cljs.core.rest(s__40247__$2)));\n} else {\nvar G__40309 \x3d cljs.core.rest(s__40247__$2);\ns__40247__$1 \x3d G__40309;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(cljs.core.frequencies(seq));\n});\nvar dups \x3d duplicates(coll);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(cljs.core.str,msg,(((cljs.core.count(dups) \x3e (1)))?\x22s\x22:null),\x22: \x22,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(\x22, \x22,dups));\n});\ncljs.tools.reader.impl.errors.throw_dup_keys \x3d (function cljs$tools$reader$impl$errors$throw_dup_keys(rdr,kind,ks){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.tools.reader.impl.errors.duplicate_keys_error([clojure.string.capitalize(cljs.core.name(kind)),\x22 literal contains duplicate key\x22].join(\x27\x27),ks)], 0));\n});\ncljs.tools.reader.impl.errors.throw_eof_error \x3d (function cljs$tools$reader$impl$errors$throw_eof_error(rdr,line){\nif(cljs.core.truth_(line)){\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22EOF while reading, starting at line \x22,line,\x22.\x22], 0));\n} else {\nreturn cljs.tools.reader.impl.errors.eof_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22EOF while reading.\x22], 0));\n}\n});\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.impl.commons.js", true , "goog.provide(\x27cljs.tools.reader.impl.commons\x27);\n/**\n * Checks whether the reader is at the start of a number literal\n */\ncljs.tools.reader.impl.commons.number_literal_QMARK_ \x3d (function cljs$tools$reader$impl$commons$number_literal_QMARK_(reader,initch){\nreturn ((cljs.tools.reader.impl.utils.numeric_QMARK_(initch)) || ((((((\x22+\x22 \x3d\x3d\x3d initch)) || ((\x22-\x22 \x3d\x3d\x3d initch)))) \x26\x26 (cljs.tools.reader.impl.utils.numeric_QMARK_(reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null))))));\n});\n/**\n * Read until first character that doesn\x27t match pred, returning\n * char.\n */\ncljs.tools.reader.impl.commons.read_past \x3d (function cljs$tools$reader$impl$commons$read_past(pred,rdr){\nvar ch \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nwhile(true){\nif((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(ch) : pred.call(null,ch))){\nvar G__40299 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nch \x3d G__40299;\ncontinue;\n} else {\nreturn ch;\n}\nbreak;\n}\n});\n/**\n * Advances the reader to the end of a line. Returns the reader\n */\ncljs.tools.reader.impl.commons.skip_line \x3d (function cljs$tools$reader$impl$commons$skip_line(reader){\nwhile(true){\nif(cljs.tools.reader.impl.utils.newline_QMARK_(reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null))){\n} else {\ncontinue;\n}\nbreak;\n}\n\nreturn reader;\n});\ncljs.tools.reader.impl.commons.int_pattern \x3d /^([-+]?)(?:(0)|([1-9][0-9]*)|0[xX]([0-9A-Fa-f]+)|0([0-7]+)|([1-9][0-9]?)[rR]([0-9A-Za-z]+)|0[0-9]+)(N)?$/;\ncljs.tools.reader.impl.commons.ratio_pattern \x3d /([-+]?[0-9]+)\\/([0-9]+)/;\ncljs.tools.reader.impl.commons.float_pattern \x3d /([-+]?[0-9]+(\\.[0-9]*)?([eE][-+]?[0-9]+)?)(M)?/;\ncljs.tools.reader.impl.commons.match_int \x3d (function cljs$tools$reader$impl$commons$match_int(s){\nvar m \x3d cljs.core.vec(cljs.core.re_find(cljs.tools.reader.impl.commons.int_pattern,s));\nif((!(((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((2)) : m.call(null,(2))) \x3d\x3d null)))){\nreturn (0);\n} else {\nvar negate_QMARK_ \x3d (\x22-\x22 \x3d\x3d\x3d (m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((1)) : m.call(null,(1))));\nvar a \x3d (((!(((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((3)) : m.call(null,(3))) \x3d\x3d null))))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((3)) : m.call(null,(3))),(10)], null):(((!(((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((4)) : m.call(null,(4))) \x3d\x3d null))))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((4)) : m.call(null,(4))),(16)], null):(((!(((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((5)) : m.call(null,(5))) \x3d\x3d null))))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((5)) : m.call(null,(5))),(8)], null):(((!(((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((7)) : m.call(null,(7))) \x3d\x3d null))))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((7)) : m.call(null,(7))),parseInt((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((6)) : m.call(null,(6))))], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null)\n))));\nvar n \x3d (a.cljs$core$IFn$_invoke$arity$1 ? a.cljs$core$IFn$_invoke$arity$1((0)) : a.call(null,(0)));\nif((n \x3d\x3d null)){\nreturn null;\n} else {\nvar bn \x3d parseInt(n,(a.cljs$core$IFn$_invoke$arity$1 ? a.cljs$core$IFn$_invoke$arity$1((1)) : a.call(null,(1))));\nvar bn__$1 \x3d ((negate_QMARK_)?((-1) * bn):bn);\nif(cljs.core.truth_(isNaN(bn__$1))){\nreturn null;\n} else {\nreturn bn__$1;\n}\n}\n}\n});\ncljs.tools.reader.impl.commons.match_ratio \x3d (function cljs$tools$reader$impl$commons$match_ratio(s){\nvar m \x3d cljs.core.vec(cljs.core.re_find(cljs.tools.reader.impl.commons.ratio_pattern,s));\nvar numerator \x3d (m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((1)) : m.call(null,(1)));\nvar denominator \x3d (m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((2)) : m.call(null,(2)));\nvar numerator__$1 \x3d (cljs.core.truth_(cljs.core.re_find(/^\\+/,numerator))?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(numerator,(1)):numerator);\nreturn (parseInt(numerator__$1) / parseInt(denominator));\n});\ncljs.tools.reader.impl.commons.match_float \x3d (function cljs$tools$reader$impl$commons$match_float(s){\nvar m \x3d cljs.core.vec(cljs.core.re_find(cljs.tools.reader.impl.commons.float_pattern,s));\nif((!(((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((4)) : m.call(null,(4))) \x3d\x3d null)))){\nreturn parseFloat((m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1((1)) : m.call(null,(1))));\n} else {\nreturn parseFloat(s);\n}\n});\ncljs.tools.reader.impl.commons.matches_QMARK_ \x3d (function cljs$tools$reader$impl$commons$matches_QMARK_(pattern,s){\nvar vec__40280 \x3d cljs.core.re_find(pattern,s);\nvar match \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40280,(0),null);\nreturn (match \x3d\x3d\x3d s);\n});\ncljs.tools.reader.impl.commons.match_number \x3d (function cljs$tools$reader$impl$commons$match_number(s){\nif(cljs.tools.reader.impl.commons.matches_QMARK_(cljs.tools.reader.impl.commons.int_pattern,s)){\nreturn cljs.tools.reader.impl.commons.match_int(s);\n} else {\nif(cljs.tools.reader.impl.commons.matches_QMARK_(cljs.tools.reader.impl.commons.float_pattern,s)){\nreturn cljs.tools.reader.impl.commons.match_float(s);\n} else {\nif(cljs.tools.reader.impl.commons.matches_QMARK_(cljs.tools.reader.impl.commons.ratio_pattern,s)){\nreturn cljs.tools.reader.impl.commons.match_ratio(s);\n} else {\nreturn null;\n}\n}\n}\n});\n/**\n * Parses a string into a vector of the namespace and symbol\n */\ncljs.tools.reader.impl.commons.parse_symbol \x3d (function cljs$tools$reader$impl$commons$parse_symbol(token){\nif((((\x22\x22 \x3d\x3d\x3d token)) || (/:$/.test(token) \x3d\x3d\x3d true) || (/^::/.test(token) \x3d\x3d\x3d true))){\nreturn null;\n} else {\nvar ns_idx \x3d token.indexOf(\x22/\x22);\nvar ns \x3d (((ns_idx \x3e (0)))?cljs.core.subs.cljs$core$IFn$_invoke$arity$3(token,(0),ns_idx):null);\nif((!((ns \x3d\x3d null)))){\nvar ns_idx__$1 \x3d (ns_idx + (1));\nif((ns_idx__$1 \x3d\x3d\x3d cljs.core.count(token))){\nreturn null;\n} else {\nvar sym \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(token,ns_idx__$1);\nif((((!(cljs.tools.reader.impl.utils.numeric_QMARK_(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(sym,(0)))))) \x26\x26 ((!((\x22\x22 \x3d\x3d\x3d sym)))) \x26\x26 (/:$/.test(ns) \x3d\x3d\x3d false) \x26\x26 ((((sym \x3d\x3d\x3d \x22/\x22)) || (((-1) \x3d\x3d\x3d sym.indexOf(\x22/\x22))))))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ns,sym], null);\n} else {\nreturn null;\n}\n}\n} else {\nif((((token \x3d\x3d\x3d \x22/\x22)) || (((-1) \x3d\x3d\x3d token.indexOf(\x22/\x22))))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,token], null);\n} else {\nreturn null;\n}\n}\n}\n});\ncljs.tools.reader.impl.commons.read_comment \x3d (function cljs$tools$reader$impl$commons$read_comment(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___40323 \x3d arguments.length;\nvar i__4772__auto___40324 \x3d (0);\nwhile(true){\nif((i__4772__auto___40324 \x3c len__4771__auto___40323)){\nargs__4777__auto__.push((arguments[i__4772__auto___40324]));\n\nvar G__40325 \x3d (i__4772__auto___40324 + (1));\ni__4772__auto___40324 \x3d G__40325;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.tools.reader.impl.commons.read_comment.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.tools.reader.impl.commons.read_comment.cljs$core$IFn$_invoke$arity$variadic \x3d (function (rdr,_){\nreturn cljs.tools.reader.impl.commons.skip_line(rdr);\n}));\n\n(cljs.tools.reader.impl.commons.read_comment.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.tools.reader.impl.commons.read_comment.cljs$lang$applyTo \x3d (function (seq40290){\nvar G__40291 \x3d cljs.core.first(seq40290);\nvar seq40290__$1 \x3d cljs.core.next(seq40290);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40291,seq40290__$1);\n}));\n\ncljs.tools.reader.impl.commons.throwing_reader \x3d (function cljs$tools$reader$impl$commons$throwing_reader(msg){\nreturn (function() { \nvar G__40327__delegate \x3d function (rdr,_){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([msg], 0));\n};\nvar G__40327 \x3d function (rdr,var_args){\nvar _ \x3d null;\nif (arguments.length \x3e 1) {\nvar G__40328__i \x3d 0, G__40328__a \x3d new Array(arguments.length -  1);\nwhile (G__40328__i \x3c G__40328__a.length) {G__40328__a[G__40328__i] \x3d arguments[G__40328__i + 1]; ++G__40328__i;}\n  _ \x3d new cljs.core.IndexedSeq(G__40328__a,0,null);\n} \nreturn G__40327__delegate.call(this,rdr,_);};\nG__40327.cljs$lang$maxFixedArity \x3d 1;\nG__40327.cljs$lang$applyTo \x3d (function (arglist__40329){\nvar rdr \x3d cljs.core.first(arglist__40329);\nvar _ \x3d cljs.core.rest(arglist__40329);\nreturn G__40327__delegate(rdr,_);\n});\nG__40327.cljs$core$IFn$_invoke$arity$variadic \x3d G__40327__delegate;\nreturn G__40327;\n})()\n;\n});\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.js", true , "goog.provide(\x27cljs.tools.reader\x27);\n\n\n\n\n\n\ncljs.tools.reader.macro_terminating_QMARK_ \x3d (function cljs$tools$reader$macro_terminating_QMARK_(ch){\nvar G__40340 \x3d ch;\nswitch (G__40340) {\ncase \x22\\\x22\x22:\ncase \x22;\x22:\ncase \x22@\x22:\ncase \x22^\x22:\ncase \x22`\x22:\ncase \x22~\x22:\ncase \x22(\x22:\ncase \x22)\x22:\ncase \x22[\x22:\ncase \x22]\x22:\ncase \x22{\x22:\ncase \x22}\x22:\ncase \x22\\\\\x22:\nreturn true;\n\nbreak;\ndefault:\nreturn false;\n\n}\n});\ncljs.tools.reader.sb \x3d (new goog.string.StringBuffer());\n/**\n * Read in a single logical token from the reader\n */\ncljs.tools.reader.read_token \x3d (function cljs$tools$reader$read_token(rdr,kind,initch){\nif((initch \x3d\x3d null)){\nreturn cljs.tools.reader.impl.errors.throw_eof_at_start(rdr,kind);\n} else {\ncljs.tools.reader.sb.clear();\n\nvar ch \x3d initch;\nwhile(true){\nif(((cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)) || (cljs.tools.reader.macro_terminating_QMARK_(ch)) || ((ch \x3d\x3d null)))){\nif((ch \x3d\x3d null)){\n} else {\nrdr.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,ch);\n}\n\nreturn cljs.tools.reader.sb.toString();\n} else {\ncljs.tools.reader.sb.append(ch);\n\nvar G__40596 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nch \x3d G__40596;\ncontinue;\n}\nbreak;\n}\n}\n});\ncljs.tools.reader.read_dispatch \x3d (function cljs$tools$reader$read_dispatch(rdr,_,opts,pending_forms){\nvar temp__5751__auto__ \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ch \x3d temp__5751__auto__;\nvar temp__5751__auto____$1 \x3d (cljs.tools.reader.dispatch_macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.dispatch_macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.dispatch_macros.call(null,ch));\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar dm \x3d temp__5751__auto____$1;\nreturn (dm.cljs$core$IFn$_invoke$arity$4 ? dm.cljs$core$IFn$_invoke$arity$4(rdr,ch,opts,pending_forms) : dm.call(null,rdr,ch,opts,pending_forms));\n} else {\nvar G__40345 \x3d (function (){var G__40349 \x3d rdr;\nG__40349.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,ch);\n\nreturn G__40349;\n})();\nvar G__40346 \x3d ch;\nvar G__40347 \x3d opts;\nvar G__40348 \x3d pending_forms;\nreturn (cljs.tools.reader.read_tagged.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.read_tagged.cljs$core$IFn$_invoke$arity$4(G__40345,G__40346,G__40347,G__40348) : cljs.tools.reader.read_tagged.call(null,G__40345,G__40346,G__40347,G__40348));\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_eof_at_dispatch(rdr);\n}\n});\ncljs.tools.reader.read_unmatched_delimiter \x3d (function cljs$tools$reader$read_unmatched_delimiter(rdr,ch,opts,pending_forms){\nreturn cljs.tools.reader.impl.errors.throw_unmatch_delimiter(rdr,ch);\n});\ncljs.tools.reader.read_regex \x3d (function cljs$tools$reader$read_regex(rdr,ch,opts,pending_forms){\nvar sb \x3d (new goog.string.StringBuffer());\nvar ch__$1 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nwhile(true){\nif((\x22\\\x22\x22 \x3d\x3d\x3d ch__$1)){\nreturn cljs.core.re_pattern(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));\n} else {\nif((ch__$1 \x3d\x3d null)){\nreturn cljs.tools.reader.impl.errors.throw_eof_reading.cljs$core$IFn$_invoke$arity$variadic(rdr,new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sb], 0));\n} else {\nsb.append(ch__$1);\n\nif((\x22\\\\\x22 \x3d\x3d\x3d ch__$1)){\nvar ch_40597__$2 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif((ch_40597__$2 \x3d\x3d null)){\ncljs.tools.reader.impl.errors.throw_eof_reading.cljs$core$IFn$_invoke$arity$variadic(rdr,new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sb], 0));\n} else {\n}\n\nsb.append(ch_40597__$2);\n} else {\n}\n\nvar G__40598 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nch__$1 \x3d G__40598;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.tools.reader.read_unicode_char \x3d (function cljs$tools$reader$read_unicode_char(var_args){\nvar G__40359 \x3d arguments.length;\nswitch (G__40359) {\ncase 4:\nreturn cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$4 \x3d (function (token,offset,length,base){\nvar l \x3d (offset + length);\nif((cljs.core.count(token) \x3d\x3d\x3d l)){\n} else {\ncljs.tools.reader.impl.errors.throw_invalid_unicode_literal(null,token);\n}\n\nvar i \x3d offset;\nvar uc \x3d (0);\nwhile(true){\nif((i \x3d\x3d\x3d l)){\nreturn String.fromCharCode(uc);\n} else {\nvar d \x3d cljs.tools.reader.impl.utils.char_code(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(token,i),base);\nif((d \x3d\x3d\x3d (-1))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_digit_in_token(null,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(token,i),token);\n} else {\nvar G__40602 \x3d (i + (1));\nvar G__40603 \x3d (d + (uc * base));\ni \x3d G__40602;\nuc \x3d G__40603;\ncontinue;\n}\n}\nbreak;\n}\n}));\n\n(cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$5 \x3d (function (rdr,initch,base,length,exact_QMARK_){\nvar i \x3d (1);\nvar uc \x3d cljs.tools.reader.impl.utils.char_code(initch,base);\nwhile(true){\nif((uc \x3d\x3d\x3d (-1))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_digit(rdr,initch);\n} else {\nif((!((i \x3d\x3d\x3d length)))){\nvar ch \x3d rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.tools.reader.impl.utils.whitespace_QMARK_(ch);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (cljs.tools.reader.macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.macros.call(null,ch));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (ch \x3d\x3d null);\n}\n}\n})())){\nif(cljs.core.truth_(exact_QMARK_)){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_len(rdr,i,length);\n} else {\nreturn String.fromCharCode(uc);\n}\n} else {\nvar d \x3d cljs.tools.reader.impl.utils.char_code(ch,base);\nrdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nif((d \x3d\x3d\x3d (-1))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_digit(rdr,ch);\n} else {\nvar G__40628 \x3d (i + (1));\nvar G__40629 \x3d (d + (uc * base));\ni \x3d G__40628;\nuc \x3d G__40629;\ncontinue;\n}\n}\n} else {\nreturn String.fromCharCode(uc);\n}\n}\nbreak;\n}\n}));\n\n(cljs.tools.reader.read_unicode_char.cljs$lang$maxFixedArity \x3d 5);\n\ncljs.tools.reader.upper_limit \x3d \x22\\uD7FF\x22.charCodeAt((0));\ncljs.tools.reader.lower_limit \x3d \x22\\uE000\x22.charCodeAt((0));\ncljs.tools.reader.valid_octal_QMARK_ \x3d (function cljs$tools$reader$valid_octal_QMARK_(token,base){\nreturn (parseInt(token,base) \x3c\x3d (255));\n});\n/**\n * Read in a character literal\n */\ncljs.tools.reader.read_char_STAR_ \x3d (function cljs$tools$reader$read_char_STAR_(rdr,backslash,opts,pending_forms){\nvar ch \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif((!((ch \x3d\x3d null)))){\nvar token \x3d ((((cljs.tools.reader.macro_terminating_QMARK_(ch)) || (cljs.tools.reader.impl.utils.whitespace_QMARK_(ch))))?cljs.core.str.cljs$core$IFn$_invoke$arity$1(ch):cljs.tools.reader.read_token(rdr,new cljs.core.Keyword(null,\x22character\x22,\x22character\x22,380652989),ch));\nvar token_len \x3d token.length;\nif(((1) \x3d\x3d\x3d token_len)){\nreturn token.charAt((0));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22newline\x22)){\nreturn \x22\\n\x22;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22space\x22)){\nreturn \x22 \x22;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22tab\x22)){\nreturn \x22\\t\x22;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22backspace\x22)){\nreturn \x22\\b\x22;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22formfeed\x22)){\nreturn \x22\\f\x22;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22return\x22)){\nreturn \x22\\r\x22;\n} else {\nif(cljs.core.truth_(goog.string.startsWith(token,\x22u\x22))){\nvar c \x3d cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$4(token,(1),(4),(16));\nvar ic \x3d c.charCodeAt((0));\nif((((ic \x3e cljs.tools.reader.upper_limit)) \x26\x26 ((ic \x3c cljs.tools.reader.lower_limit)))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_character_literal(rdr,ic.toString((16)));\n} else {\nreturn c;\n}\n} else {\nif(cljs.core.truth_(goog.string.startsWith(token,\x22o\x22))){\nvar len \x3d (token_len - (1));\nif((len \x3e (3))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_octal_len(rdr,token);\n} else {\nvar offset \x3d (1);\nvar base \x3d (8);\nvar uc \x3d cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$4(token,offset,len,base);\nif((!(cljs.tools.reader.valid_octal_QMARK_(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(token,offset),base)))){\nreturn cljs.tools.reader.impl.errors.throw_bad_octal_number(rdr);\n} else {\nreturn uc;\n}\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_unsupported_character(rdr,token);\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_eof_in_character(rdr);\n}\n});\ncljs.tools.reader.starting_line_col_info \x3d (function cljs$tools$reader$starting_line_col_info(rdr){\nif(cljs.tools.reader.reader_types.indexing_reader_QMARK_(rdr)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [rdr.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null),((rdr.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null) - (1)) | (0))], null);\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.ending_line_col_info \x3d (function cljs$tools$reader$ending_line_col_info(rdr){\nif(cljs.tools.reader.reader_types.indexing_reader_QMARK_(rdr)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [rdr.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null),rdr.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null)], null);\n} else {\nreturn null;\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader.READ_EOF !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.tools.reader.READ_EOF \x3d (new Object());\n}\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader.READ_FINISHED !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.tools.reader.READ_FINISHED \x3d (new Object());\n}\ncljs.tools.reader._STAR_read_delim_STAR_ \x3d false;\ncljs.tools.reader.read_delimited_internal \x3d (function cljs$tools$reader$read_delimited_internal(kind,delim,rdr,opts,pending_forms){\nvar vec__40375 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40375,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40375,(1),null);\nvar delim__$1 \x3d cljs.tools.reader.impl.utils.char$(delim);\nvar a \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nvar form \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(rdr,false,cljs.tools.reader.READ_EOF,delim__$1,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,false,cljs.tools.reader.READ_EOF,delim__$1,opts,pending_forms));\nif((form \x3d\x3d\x3d cljs.tools.reader.READ_FINISHED)){\nreturn cljs.core.persistent_BANG_(a);\n} else {\nif((form \x3d\x3d\x3d cljs.tools.reader.READ_EOF)){\nreturn cljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$5(rdr,kind,start_line,start_column,cljs.core.count(a));\n} else {\nvar G__40636 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(a,form);\na \x3d G__40636;\ncontinue;\n}\n}\nbreak;\n}\n});\n/**\n * Reads and returns a collection ended with delim\n */\ncljs.tools.reader.read_delimited \x3d (function cljs$tools$reader$read_delimited(kind,delim,rdr,opts,pending_forms){\nvar _STAR_read_delim_STAR__orig_val__40380 \x3d cljs.tools.reader._STAR_read_delim_STAR_;\nvar _STAR_read_delim_STAR__temp_val__40381 \x3d true;\n(cljs.tools.reader._STAR_read_delim_STAR_ \x3d _STAR_read_delim_STAR__temp_val__40381);\n\ntry{return cljs.tools.reader.read_delimited_internal(kind,delim,rdr,opts,pending_forms);\n}finally {(cljs.tools.reader._STAR_read_delim_STAR_ \x3d _STAR_read_delim_STAR__orig_val__40380);\n}});\n/**\n * Read in a list, including its location if the reader is an indexing reader\n */\ncljs.tools.reader.read_list \x3d (function cljs$tools$reader$read_list(rdr,_,opts,pending_forms){\nvar vec__40383 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40383,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40383,(1),null);\nvar the_list \x3d cljs.tools.reader.read_delimited(new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683),\x22)\x22,rdr,opts,pending_forms);\nvar vec__40386 \x3d cljs.tools.reader.ending_line_col_info(rdr);\nvar end_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40386,(0),null);\nvar end_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40386,(1),null);\nreturn cljs.core.with_meta(((cljs.core.empty_QMARK_(the_list))?cljs.core.List.EMPTY:cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,the_list)),(cljs.core.truth_(start_line)?cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var temp__5753__auto__ \x3d cljs.tools.reader.reader_types.get_file_name(rdr);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar file \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file], null);\n} else {\nreturn null;\n}\n})(),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),start_line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),start_column,new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),end_line,new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),end_column], null)], 0)):null));\n});\n/**\n * Read in a vector, including its location if the reader is an indexing reader\n */\ncljs.tools.reader.read_vector \x3d (function cljs$tools$reader$read_vector(rdr,_,opts,pending_forms){\nvar vec__40395 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40395,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40395,(1),null);\nvar the_vector \x3d cljs.tools.reader.read_delimited(new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158),\x22]\x22,rdr,opts,pending_forms);\nvar vec__40398 \x3d cljs.tools.reader.ending_line_col_info(rdr);\nvar end_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40398,(0),null);\nvar end_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40398,(1),null);\nreturn cljs.core.with_meta(the_vector,(cljs.core.truth_(start_line)?cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var temp__5753__auto__ \x3d cljs.tools.reader.reader_types.get_file_name(rdr);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar file \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file], null);\n} else {\nreturn null;\n}\n})(),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),start_line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),start_column,new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),end_line,new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),end_column], null)], 0)):null));\n});\n/**\n * Read in a map, including its location if the reader is an indexing reader\n */\ncljs.tools.reader.read_map \x3d (function cljs$tools$reader$read_map(rdr,_,opts,pending_forms){\nvar vec__40403 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40403,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40403,(1),null);\nvar the_map \x3d cljs.tools.reader.read_delimited(new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),\x22}\x22,rdr,opts,pending_forms);\nvar map_count \x3d cljs.core.count(the_map);\nvar ks \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),the_map);\nvar key_set \x3d cljs.core.set(ks);\nvar vec__40406 \x3d cljs.tools.reader.ending_line_col_info(rdr);\nvar end_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40406,(0),null);\nvar end_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40406,(1),null);\nif(cljs.core.odd_QMARK_(map_count)){\ncljs.tools.reader.impl.errors.throw_odd_map(rdr,start_line,start_column,the_map);\n} else {\n}\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(key_set),cljs.core.count(ks))){\n} else {\ncljs.tools.reader.impl.errors.throw_dup_keys(rdr,new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),ks);\n}\n\nreturn cljs.core.with_meta((((map_count \x3c\x3d ((2) * cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD)))?cljs.core.PersistentArrayMap.fromArray(cljs.core.to_array(the_map),true,true):cljs.core.PersistentHashMap.fromArray(cljs.core.to_array(the_map),true)),(cljs.core.truth_(start_line)?cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var temp__5753__auto__ \x3d cljs.tools.reader.reader_types.get_file_name(rdr);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar file \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file], null);\n} else {\nreturn null;\n}\n})(),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),start_line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),start_column,new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),end_line,new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),end_column], null)], 0)):null));\n});\ncljs.tools.reader.read_number \x3d (function cljs$tools$reader$read_number(rdr,initch){\nvar sb \x3d (function (){var G__40414 \x3d (new goog.string.StringBuffer());\nG__40414.append(initch);\n\nreturn G__40414;\n})();\nvar ch \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nwhile(true){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.tools.reader.impl.utils.whitespace_QMARK_(ch);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (cljs.tools.reader.macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.macros.call(null,ch));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (ch \x3d\x3d null);\n}\n}\n})())){\nvar s \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\nrdr.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,ch);\n\nvar or__4160__auto__ \x3d cljs.tools.reader.impl.commons.match_number(s);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid_number(rdr,s);\n}\n} else {\nvar G__40643 \x3d (function (){var G__40417 \x3d sb;\nG__40417.append(ch);\n\nreturn G__40417;\n})();\nvar G__40644 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nsb \x3d G__40643;\nch \x3d G__40644;\ncontinue;\n}\nbreak;\n}\n});\ncljs.tools.reader.escape_char \x3d (function cljs$tools$reader$escape_char(sb,rdr){\nvar ch \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nvar G__40418 \x3d ch;\nswitch (G__40418) {\ncase \x22t\x22:\nreturn \x22\\t\x22;\n\nbreak;\ncase \x22r\x22:\nreturn \x22\\r\x22;\n\nbreak;\ncase \x22n\x22:\nreturn \x22\\n\x22;\n\nbreak;\ncase \x22\\\\\x22:\nreturn \x22\\\\\x22;\n\nbreak;\ncase \x22\\\x22\x22:\nreturn \x22\\\x22\x22;\n\nbreak;\ncase \x22b\x22:\nreturn \x22\\b\x22;\n\nbreak;\ncase \x22f\x22:\nreturn \x22\\f\x22;\n\nbreak;\ncase \x22u\x22:\nvar ch__$1 \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(((-1) \x3d\x3d\x3d parseInt((ch__$1 | (0)),(16)))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_escape(rdr,ch__$1);\n} else {\nreturn cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$5(rdr,ch__$1,(16),(4),true);\n}\n\nbreak;\ndefault:\nif(cljs.tools.reader.impl.utils.numeric_QMARK_(ch)){\nvar ch__$1 \x3d cljs.tools.reader.read_unicode_char.cljs$core$IFn$_invoke$arity$5(rdr,ch,(8),(3),false);\nif(((ch__$1 | (0)) \x3e (255))){\nreturn cljs.tools.reader.impl.errors.throw_bad_octal_number(rdr);\n} else {\nreturn ch__$1;\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_escape_char(rdr,ch);\n}\n\n}\n});\ncljs.tools.reader.read_string_STAR_ \x3d (function cljs$tools$reader$read_string_STAR_(reader,_,opts,pending_forms){\nvar sb \x3d (new goog.string.StringBuffer());\nvar ch \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nwhile(true){\nif((ch \x3d\x3d null)){\nreturn cljs.tools.reader.impl.errors.throw_eof_reading.cljs$core$IFn$_invoke$arity$variadic(reader,new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\\x22\x22,sb], 0));\n} else {\nvar G__40420 \x3d ch;\nswitch (G__40420) {\ncase \x22\\\\\x22:\nvar G__40647 \x3d (function (){var G__40421 \x3d sb;\nG__40421.append(cljs.tools.reader.escape_char(sb,reader));\n\nreturn G__40421;\n})();\nvar G__40648 \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nsb \x3d G__40647;\nch \x3d G__40648;\ncontinue;\n\nbreak;\ncase \x22\\\x22\x22:\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n\nbreak;\ndefault:\nvar G__40649 \x3d (function (){var G__40422 \x3d sb;\nG__40422.append(ch);\n\nreturn G__40422;\n})();\nvar G__40650 \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nsb \x3d G__40649;\nch \x3d G__40650;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.tools.reader.loc_info \x3d (function cljs$tools$reader$loc_info(rdr,line,column){\nif((line \x3d\x3d null)){\nreturn null;\n} else {\nvar file \x3d cljs.tools.reader.reader_types.get_file_name(rdr);\nvar filem \x3d (((file \x3d\x3d null))?null:new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file], null));\nvar vec__40423 \x3d cljs.tools.reader.ending_line_col_info(rdr);\nvar end_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40423,(0),null);\nvar end_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40423,(1),null);\nvar lcm \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column,new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),end_line,new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),end_column], null);\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([filem,lcm], 0));\n}\n});\ncljs.tools.reader.read_symbol \x3d (function cljs$tools$reader$read_symbol(rdr,initch){\nvar vec__40430 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40430,(0),null);\nvar column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40430,(1),null);\nvar token \x3d cljs.tools.reader.read_token(rdr,new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696),initch);\nif((token \x3d\x3d null)){\nreturn null;\n} else {\nvar G__40433 \x3d token;\nswitch (G__40433) {\ncase \x22nil\x22:\nreturn null;\n\nbreak;\ncase \x22true\x22:\nreturn true;\n\nbreak;\ncase \x22false\x22:\nreturn false;\n\nbreak;\ncase \x22/\x22:\nreturn new cljs.core.Symbol(null,\x22/\x22,\x22/\x22,-1371932971,null);\n\nbreak;\ndefault:\nvar p \x3d cljs.tools.reader.impl.commons.parse_symbol(token);\nif((!((p \x3d\x3d null)))){\nvar sym \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(p.cljs$core$IIndexed$_nth$arity$2(null,(0)),p.cljs$core$IIndexed$_nth$arity$2(null,(1)));\nreturn sym.cljs$core$IWithMeta$_with_meta$arity$2(null,cljs.tools.reader.loc_info(rdr,line,column));\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid(rdr,new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696),token);\n}\n\n}\n}\n});\n/**\n * Map from ns alias to ns, if non-nil, it will be used to resolve read-time\n * ns aliases.\n * \n * Defaults to nil\n */\ncljs.tools.reader._STAR_alias_map_STAR_ \x3d null;\ncljs.tools.reader.resolve_alias \x3d (function cljs$tools$reader$resolve_alias(sym){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.tools.reader._STAR_alias_map_STAR_,sym);\n});\ncljs.tools.reader.resolve_ns \x3d (function cljs$tools$reader$resolve_ns(sym){\nvar or__4160__auto__ \x3d cljs.tools.reader.resolve_alias(sym);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.find_ns(sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ns \x3d temp__5753__auto__;\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.ns_name(ns));\n} else {\nreturn null;\n}\n}\n});\ncljs.tools.reader.read_keyword \x3d (function cljs$tools$reader$read_keyword(reader,initch,opts,pending_forms){\nvar ch \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif((!(cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)))){\nvar token \x3d cljs.tools.reader.read_token(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),ch);\nvar s \x3d cljs.tools.reader.impl.commons.parse_symbol(token);\nif((!((s \x3d\x3d null)))){\nvar ns \x3d s.cljs$core$IIndexed$_nth$arity$2(null,(0));\nvar name \x3d s.cljs$core$IIndexed$_nth$arity$2(null,(1));\nif((\x22:\x22 \x3d\x3d\x3d token.charAt((0)))){\nif((!((ns \x3d\x3d null)))){\nvar temp__5751__auto__ \x3d cljs.tools.reader.resolve_alias(cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(ns,(1))));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns__$1 \x3d temp__5751__auto__;\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns__$1),name);\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),[\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(token)].join(\x27\x27));\n}\n} else {\nvar temp__5751__auto__ \x3d cljs.core._STAR_ns_STAR_;\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns__$1 \x3d temp__5751__auto__;\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns__$1),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(name,(1)));\n} else {\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(reader,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Invalid token: :\x22,token], 0));\n}\n}\n} else {\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(ns,name);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),[\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(token)].join(\x27\x27));\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_single_colon(reader);\n}\n});\n/**\n * Returns a function which wraps a reader in a call to sym\n */\ncljs.tools.reader.wrapping_reader \x3d (function cljs$tools$reader$wrapping_reader(sym){\nreturn (function (rdr,_,opts,pending_forms){\nreturn (new cljs.core.List(null,sym,(new cljs.core.List(null,(cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms)),null,(1),null)),(2),null));\n});\n});\n/**\n * Read metadata and return the following object with the metadata applied\n */\ncljs.tools.reader.read_meta \x3d (function cljs$tools$reader$read_meta(rdr,_,opts,pending_forms){\nif(((cljs.tools.reader.reader_types.source_logging_reader_QMARK_(rdr)) \x26\x26 ((!(cljs.tools.reader.impl.utils.whitespace_QMARK_(cljs.tools.reader.reader_types.peek_char(rdr))))))){\nreturn cljs.tools.reader.reader_types.log_source_STAR_(rdr,(function (){\nvar vec__40443 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40443,(0),null);\nvar column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40443,(1),null);\nvar m \x3d cljs.tools.reader.impl.utils.desugar_meta((cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms)));\nif(cljs.core.map_QMARK_(m)){\n} else {\ncljs.tools.reader.impl.errors.throw_bad_metadata(rdr,m);\n}\n\nvar o \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IMeta$))))?true:false):false)){\nvar m__$1 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d line;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.seq_QMARK_(o);\n} else {\nreturn and__4149__auto__;\n}\n})())?cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(m,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column], 0)):m);\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IWithMeta$))))?true:false):false)){\nreturn cljs.core.with_meta(o,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.meta(o),m__$1], 0)));\n} else {\nreturn cljs.core.reset_meta_BANG_(o,m__$1);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_metadata_target(rdr,o);\n}\n}));\n} else {\nvar vec__40450 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40450,(0),null);\nvar column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40450,(1),null);\nvar m \x3d cljs.tools.reader.impl.utils.desugar_meta((cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms)));\nif(cljs.core.map_QMARK_(m)){\n} else {\ncljs.tools.reader.impl.errors.throw_bad_metadata(rdr,m);\n}\n\nvar o \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IMeta$))))?true:false):false)){\nvar m__$1 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d line;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.seq_QMARK_(o);\n} else {\nreturn and__4149__auto__;\n}\n})())?cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(m,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column], 0)):m);\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IWithMeta$))))?true:false):false)){\nreturn cljs.core.with_meta(o,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.meta(o),m__$1], 0)));\n} else {\nreturn cljs.core.reset_meta_BANG_(o,m__$1);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_metadata_target(rdr,o);\n}\n}\n});\ncljs.tools.reader.read_set \x3d (function cljs$tools$reader$read_set(rdr,_,opts,pending_forms){\nvar vec__40460 \x3d cljs.tools.reader.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40460,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40460,(1),null);\nvar start_column__$1 \x3d (cljs.core.truth_(start_column)?((start_column - (1)) | (0)):null);\nvar coll \x3d cljs.tools.reader.read_delimited(new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),\x22}\x22,rdr,opts,pending_forms);\nvar the_set \x3d cljs.core.set(coll);\nvar vec__40463 \x3d cljs.tools.reader.ending_line_col_info(rdr);\nvar end_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40463,(0),null);\nvar end_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40463,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(coll),cljs.core.count(the_set))){\n} else {\ncljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.tools.reader.impl.errors.throw_dup_keys(rdr,new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),coll)], 0));\n}\n\nreturn cljs.core.with_meta(the_set,(cljs.core.truth_(start_line)?cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var temp__5753__auto__ \x3d cljs.tools.reader.reader_types.get_file_name(rdr);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar file \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file], null);\n} else {\nreturn null;\n}\n})(),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),start_line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),start_column__$1,new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),end_line,new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),end_column], null)], 0)):null));\n});\n/**\n * Read and discard the first object from rdr\n */\ncljs.tools.reader.read_discard \x3d (function cljs$tools$reader$read_discard(rdr,_,opts,pending_forms){\nvar G__40467 \x3d rdr;\n(cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(G__40467,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,G__40467,true,null,opts,pending_forms));\n\nreturn G__40467;\n});\ncljs.tools.reader.read_symbolic_value \x3d (function cljs$tools$reader$read_symbolic_value(rdr,_,opts,pending_forms){\nvar sym \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nvar G__40469 \x3d sym;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22NaN\x22,\x22NaN\x22,666918153,null),G__40469)){\nreturn Number.NaN;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22-Inf\x22,\x22-Inf\x22,-2123243689,null),G__40469)){\nreturn Number.NEGATIVE_INFINITY;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22Inf\x22,\x22Inf\x22,647172781,null),G__40469)){\nreturn Number.POSITIVE_INFINITY;\n} else {\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22Invalid token: ##\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)].join(\x27\x27)], 0));\n\n}\n}\n}\n});\ncljs.tools.reader.RESERVED_FEATURES \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146),null,new cljs.core.Keyword(null,\x22none\x22,\x22none\x22,1333468478),null], null), null);\ncljs.tools.reader.has_feature_QMARK_ \x3d (function cljs$tools$reader$has_feature_QMARK_(rdr,feature,opts){\nif((feature instanceof cljs.core.Keyword)){\nreturn ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),feature)) || (cljs.core.contains_QMARK_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336)),feature)));\n} else {\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Feature should be a keyword: \x22,feature], 0));\n}\n});\ncljs.tools.reader.check_eof_error \x3d (function cljs$tools$reader$check_eof_error(form,rdr,first_line){\nif((form \x3d\x3d\x3d cljs.tools.reader.READ_EOF)){\nreturn cljs.tools.reader.impl.errors.throw_eof_error(rdr,(((first_line \x3c (0)))?first_line:false));\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.check_reserved_features \x3d (function cljs$tools$reader$check_reserved_features(rdr,form){\nif(cljs.core.truth_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.tools.reader.RESERVED_FEATURES,form))){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Feature name \x22,form,\x22 is reserved\x22], 0));\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.check_invalid_read_cond \x3d (function cljs$tools$reader$check_invalid_read_cond(form,rdr,first_line){\nif((form \x3d\x3d\x3d cljs.tools.reader.READ_FINISHED)){\nif((first_line \x3c (0))){\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22read-cond requires an even number of forms\x22], 0));\n} else {\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22read-cond starting on line \x22,first_line,\x22 requires an even number of forms\x22], 0));\n}\n} else {\nreturn null;\n}\n});\n/**\n * Read next form and suppress. Return nil or READ_FINISHED.\n */\ncljs.tools.reader.read_suppress \x3d (function cljs$tools$reader$read_suppress(first_line,rdr,opts,pending_forms){\nvar _STAR_suppress_read_STAR__orig_val__40477 \x3d cljs.tools.reader._STAR_suppress_read_STAR_;\nvar _STAR_suppress_read_STAR__temp_val__40478 \x3d true;\n(cljs.tools.reader._STAR_suppress_read_STAR_ \x3d _STAR_suppress_read_STAR__temp_val__40478);\n\ntry{var form \x3d (function (){var G__40479 \x3d rdr;\nvar G__40480 \x3d false;\nvar G__40481 \x3d cljs.tools.reader.READ_EOF;\nvar G__40482 \x3d \x22)\x22;\nvar G__40483 \x3d opts;\nvar G__40484 \x3d pending_forms;\nreturn (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(G__40479,G__40480,G__40481,G__40482,G__40483,G__40484) : cljs.tools.reader.read_STAR_.call(null,G__40479,G__40480,G__40481,G__40482,G__40483,G__40484));\n})();\ncljs.tools.reader.check_eof_error(form,rdr,first_line);\n\nif((form \x3d\x3d\x3d cljs.tools.reader.READ_FINISHED)){\nreturn cljs.tools.reader.READ_FINISHED;\n} else {\nreturn null;\n}\n}finally {(cljs.tools.reader._STAR_suppress_read_STAR_ \x3d _STAR_suppress_read_STAR__orig_val__40477);\n}});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.tools.reader.NO_MATCH !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.tools.reader.NO_MATCH \x3d (new Object());\n}\n/**\n * Read next feature. If matched, read next form and return.\n * Otherwise, read and skip next form, returning READ_FINISHED or nil.\n */\ncljs.tools.reader.match_feature \x3d (function cljs$tools$reader$match_feature(first_line,rdr,opts,pending_forms){\nvar feature \x3d (function (){var G__40486 \x3d rdr;\nvar G__40487 \x3d false;\nvar G__40488 \x3d cljs.tools.reader.READ_EOF;\nvar G__40489 \x3d \x22)\x22;\nvar G__40490 \x3d opts;\nvar G__40491 \x3d pending_forms;\nreturn (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(G__40486,G__40487,G__40488,G__40489,G__40490,G__40491) : cljs.tools.reader.read_STAR_.call(null,G__40486,G__40487,G__40488,G__40489,G__40490,G__40491));\n})();\ncljs.tools.reader.check_eof_error(feature,rdr,first_line);\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(feature,cljs.tools.reader.READ_FINISHED)){\nreturn cljs.tools.reader.READ_FINISHED;\n} else {\ncljs.tools.reader.check_reserved_features(rdr,feature);\n\nif(cljs.tools.reader.has_feature_QMARK_(rdr,feature,opts)){\nvar G__40493 \x3d (function (){var G__40494 \x3d rdr;\nvar G__40495 \x3d false;\nvar G__40496 \x3d cljs.tools.reader.READ_EOF;\nvar G__40497 \x3d \x22)\x22;\nvar G__40498 \x3d opts;\nvar G__40499 \x3d pending_forms;\nreturn (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(G__40494,G__40495,G__40496,G__40497,G__40498,G__40499) : cljs.tools.reader.read_STAR_.call(null,G__40494,G__40495,G__40496,G__40497,G__40498,G__40499));\n})();\ncljs.tools.reader.check_eof_error(G__40493,rdr,first_line);\n\ncljs.tools.reader.check_invalid_read_cond(G__40493,rdr,first_line);\n\nreturn G__40493;\n} else {\nvar or__4160__auto__ \x3d cljs.tools.reader.read_suppress(first_line,rdr,opts,pending_forms);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.tools.reader.NO_MATCH;\n}\n}\n}\n});\ncljs.tools.reader.read_cond_delimited \x3d (function cljs$tools$reader$read_cond_delimited(rdr,splicing,opts,pending_forms){\nvar first_line \x3d ((cljs.tools.reader.reader_types.indexing_reader_QMARK_(rdr))?cljs.tools.reader.reader_types.get_line_number(rdr):(-1));\nvar result \x3d (function (){var matched \x3d cljs.tools.reader.NO_MATCH;\nvar finished \x3d null;\nwhile(true){\nif((matched \x3d\x3d\x3d cljs.tools.reader.NO_MATCH)){\nvar match \x3d cljs.tools.reader.match_feature(first_line,rdr,opts,pending_forms);\nif((match \x3d\x3d\x3d cljs.tools.reader.READ_FINISHED)){\nreturn cljs.tools.reader.READ_FINISHED;\n} else {\nvar G__40678 \x3d match;\nvar G__40679 \x3d null;\nmatched \x3d G__40678;\nfinished \x3d G__40679;\ncontinue;\n}\n} else {\nif((!((finished \x3d\x3d\x3d cljs.tools.reader.READ_FINISHED)))){\nvar G__40681 \x3d matched;\nvar G__40682 \x3d cljs.tools.reader.read_suppress(first_line,rdr,opts,pending_forms);\nmatched \x3d G__40681;\nfinished \x3d G__40682;\ncontinue;\n} else {\nreturn matched;\n\n}\n}\nbreak;\n}\n})();\nif((result \x3d\x3d\x3d cljs.tools.reader.READ_FINISHED)){\nreturn rdr;\n} else {\nif(cljs.core.truth_(splicing)){\nif((((!((result \x3d\x3d null))))?(((((result.cljs$lang$protocol_mask$partition0$ \x26 (16777216))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d result.cljs$core$ISequential$))))?true:false):false)){\ngoog.array.insertArrayAt(pending_forms,cljs.core.to_array(result),(0));\n\nreturn rdr;\n} else {\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Spliced form list in read-cond-splicing must implement ISequential\x22], 0));\n}\n} else {\nreturn result;\n}\n}\n});\ncljs.tools.reader.read_cond \x3d (function cljs$tools$reader$read_cond(rdr,_,opts,pending_forms){\nif(cljs.core.not((function (){var and__4149__auto__ \x3d opts;\nif(cljs.core.truth_(and__4149__auto__)){\nvar G__40505 \x3d new cljs.core.Keyword(null,\x22read-cond\x22,\x22read-cond\x22,1056899244).cljs$core$IFn$_invoke$arity$1(opts);\nvar fexpr__40504 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22preserve\x22,\x22preserve\x22,1276846509),null,new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745),null], null), null);\nreturn (fexpr__40504.cljs$core$IFn$_invoke$arity$1 ? fexpr__40504.cljs$core$IFn$_invoke$arity$1(G__40505) : fexpr__40504.call(null,G__40505));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Conditional read not allowed\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22runtime-exception\x22,\x22runtime-exception\x22,-1495664514)], null));\n} else {\n}\n\nvar temp__5751__auto__ \x3d rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ch \x3d temp__5751__auto__;\nvar splicing \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ch,\x22@\x22);\nvar ch__$1 \x3d ((splicing)?rdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null):ch);\nif(splicing){\nif(cljs.core.truth_(cljs.tools.reader._STAR_read_delim_STAR_)){\n} else {\ncljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22cond-splice not in list\x22], 0));\n}\n} else {\n}\n\nvar temp__5751__auto____$1 \x3d ((cljs.tools.reader.impl.utils.whitespace_QMARK_(ch__$1))?cljs.tools.reader.impl.commons.read_past(cljs.tools.reader.impl.utils.whitespace_QMARK_,rdr):ch__$1);\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar ch__$2 \x3d temp__5751__auto____$1;\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(ch__$2,\x22(\x22)){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22read-cond body must be a list\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22runtime-exception\x22,\x22runtime-exception\x22,-1495664514)], null));\n} else {\nvar _STAR_suppress_read_STAR__orig_val__40506 \x3d cljs.tools.reader._STAR_suppress_read_STAR_;\nvar _STAR_suppress_read_STAR__temp_val__40507 \x3d (function (){var or__4160__auto__ \x3d cljs.tools.reader._STAR_suppress_read_STAR_;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22preserve\x22,\x22preserve\x22,1276846509),new cljs.core.Keyword(null,\x22read-cond\x22,\x22read-cond\x22,1056899244).cljs$core$IFn$_invoke$arity$1(opts));\n}\n})();\n(cljs.tools.reader._STAR_suppress_read_STAR_ \x3d _STAR_suppress_read_STAR__temp_val__40507);\n\ntry{if(cljs.core.truth_(cljs.tools.reader._STAR_suppress_read_STAR_)){\nreturn cljs.tools.reader.impl.utils.reader_conditional(cljs.tools.reader.read_list(rdr,ch__$2,opts,pending_forms),splicing);\n} else {\nreturn cljs.tools.reader.read_cond_delimited(rdr,splicing,opts,pending_forms);\n}\n}finally {(cljs.tools.reader._STAR_suppress_read_STAR_ \x3d _STAR_suppress_read_STAR__orig_val__40506);\n}}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_eof_in_character(rdr);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_eof_in_character(rdr);\n}\n});\ncljs.tools.reader.arg_env \x3d null;\n/**\n * Get a symbol for an anonymous ?argument?\n */\ncljs.tools.reader.garg \x3d (function cljs$tools$reader$garg(n){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([((((-1) \x3d\x3d\x3d n))?\x22rest\x22:[\x22p\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n)].join(\x27\x27)),\x22__\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.impl.utils.next_id()),\x22#\x22].join(\x27\x27));\n});\ncljs.tools.reader.read_fn \x3d (function cljs$tools$reader$read_fn(rdr,_,opts,pending_forms){\nif(cljs.core.truth_(cljs.tools.reader.arg_env)){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Nested #()s are not allowed\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22illegal-state\x22,\x22illegal-state\x22,-1519851182)], null));\n} else {\n}\n\nvar arg_env_orig_val__40511 \x3d cljs.tools.reader.arg_env;\nvar arg_env_temp_val__40512 \x3d cljs.core.sorted_map();\n(cljs.tools.reader.arg_env \x3d arg_env_temp_val__40512);\n\ntry{var form \x3d (function (){var G__40513 \x3d (function (){var G__40518 \x3d rdr;\ncljs.tools.reader.reader_types.unread(G__40518,\x22(\x22);\n\nreturn G__40518;\n})();\nvar G__40514 \x3d true;\nvar G__40515 \x3d null;\nvar G__40516 \x3d opts;\nvar G__40517 \x3d pending_forms;\nreturn (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(G__40513,G__40514,G__40515,G__40516,G__40517) : cljs.tools.reader.read_STAR_.call(null,G__40513,G__40514,G__40515,G__40516,G__40517));\n})();\nvar rargs \x3d cljs.core.rseq(cljs.tools.reader.arg_env);\nvar args \x3d ((rargs)?(function (){var higharg \x3d cljs.core.key(cljs.core.first(rargs));\nvar args \x3d (function (){var i \x3d (1);\nvar args \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nif((i \x3e higharg)){\nreturn cljs.core.persistent_BANG_(args);\n} else {\nvar G__40717 \x3d (i + (1));\nvar G__40718 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(args,(function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.tools.reader.arg_env,i);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.tools.reader.garg(i);\n}\n})());\ni \x3d G__40717;\nargs \x3d G__40718;\ncontinue;\n}\nbreak;\n}\n})();\nvar args__$1 \x3d (cljs.core.truth_(cljs.tools.reader.arg_env.call(null,(-1)))?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(args,new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.tools.reader.arg_env.call(null,(-1))], 0)):args);\nreturn args__$1;\n})():cljs.core.PersistentVector.EMPTY);\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),(new cljs.core.List(null,args,(new cljs.core.List(null,form,null,(1),null)),(2),null)),(3),null));\n}finally {(cljs.tools.reader.arg_env \x3d arg_env_orig_val__40511);\n}});\n/**\n * Registers an argument to the arg-env\n */\ncljs.tools.reader.register_arg \x3d (function cljs$tools$reader$register_arg(n){\nif(cljs.core.truth_(cljs.tools.reader.arg_env)){\nvar temp__5751__auto__ \x3d cljs.tools.reader.arg_env.call(null,n);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ret \x3d temp__5751__auto__;\nreturn ret;\n} else {\nvar g \x3d cljs.tools.reader.garg(n);\n(cljs.tools.reader.arg_env \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.tools.reader.arg_env,n,g));\n\nreturn g;\n}\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Arg literal not in #()\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22illegal-state\x22,\x22illegal-state\x22,-1519851182)], null));\n}\n});\ncljs.tools.reader.read_arg \x3d (function cljs$tools$reader$read_arg(rdr,pct,opts,pending_forms){\nif((cljs.tools.reader.arg_env \x3d\x3d null)){\nreturn cljs.tools.reader.read_symbol(rdr,pct);\n} else {\nvar ch \x3d rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\nif(((cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)) || (cljs.tools.reader.macro_terminating_QMARK_(ch)) || ((ch \x3d\x3d null)))){\nreturn cljs.tools.reader.register_arg((1));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ch,\x22\x26\x22)){\nrdr.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn cljs.tools.reader.register_arg((-1));\n} else {\nvar n \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nif((!(cljs.core.integer_QMARK_(n)))){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Arg literal must be %, %\x26 or %integer\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22illegal-state\x22,\x22illegal-state\x22,-1519851182)], null));\n} else {\nreturn cljs.tools.reader.register_arg(n);\n}\n\n}\n}\n}\n});\ncljs.tools.reader.gensym_env \x3d null;\ncljs.tools.reader.read_unquote \x3d (function cljs$tools$reader$read_unquote(rdr,comma,opts,pending_forms){\nvar temp__5751__auto__ \x3d rdr.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ch \x3d temp__5751__auto__;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22@\x22,ch)){\nreturn cljs.tools.reader.wrapping_reader(new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote-splicing\x22,\x22clojure.core/unquote-splicing\x22,-552003150,null))((function (){var G__40524 \x3d rdr;\nG__40524.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn G__40524;\n})(),\x22@\x22,opts,pending_forms);\n} else {\nreturn cljs.tools.reader.wrapping_reader(new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote\x22,\x22clojure.core/unquote\x22,843087510,null))(rdr,\x22~\x22,opts,pending_forms);\n}\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.unquote_splicing_QMARK_ \x3d (function cljs$tools$reader$unquote_splicing_QMARK_(form){\nreturn ((cljs.core.seq_QMARK_(form)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(form),new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote-splicing\x22,\x22clojure.core/unquote-splicing\x22,-552003150,null))));\n});\ncljs.tools.reader.unquote_QMARK_ \x3d (function cljs$tools$reader$unquote_QMARK_(form){\nreturn ((cljs.core.seq_QMARK_(form)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(form),new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote\x22,\x22clojure.core/unquote\x22,843087510,null))));\n});\n/**\n * Expand a list by resolving its syntax quotes and unquotes\n */\ncljs.tools.reader.expand_list \x3d (function cljs$tools$reader$expand_list(s){\nvar s__$1 \x3d cljs.core.seq(s);\nvar r \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nif(s__$1){\nvar item \x3d cljs.core.first(s__$1);\nvar ret \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(r,((cljs.tools.reader.unquote_QMARK_(item))?(new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22list\x22,\x22clojure.core/list\x22,-1119203325,null),(new cljs.core.List(null,cljs.core.second(item),null,(1),null)),(2),null)):((cljs.tools.reader.unquote_splicing_QMARK_(item))?cljs.core.second(item):(new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22list\x22,\x22clojure.core/list\x22,-1119203325,null),(new cljs.core.List(null,(cljs.tools.reader.syntax_quote_STAR_.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.syntax_quote_STAR_.cljs$core$IFn$_invoke$arity$1(item) : cljs.tools.reader.syntax_quote_STAR_.call(null,item)),null,(1),null)),(2),null))\n)));\nvar G__40745 \x3d cljs.core.next(s__$1);\nvar G__40746 \x3d ret;\ns__$1 \x3d G__40745;\nr \x3d G__40746;\ncontinue;\n} else {\nreturn cljs.core.seq(cljs.core.persistent_BANG_(r));\n}\nbreak;\n}\n});\n/**\n * Flatten a map into a seq of alternate keys and values\n */\ncljs.tools.reader.flatten_map \x3d (function cljs$tools$reader$flatten_map(form){\nvar s \x3d cljs.core.seq(form);\nvar key_vals \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nif(s){\nvar e \x3d cljs.core.first(s);\nvar G__40748 \x3d cljs.core.next(s);\nvar G__40749 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(key_vals,cljs.core.key(e)),cljs.core.val(e));\ns \x3d G__40748;\nkey_vals \x3d G__40749;\ncontinue;\n} else {\nreturn cljs.core.seq(cljs.core.persistent_BANG_(key_vals));\n}\nbreak;\n}\n});\ncljs.tools.reader.register_gensym \x3d (function cljs$tools$reader$register_gensym(sym){\nif(cljs.core.not(cljs.tools.reader.gensym_env)){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Gensym literal not in syntax-quote\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22illegal-state\x22,\x22illegal-state\x22,-1519851182)], null));\n} else {\n}\n\nvar or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.tools.reader.gensym_env,sym);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar gs \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([cljs.core.subs.cljs$core$IFn$_invoke$arity$3(cljs.core.name(sym),(0),(((cljs.core.name(sym)).length) - (1))),\x22__\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.impl.utils.next_id()),\x22__auto__\x22].join(\x27\x27));\n(cljs.tools.reader.gensym_env \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.tools.reader.gensym_env,sym,gs));\n\nreturn gs;\n}\n});\ncljs.tools.reader.add_meta \x3d (function cljs$tools$reader$add_meta(form,ret){\nif((((((!((form \x3d\x3d null))))?(((((form.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d form.cljs$core$IWithMeta$))))?true:false):false))?cljs.core.seq(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(cljs.core.meta(form),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539)], 0))):false)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22with-meta\x22,\x22cljs.core/with-meta\x22,749126446,null),(new cljs.core.List(null,ret,(new cljs.core.List(null,(function (){var G__40542 \x3d cljs.core.meta(form);\nreturn (cljs.tools.reader.syntax_quote_STAR_.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.syntax_quote_STAR_.cljs$core$IFn$_invoke$arity$1(G__40542) : cljs.tools.reader.syntax_quote_STAR_.call(null,G__40542));\n})(),null,(1),null)),(2),null)),(3),null));\n} else {\nreturn ret;\n}\n});\ncljs.tools.reader.syntax_quote_coll \x3d (function cljs$tools$reader$syntax_quote_coll(type,coll){\nvar res \x3d (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22sequence\x22,\x22cljs.core/sequence\x22,1908459032,null),(new cljs.core.List(null,cljs.core.cons(new cljs.core.Symbol(\x22cljs.core\x22,\x22concat\x22,\x22cljs.core/concat\x22,-1133584918,null),cljs.tools.reader.expand_list(coll)),null,(1),null)),(2),null));\nif(cljs.core.truth_(type)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22apply\x22,\x22cljs.core/apply\x22,1757277831,null),(new cljs.core.List(null,type,(new cljs.core.List(null,res,null,(1),null)),(2),null)),(3),null));\n} else {\nreturn res;\n}\n});\n/**\n * Decide which map type to use, array-map if less than 16 elements\n */\ncljs.tools.reader.map_func \x3d (function cljs$tools$reader$map_func(coll){\nif((cljs.core.count(coll) \x3e\x3d (16))){\nreturn new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-map\x22,\x22cljs.core/hash-map\x22,303385767,null);\n} else {\nreturn new cljs.core.Symbol(\x22cljs.core\x22,\x22array-map\x22,\x22cljs.core/array-map\x22,-1519210683,null);\n}\n});\ncljs.tools.reader.bool_QMARK_ \x3d (function cljs$tools$reader$bool_QMARK_(x){\nreturn (((x instanceof Boolean)) || (x \x3d\x3d\x3d true) || (x \x3d\x3d\x3d false));\n});\n/**\n * Resolve a symbol s into its fully qualified namespace version\n */\ncljs.tools.reader.resolve_symbol \x3d (function cljs$tools$reader$resolve_symbol(s){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22resolve-symbol is not implemented\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22sym\x22,\x22sym\x22,-1444860305),s], null));\n});\ncljs.tools.reader.syntax_quote_STAR_ \x3d (function cljs$tools$reader$syntax_quote_STAR_(form){\nreturn cljs.tools.reader.add_meta(form,((cljs.core.special_symbol_QMARK_(form))?(new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,form,null,(1),null)),(2),null)):(((form instanceof cljs.core.Symbol))?(new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,(cljs.core.truth_(((cljs.core.not(cljs.core.namespace(form)))?goog.string.endsWith(cljs.core.name(form),\x22#\x22):false))?cljs.tools.reader.register_gensym(form):(function (){var sym \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(form);\nif(cljs.core.truth_(goog.string.endsWith(sym,\x22.\x22))){\nvar csym \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(sym,(0),(((sym).length) - (1))));\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.resolve_symbol.call(null,csym)),\x22.\x22].join(\x27\x27));\n} else {\nreturn cljs.tools.reader.resolve_symbol.call(null,form);\n}\n})()),null,(1),null)),(2),null)):((cljs.tools.reader.unquote_QMARK_(form))?cljs.core.second(form):((cljs.tools.reader.unquote_splicing_QMARK_(form))?(function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22unquote-splice not in list\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22illegal-state\x22,\x22illegal-state\x22,-1519851182)], null))})():((cljs.core.coll_QMARK_(form))?(((((!((form \x3d\x3d null))))?(((((form.cljs$lang$protocol_mask$partition0$ \x26 (67108864))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d form.cljs$core$IRecord$))))?true:false):false))?form:((cljs.core.map_QMARK_(form))?cljs.tools.reader.syntax_quote_coll(cljs.tools.reader.map_func(form),cljs.tools.reader.flatten_map(form)):((cljs.core.vector_QMARK_(form))?(new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22vec\x22,\x22cljs.core/vec\x22,307622519,null),(new cljs.core.List(null,cljs.tools.reader.syntax_quote_coll(null,form),null,(1),null)),(2),null)):((cljs.core.set_QMARK_(form))?cljs.tools.reader.syntax_quote_coll(new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-set\x22,\x22cljs.core/hash-set\x22,1130426749,null),form):((((cljs.core.seq_QMARK_(form)) || (cljs.core.list_QMARK_(form))))?(function (){var seq \x3d cljs.core.seq(form);\nif(seq){\nreturn cljs.tools.reader.syntax_quote_coll(null,seq);\n} else {\nreturn cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22list\x22,\x22cljs.core/list\x22,-1331406371,null));\n}\n})():(function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Unknown Collection type\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22unsupported-operation\x22,\x22unsupported-operation\x22,1890540953)], null))})()\n))))):(((((form instanceof cljs.core.Keyword)) || (typeof form \x3d\x3d\x3d \x27number\x27) || (typeof form \x3d\x3d\x3d \x27string\x27) || ((form \x3d\x3d null)) || (cljs.tools.reader.bool_QMARK_(form)) || ((form instanceof RegExp))))?form:(new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,form,null,(1),null)),(2),null))\n)))))));\n});\ncljs.tools.reader.read_syntax_quote \x3d (function cljs$tools$reader$read_syntax_quote(rdr,backquote,opts,pending_forms){\nvar gensym_env_orig_val__40551 \x3d cljs.tools.reader.gensym_env;\nvar gensym_env_temp_val__40552 \x3d cljs.core.PersistentArrayMap.EMPTY;\n(cljs.tools.reader.gensym_env \x3d gensym_env_temp_val__40552);\n\ntry{return cljs.tools.reader.syntax_quote_STAR_((cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms)));\n}finally {(cljs.tools.reader.gensym_env \x3d gensym_env_orig_val__40551);\n}});\ncljs.tools.reader.read_namespaced_map \x3d (function cljs$tools$reader$read_namespaced_map(rdr,_,opts,pending_forms){\nvar token \x3d cljs.tools.reader.read_token(rdr,new cljs.core.Keyword(null,\x22namespaced-map\x22,\x22namespaced-map\x22,1235665380),cljs.tools.reader.reader_types.read_char(rdr));\nvar temp__5751__auto__ \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(token,\x22:\x22))?cljs.core.ns_name(cljs.core._STAR_ns_STAR_):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22:\x22,cljs.core.first(token)))?(function (){var G__40554 \x3d token;\nvar G__40554__$1 \x3d (((G__40554 \x3d\x3d null))?null:cljs.core.subs.cljs$core$IFn$_invoke$arity$2(G__40554,(1)));\nvar G__40554__$2 \x3d (((G__40554__$1 \x3d\x3d null))?null:cljs.tools.reader.impl.commons.parse_symbol(G__40554__$1));\nvar G__40554__$3 \x3d (((G__40554__$2 \x3d\x3d null))?null:cljs.tools.reader.impl.utils.second_SINGLEQUOTE_(G__40554__$2));\nvar G__40554__$4 \x3d (((G__40554__$3 \x3d\x3d null))?null:cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(G__40554__$3));\nif((G__40554__$4 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.tools.reader.resolve_ns(G__40554__$4);\n}\n})():(function (){var G__40556 \x3d token;\nvar G__40556__$1 \x3d (((G__40556 \x3d\x3d null))?null:cljs.tools.reader.impl.commons.parse_symbol(G__40556));\nif((G__40556__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.tools.reader.impl.utils.second_SINGLEQUOTE_(G__40556__$1);\n}\n})()\n));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns \x3d temp__5751__auto__;\nvar ch \x3d cljs.tools.reader.impl.commons.read_past(cljs.tools.reader.impl.utils.whitespace_QMARK_,rdr);\nif((ch \x3d\x3d\x3d \x22{\x22)){\nvar items \x3d cljs.tools.reader.read_delimited(new cljs.core.Keyword(null,\x22namespaced-map\x22,\x22namespaced-map\x22,1235665380),\x22}\x22,rdr,opts,pending_forms);\nif(cljs.core.odd_QMARK_(cljs.core.count(items))){\ncljs.tools.reader.impl.errors.throw_odd_map(rdr,null,null,items);\n} else {\n}\n\nvar keys \x3d cljs.tools.reader.impl.utils.namespace_keys(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),items));\nvar vals \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),cljs.core.rest(items));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(cljs.core.set(keys)),cljs.core.count(keys))){\n} else {\ncljs.tools.reader.impl.errors.throw_dup_keys(rdr,new cljs.core.Keyword(null,\x22namespaced-map\x22,\x22namespaced-map\x22,1235665380),keys);\n}\n\nreturn cljs.core.zipmap(keys,vals);\n} else {\nreturn cljs.tools.reader.impl.errors.throw_ns_map_no_map(rdr,token);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_ns(rdr,token);\n}\n});\ncljs.tools.reader.macros \x3d (function cljs$tools$reader$macros(ch){\nvar G__40560 \x3d ch;\nswitch (G__40560) {\ncase \x22\\\x22\x22:\nreturn cljs.tools.reader.read_string_STAR_;\n\nbreak;\ncase \x22:\x22:\nreturn cljs.tools.reader.read_keyword;\n\nbreak;\ncase \x22;\x22:\nreturn cljs.tools.reader.impl.commons.read_comment;\n\nbreak;\ncase \x22\x27\x22:\nreturn cljs.tools.reader.wrapping_reader(new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null));\n\nbreak;\ncase \x22@\x22:\nreturn cljs.tools.reader.wrapping_reader(new cljs.core.Symbol(\x22clojure.core\x22,\x22deref\x22,\x22clojure.core/deref\x22,188719157,null));\n\nbreak;\ncase \x22^\x22:\nreturn cljs.tools.reader.read_meta;\n\nbreak;\ncase \x22`\x22:\nreturn cljs.tools.reader.read_syntax_quote;\n\nbreak;\ncase \x22~\x22:\nreturn cljs.tools.reader.read_unquote;\n\nbreak;\ncase \x22(\x22:\nreturn cljs.tools.reader.read_list;\n\nbreak;\ncase \x22)\x22:\nreturn cljs.tools.reader.read_unmatched_delimiter;\n\nbreak;\ncase \x22[\x22:\nreturn cljs.tools.reader.read_vector;\n\nbreak;\ncase \x22]\x22:\nreturn cljs.tools.reader.read_unmatched_delimiter;\n\nbreak;\ncase \x22{\x22:\nreturn cljs.tools.reader.read_map;\n\nbreak;\ncase \x22}\x22:\nreturn cljs.tools.reader.read_unmatched_delimiter;\n\nbreak;\ncase \x22\\\\\x22:\nreturn cljs.tools.reader.read_char_STAR_;\n\nbreak;\ncase \x22%\x22:\nreturn cljs.tools.reader.read_arg;\n\nbreak;\ncase \x22#\x22:\nreturn cljs.tools.reader.read_dispatch;\n\nbreak;\ndefault:\nreturn null;\n\n}\n});\ncljs.tools.reader.dispatch_macros \x3d (function cljs$tools$reader$dispatch_macros(ch){\nvar G__40561 \x3d ch;\nswitch (G__40561) {\ncase \x22^\x22:\nreturn cljs.tools.reader.read_meta;\n\nbreak;\ncase \x22\x27\x22:\nreturn cljs.tools.reader.wrapping_reader(new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null));\n\nbreak;\ncase \x22(\x22:\nreturn cljs.tools.reader.read_fn;\n\nbreak;\ncase \x22{\x22:\nreturn cljs.tools.reader.read_set;\n\nbreak;\ncase \x22\x3c\x22:\nreturn cljs.tools.reader.impl.commons.throwing_reader(\x22Unreadable form\x22);\n\nbreak;\ncase \x22\x3d\x22:\nreturn cljs.tools.reader.impl.commons.throwing_reader(\x22read-eval not supported\x22);\n\nbreak;\ncase \x22\\\x22\x22:\nreturn cljs.tools.reader.read_regex;\n\nbreak;\ncase \x22!\x22:\nreturn cljs.tools.reader.impl.commons.read_comment;\n\nbreak;\ncase \x22_\x22:\nreturn cljs.tools.reader.read_discard;\n\nbreak;\ncase \x22?\x22:\nreturn cljs.tools.reader.read_cond;\n\nbreak;\ncase \x22:\x22:\nreturn cljs.tools.reader.read_namespaced_map;\n\nbreak;\ncase \x22#\x22:\nreturn cljs.tools.reader.read_symbolic_value;\n\nbreak;\ndefault:\nreturn null;\n\n}\n});\ncljs.tools.reader.read_tagged \x3d (function cljs$tools$reader$read_tagged(rdr,initch,opts,pending_forms){\nvar tag \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nif((!((tag instanceof cljs.core.Symbol)))){\ncljs.tools.reader.impl.errors.throw_bad_reader_tag(rdr,tag);\n} else {\n}\n\nif(cljs.core.truth_(cljs.tools.reader._STAR_suppress_read_STAR_)){\nreturn cljs.core.tagged_literal(tag,(cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms)));\n} else {\nvar temp__5751__auto__ \x3d (function (){var or__4160__auto__ \x3d cljs.tools.reader._STAR_data_readers_STAR_.call(null,tag);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (cljs.tools.reader.default_data_readers.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.default_data_readers.cljs$core$IFn$_invoke$arity$1(tag) : cljs.tools.reader.default_data_readers.call(null,tag));\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar f \x3d temp__5751__auto__;\nvar G__40565 \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__40565) : f.call(null,G__40565));\n} else {\nvar temp__5751__auto____$1 \x3d cljs.tools.reader._STAR_default_data_reader_fn_STAR_;\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar f \x3d temp__5751__auto____$1;\nvar G__40568 \x3d tag;\nvar G__40569 \x3d (cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 ? cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5(rdr,true,null,opts,pending_forms) : cljs.tools.reader.read_STAR_.call(null,rdr,true,null,opts,pending_forms));\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__40568,G__40569) : f.call(null,G__40568,G__40569));\n} else {\nreturn cljs.tools.reader.impl.errors.throw_unknown_reader_tag(rdr,tag);\n}\n}\n}\n});\n/**\n * Map from reader tag symbols to data reader Vars.\n *   Reader tags without namespace qualifiers are reserved for Clojure.\n *   This light version of tools.reader has no implementation for default\n *   reader tags such as #inst and #uuid.\n */\ncljs.tools.reader._STAR_data_readers_STAR_ \x3d cljs.core.PersistentArrayMap.EMPTY;\n/**\n * When no data reader is found for a tag and *default-data-reader-fn*\n *   is non-nil, it will be called with two arguments, the tag and the value.\n *   If *default-data-reader-fn* is nil (the default value), an exception\n *   will be thrown for the unknown tag.\n */\ncljs.tools.reader._STAR_default_data_reader_fn_STAR_ \x3d null;\ncljs.tools.reader._STAR_suppress_read_STAR_ \x3d false;\n/**\n * Default map of data reader functions provided by Clojure.\n *   May be overridden by binding *data-readers*\n */\ncljs.tools.reader.default_data_readers \x3d cljs.core.PersistentArrayMap.EMPTY;\ncljs.tools.reader.read_STAR__internal \x3d (function cljs$tools$reader$read_STAR__internal(reader,eof_error_QMARK_,sentinel,return_on,opts,pending_forms){\nwhile(true){\nif(((cljs.tools.reader.reader_types.source_logging_reader_QMARK_(reader)) \x26\x26 ((!(cljs.tools.reader.impl.utils.whitespace_QMARK_(reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null))))))){\nreturn cljs.tools.reader.reader_types.log_source_STAR_(reader,(function (){\nwhile(true){\nif((!(goog.array.isEmpty(pending_forms)))){\nvar form \x3d (pending_forms[(0)]);\ngoog.array.removeAt(pending_forms,(0));\n\nreturn form;\n} else {\nvar ch \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)){\ncontinue;\n} else {\nif((ch \x3d\x3d null)){\nif(eof_error_QMARK_){\nreturn cljs.tools.reader.impl.errors.throw_eof_error(reader,null);\n} else {\nreturn sentinel;\n}\n} else {\nif((ch \x3d\x3d\x3d return_on)){\nreturn cljs.tools.reader.READ_FINISHED;\n} else {\nif(cljs.tools.reader.impl.commons.number_literal_QMARK_(reader,ch)){\nreturn cljs.tools.reader.read_number(reader,ch);\n} else {\nvar f \x3d cljs.tools.reader.macros(ch);\nif((!((f \x3d\x3d null)))){\nvar res \x3d (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(reader,ch,opts,pending_forms) : f.call(null,reader,ch,opts,pending_forms));\nif((res \x3d\x3d\x3d reader)){\ncontinue;\n} else {\nreturn res;\n}\n} else {\nreturn cljs.tools.reader.read_symbol(reader,ch);\n}\n\n}\n}\n}\n}\n}\nbreak;\n}\n}));\n} else {\nif((!(goog.array.isEmpty(pending_forms)))){\nvar form \x3d (pending_forms[(0)]);\ngoog.array.removeAt(pending_forms,(0));\n\nreturn form;\n} else {\nvar ch \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)){\ncontinue;\n} else {\nif((ch \x3d\x3d null)){\nif(eof_error_QMARK_){\nreturn cljs.tools.reader.impl.errors.throw_eof_error(reader,null);\n} else {\nreturn sentinel;\n}\n} else {\nif((ch \x3d\x3d\x3d return_on)){\nreturn cljs.tools.reader.READ_FINISHED;\n} else {\nif(cljs.tools.reader.impl.commons.number_literal_QMARK_(reader,ch)){\nreturn cljs.tools.reader.read_number(reader,ch);\n} else {\nvar f \x3d cljs.tools.reader.macros(ch);\nif((!((f \x3d\x3d null)))){\nvar res \x3d (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(reader,ch,opts,pending_forms) : f.call(null,reader,ch,opts,pending_forms));\nif((res \x3d\x3d\x3d reader)){\ncontinue;\n} else {\nreturn res;\n}\n} else {\nreturn cljs.tools.reader.read_symbol(reader,ch);\n}\n\n}\n}\n}\n}\n}\n}\nbreak;\n}\n});\ncljs.tools.reader.read_STAR_ \x3d (function cljs$tools$reader$read_STAR_(var_args){\nvar G__40574 \x3d arguments.length;\nswitch (G__40574) {\ncase 5:\nreturn cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$5 \x3d (function (reader,eof_error_QMARK_,sentinel,opts,pending_forms){\nreturn cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(reader,eof_error_QMARK_,sentinel,null,opts,pending_forms);\n}));\n\n(cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6 \x3d (function (reader,eof_error_QMARK_,sentinel,return_on,opts,pending_forms){\ntry{return cljs.tools.reader.read_STAR__internal(reader,eof_error_QMARK_,sentinel,return_on,opts,pending_forms);\n}catch (e40576){if((e40576 instanceof Error)){\nvar e \x3d e40576;\nif(cljs.tools.reader.impl.utils.ex_info_QMARK_(e)){\nvar d \x3d cljs.core.ex_data(e);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098),new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(d))){\nthrow e;\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(e.message,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098)], null),d,((cljs.tools.reader.reader_types.indexing_reader_QMARK_(reader))?new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),reader.cljs$tools$reader$reader_types$IndexingReader$get_file_name$arity$1(null)], null):null)], 0)),e);\n}\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(e.message,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098)], null),((cljs.tools.reader.reader_types.indexing_reader_QMARK_(reader))?new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),reader.cljs$tools$reader$reader_types$IndexingReader$get_file_name$arity$1(null)], null):null)], 0)),e);\n}\n} else {\nthrow e40576;\n\n}\n}}));\n\n(cljs.tools.reader.read_STAR_.cljs$lang$maxFixedArity \x3d 6);\n\n/**\n * Reads the first object from an IPushbackReader.\n * Returns the object read. If EOF, throws if eof-error? is true.\n * Otherwise returns sentinel. If no stream is provided, *in* will be used.\n * \n * Opts is a persistent map with valid keys:\n *  :read-cond - :allow to process reader conditionals, or\n *               :preserve to keep all branches\n *  :features - persistent set of feature keywords for reader conditionals\n *  :eof - on eof, return value unless :eofthrow, then throw.\n *         if not specified, will throw\n * \n * To read data structures only, use cljs.tools.reader.edn/read\n * \n * Note that the function signature of cljs.tools.reader/read and\n * cljs.tools.reader.edn/read is not the same for eof-handling\n */\ncljs.tools.reader.read \x3d (function cljs$tools$reader$read(var_args){\nvar G__40578 \x3d arguments.length;\nswitch (G__40578) {\ncase 1:\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$1 \x3d (function (reader){\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$3(reader,true,null);\n}));\n\n(cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$2 \x3d (function (p__40579,reader){\nvar map__40580 \x3d p__40579;\nvar map__40580__$1 \x3d cljs.core.__destructure_map(map__40580);\nvar opts \x3d map__40580__$1;\nvar eof \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__40580__$1,new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237),new cljs.core.Keyword(null,\x22eofthrow\x22,\x22eofthrow\x22,-334166531));\nreturn cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(reader,cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(eof,new cljs.core.Keyword(null,\x22eofthrow\x22,\x22eofthrow\x22,-334166531)),eof,null,opts,cljs.core.to_array(cljs.core.PersistentVector.EMPTY));\n}));\n\n(cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$3 \x3d (function (reader,eof_error_QMARK_,sentinel){\nreturn cljs.tools.reader.read_STAR_.cljs$core$IFn$_invoke$arity$6(reader,eof_error_QMARK_,sentinel,null,cljs.core.PersistentArrayMap.EMPTY,cljs.core.to_array(cljs.core.PersistentVector.EMPTY));\n}));\n\n(cljs.tools.reader.read.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Reads one object from the string s.\n * Returns nil when s is nil or empty.\n * \n * To read data structures only, use cljs.tools.reader.edn/read-string\n * \n * Note that the function signature of cljs.tools.reader/read-string and\n * cljs.tools.reader.edn/read-string is not the same for eof-handling\n */\ncljs.tools.reader.read_string \x3d (function cljs$tools$reader$read_string(var_args){\nvar G__40586 \x3d arguments.length;\nswitch (G__40586) {\ncase 1:\nreturn cljs.tools.reader.read_string.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.read_string.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.read_string.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn cljs.tools.reader.read_string.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,s);\n}));\n\n(cljs.tools.reader.read_string.cljs$core$IFn$_invoke$arity$2 \x3d (function (opts,s){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d s;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (!((s \x3d\x3d\x3d \x22\x22)));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$2(opts,cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.read_string.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Like read, and taking the same args. reader must be a SourceLoggingPushbackReader.\n *   Returns a vector containing the object read and the (whitespace-trimmed) string read.\n */\ncljs.tools.reader.read_PLUS_string \x3d (function cljs$tools$reader$read_PLUS_string(var_args){\nvar G__40589 \x3d arguments.length;\nswitch (G__40589) {\ncase 1:\nreturn cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 3:\nreturn cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$1 \x3d (function (stream){\nreturn cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$3(stream,true,null);\n}));\n\n(cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$3 \x3d (function (stream,eof_error_QMARK_,eof_value){\nvar buf \x3d (function (stream__$1){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(stream__$1.frames)));\n});\nvar offset \x3d ((buf(stream)).length);\nvar o \x3d ((((cljs.tools.reader.reader_types.source_logging_reader_QMARK_(stream)) \x26\x26 ((!(cljs.tools.reader.impl.utils.whitespace_QMARK_(cljs.tools.reader.reader_types.peek_char(stream)))))))?cljs.tools.reader.reader_types.log_source_STAR_(stream,(function (){\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$3(stream,eof_error_QMARK_,eof_value);\n})):cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$3(stream,eof_error_QMARK_,eof_value));\nvar s \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(buf(stream),offset).trim();\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [o,s], null);\n}));\n\n(cljs.tools.reader.read_PLUS_string.cljs$core$IFn$_invoke$arity$2 \x3d (function (opts,stream){\nvar buf \x3d (function (stream__$1){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(stream__$1.frames)));\n});\nvar offset \x3d ((buf(stream)).length);\nvar o \x3d ((((cljs.tools.reader.reader_types.source_logging_reader_QMARK_(stream)) \x26\x26 ((!(cljs.tools.reader.impl.utils.whitespace_QMARK_(cljs.tools.reader.reader_types.peek_char(stream)))))))?cljs.tools.reader.reader_types.log_source_STAR_(stream,(function (){\nreturn cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$2(opts,stream);\n})):cljs.tools.reader.read.cljs$core$IFn$_invoke$arity$2(opts,stream));\nvar s \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(buf(stream),offset).trim();\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [o,s], null);\n}));\n\n(cljs.tools.reader.read_PLUS_string.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("cljs.pprint.js", true , "goog.provide(\x27cljs.pprint\x27);\ncljs.pprint.print \x3d (function cljs$pprint$print(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___43880 \x3d arguments.length;\nvar i__4772__auto___43882 \x3d (0);\nwhile(true){\nif((i__4772__auto___43882 \x3c len__4771__auto___43880)){\nargs__4777__auto__.push((arguments[i__4772__auto___43882]));\n\nvar G__43883 \x3d (i__4772__auto___43882 + (1));\ni__4772__auto___43882 \x3d G__43883;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic \x3d (function (more){\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.print_str,more));\n}));\n\n(cljs.pprint.print.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.pprint.print.cljs$lang$applyTo \x3d (function (seq40019){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq40019));\n}));\n\ncljs.pprint.println \x3d (function cljs$pprint$println(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___43897 \x3d arguments.length;\nvar i__4772__auto___43898 \x3d (0);\nwhile(true){\nif((i__4772__auto___43898 \x3c len__4771__auto___43897)){\nargs__4777__auto__.push((arguments[i__4772__auto___43898]));\n\nvar G__43902 \x3d (i__4772__auto___43898 + (1));\ni__4772__auto___43898 \x3d G__43902;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.pprint.println.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.pprint.println.cljs$core$IFn$_invoke$arity$variadic \x3d (function (more){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.pprint.print,more);\n\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,\x22\\n\x22);\n}));\n\n(cljs.pprint.println.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.pprint.println.cljs$lang$applyTo \x3d (function (seq40022){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq40022));\n}));\n\ncljs.pprint.print_char \x3d (function cljs$pprint$print_char(c){\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,(function (){var pred__40031 \x3d cljs.core._EQ_;\nvar expr__40032 \x3d c;\nif(cljs.core.truth_((function (){var G__40034 \x3d \x22\\b\x22;\nvar G__40035 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40034,G__40035) : pred__40031.call(null,G__40034,G__40035));\n})())){\nreturn \x22\\\\backspace\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40040 \x3d \x22 \x22;\nvar G__40041 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40040,G__40041) : pred__40031.call(null,G__40040,G__40041));\n})())){\nreturn \x22\\\\space\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40042 \x3d \x22\\t\x22;\nvar G__40043 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40042,G__40043) : pred__40031.call(null,G__40042,G__40043));\n})())){\nreturn \x22\\\\tab\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40044 \x3d \x22\\n\x22;\nvar G__40045 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40044,G__40045) : pred__40031.call(null,G__40044,G__40045));\n})())){\nreturn \x22\\\\newline\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40046 \x3d \x22\\f\x22;\nvar G__40047 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40046,G__40047) : pred__40031.call(null,G__40046,G__40047));\n})())){\nreturn \x22\\\\formfeed\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40052 \x3d \x22\\r\x22;\nvar G__40053 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40052,G__40053) : pred__40031.call(null,G__40052,G__40053));\n})())){\nreturn \x22\\\\return\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40054 \x3d \x22\\\x22\x22;\nvar G__40055 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40054,G__40055) : pred__40031.call(null,G__40054,G__40055));\n})())){\nreturn \x22\\\\\\\x22\x22;\n} else {\nif(cljs.core.truth_((function (){var G__40056 \x3d \x22\\\\\x22;\nvar G__40057 \x3d expr__40032;\nreturn (pred__40031.cljs$core$IFn$_invoke$arity$2 ? pred__40031.cljs$core$IFn$_invoke$arity$2(G__40056,G__40057) : pred__40031.call(null,G__40056,G__40057));\n})())){\nreturn \x22\\\\\\\\\x22;\n} else {\nreturn [\x22\\\\\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(c)].join(\x27\x27);\n}\n}\n}\n}\n}\n}\n}\n}\n})());\n});\ncljs.pprint.pr \x3d (function cljs$pprint$pr(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___43915 \x3d arguments.length;\nvar i__4772__auto___43917 \x3d (0);\nwhile(true){\nif((i__4772__auto___43917 \x3c len__4771__auto___43915)){\nargs__4777__auto__.push((arguments[i__4772__auto___43917]));\n\nvar G__43918 \x3d (i__4772__auto___43917 + (1));\ni__4772__auto___43917 \x3d G__43918;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.pprint.pr.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.pprint.pr.cljs$core$IFn$_invoke$arity$variadic \x3d (function (more){\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.pr_str,more));\n}));\n\n(cljs.pprint.pr.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.pprint.pr.cljs$lang$applyTo \x3d (function (seq40062){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq40062));\n}));\n\ncljs.pprint.prn \x3d (function cljs$pprint$prn(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___43923 \x3d arguments.length;\nvar i__4772__auto___43924 \x3d (0);\nwhile(true){\nif((i__4772__auto___43924 \x3c len__4771__auto___43923)){\nargs__4777__auto__.push((arguments[i__4772__auto___43924]));\n\nvar G__43925 \x3d (i__4772__auto___43924 + (1));\ni__4772__auto___43924 \x3d G__43925;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.pprint.prn.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.pprint.prn.cljs$core$IFn$_invoke$arity$variadic \x3d (function (more){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.pprint.pr,more);\n\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,\x22\\n\x22);\n}));\n\n(cljs.pprint.prn.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.pprint.prn.cljs$lang$applyTo \x3d (function (seq40067){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq40067));\n}));\n\n/**\n * Returns true if n is an float.\n */\ncljs.pprint.float_QMARK_ \x3d (function cljs$pprint$float_QMARK_(n){\nreturn ((typeof n \x3d\x3d\x3d \x27number\x27) \x26\x26 ((!(isNaN(n)))) \x26\x26 ((!((n \x3d\x3d\x3d Infinity)))) \x26\x26 ((!((parseFloat(n) \x3d\x3d\x3d parseInt(n,(10)))))));\n});\n/**\n * Convert char to int\n */\ncljs.pprint.char_code \x3d (function cljs$pprint$char_code(c){\nif(typeof c \x3d\x3d\x3d \x27number\x27){\nreturn c;\n} else {\nif(((typeof c \x3d\x3d\x3d \x27string\x27) \x26\x26 ((c.length \x3d\x3d\x3d (1))))){\nreturn c.charCodeAt((0));\n} else {\nthrow (new Error(\x22Argument to char must be a character or number\x22));\n\n}\n}\n});\ncljs.pprint.map_passing_context \x3d (function cljs$pprint$map_passing_context(func,initial_context,lis){\nvar context \x3d initial_context;\nvar lis__$1 \x3d lis;\nvar acc \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nif(cljs.core.empty_QMARK_(lis__$1)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,context], null);\n} else {\nvar this$ \x3d cljs.core.first(lis__$1);\nvar remainder \x3d cljs.core.next(lis__$1);\nvar vec__40096 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(func,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$,context], null));\nvar result \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40096,(0),null);\nvar new_context \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40096,(1),null);\nvar G__43963 \x3d new_context;\nvar G__43964 \x3d remainder;\nvar G__43965 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result);\ncontext \x3d G__43963;\nlis__$1 \x3d G__43964;\nacc \x3d G__43965;\ncontinue;\n}\nbreak;\n}\n});\ncljs.pprint.consume \x3d (function cljs$pprint$consume(func,initial_context){\nvar context \x3d initial_context;\nvar acc \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nvar vec__40104 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(func,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [context], null));\nvar result \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40104,(0),null);\nvar new_context \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40104,(1),null);\nif(cljs.core.not(result)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,new_context], null);\n} else {\nvar G__43974 \x3d new_context;\nvar G__43975 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result);\ncontext \x3d G__43974;\nacc \x3d G__43975;\ncontinue;\n}\nbreak;\n}\n});\ncljs.pprint.consume_while \x3d (function cljs$pprint$consume_while(func,initial_context){\nvar context \x3d initial_context;\nvar acc \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nvar vec__40112 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(func,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [context], null));\nvar result \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40112,(0),null);\nvar continue$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40112,(1),null);\nvar new_context \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40112,(2),null);\nif(cljs.core.not(continue$)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,context], null);\n} else {\nvar G__43984 \x3d new_context;\nvar G__43985 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result);\ncontext \x3d G__43984;\nacc \x3d G__43985;\ncontinue;\n}\nbreak;\n}\n});\ncljs.pprint.unzip_map \x3d (function cljs$pprint$unzip_map(m){\n\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,(function (){var iter__4564__auto__ \x3d (function cljs$pprint$unzip_map_$_iter__40118(s__40119){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__40119__$1 \x3d s__40119;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__40119__$1);\nif(temp__5753__auto__){\nvar s__40119__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__40119__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__40119__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__40121 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__40120 \x3d (0);\nwhile(true){\nif((i__40120 \x3c size__4563__auto__)){\nvar vec__40123 \x3d cljs.core._nth(c__4562__auto__,i__40120);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40123,(0),null);\nvar vec__40126 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40123,(1),null);\nvar v1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40126,(0),null);\nvar v2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40126,(1),null);\ncljs.core.chunk_append(b__40121,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v1], null));\n\nvar G__43996 \x3d (i__40120 + (1));\ni__40120 \x3d G__43996;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40121),cljs$pprint$unzip_map_$_iter__40118(cljs.core.chunk_rest(s__40119__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40121),null);\n}\n} else {\nvar vec__40130 \x3d cljs.core.first(s__40119__$2);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40130,(0),null);\nvar vec__40133 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40130,(1),null);\nvar v1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40133,(0),null);\nvar v2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40133,(1),null);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v1], null),cljs$pprint$unzip_map_$_iter__40118(cljs.core.rest(s__40119__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(m);\n})()),cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,(function (){var iter__4564__auto__ \x3d (function cljs$pprint$unzip_map_$_iter__40136(s__40137){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__40137__$1 \x3d s__40137;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__40137__$1);\nif(temp__5753__auto__){\nvar s__40137__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__40137__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__40137__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__40139 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__40138 \x3d (0);\nwhile(true){\nif((i__40138 \x3c size__4563__auto__)){\nvar vec__40140 \x3d cljs.core._nth(c__4562__auto__,i__40138);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40140,(0),null);\nvar vec__40143 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40140,(1),null);\nvar v1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40143,(0),null);\nvar v2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40143,(1),null);\ncljs.core.chunk_append(b__40139,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v2], null));\n\nvar G__44016 \x3d (i__40138 + (1));\ni__40138 \x3d G__44016;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40139),cljs$pprint$unzip_map_$_iter__40136(cljs.core.chunk_rest(s__40137__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40139),null);\n}\n} else {\nvar vec__40146 \x3d cljs.core.first(s__40137__$2);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40146,(0),null);\nvar vec__40149 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40146,(1),null);\nvar v1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40149,(0),null);\nvar v2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40149,(1),null);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v2], null),cljs$pprint$unzip_map_$_iter__40136(cljs.core.rest(s__40137__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(m);\n})())], null);\n});\ncljs.pprint.tuple_map \x3d (function cljs$pprint$tuple_map(m,v1){\n\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,(function (){var iter__4564__auto__ \x3d (function cljs$pprint$tuple_map_$_iter__40152(s__40153){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__40153__$1 \x3d s__40153;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__40153__$1);\nif(temp__5753__auto__){\nvar s__40153__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__40153__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__40153__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__40155 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__40154 \x3d (0);\nwhile(true){\nif((i__40154 \x3c size__4563__auto__)){\nvar vec__40156 \x3d cljs.core._nth(c__4562__auto__,i__40154);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40156,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40156,(1),null);\ncljs.core.chunk_append(b__40155,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,v1], null)], null));\n\nvar G__44032 \x3d (i__40154 + (1));\ni__40154 \x3d G__44032;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40155),cljs$pprint$tuple_map_$_iter__40152(cljs.core.chunk_rest(s__40153__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__40155),null);\n}\n} else {\nvar vec__40159 \x3d cljs.core.first(s__40153__$2);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40159,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40159,(1),null);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,v1], null)], null),cljs$pprint$tuple_map_$_iter__40152(cljs.core.rest(s__40153__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(m);\n})());\n});\ncljs.pprint.rtrim \x3d (function cljs$pprint$rtrim(s,c){\n\nvar len \x3d cljs.core.count(s);\nif((((len \x3e (0))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,(cljs.core.count(s) - (1))),c)))){\nvar n \x3d (len - (1));\nwhile(true){\nif((n \x3c (0))){\nreturn \x22\x22;\n} else {\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,n),c)))){\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),(n + (1)));\n} else {\nvar G__44051 \x3d (n - (1));\nn \x3d G__44051;\ncontinue;\n\n}\n}\nbreak;\n}\n} else {\nreturn s;\n}\n});\ncljs.pprint.ltrim \x3d (function cljs$pprint$ltrim(s,c){\n\nvar len \x3d cljs.core.count(s);\nif((((len \x3e (0))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,(0)),c)))){\nvar n \x3d (0);\nwhile(true){\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(n,len)) || ((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,n),c)))))){\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,n);\n} else {\nvar G__44057 \x3d (n + (1));\nn \x3d G__44057;\ncontinue;\n}\nbreak;\n}\n} else {\nreturn s;\n}\n});\ncljs.pprint.prefix_count \x3d (function cljs$pprint$prefix_count(aseq,val){\n\nvar test \x3d ((cljs.core.coll_QMARK_(val))?cljs.core.set(val):cljs.core.PersistentHashSet.createAsIfByAssoc([val]));\nvar pos \x3d (0);\nwhile(true){\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(pos,cljs.core.count(aseq))) || (cljs.core.not((function (){var G__40163 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(aseq,pos);\nreturn (test.cljs$core$IFn$_invoke$arity$1 ? test.cljs$core$IFn$_invoke$arity$1(G__40163) : test.call(null,G__40163));\n})())))){\nreturn pos;\n} else {\nvar G__44063 \x3d (pos + (1));\npos \x3d G__44063;\ncontinue;\n}\nbreak;\n}\n});\n\n/**\n * @interface\n */\ncljs.pprint.IPrettyFlush \x3d function(){};\n\nvar cljs$pprint$IPrettyFlush$_ppflush$dyn_44066 \x3d (function (pp){\nvar x__4463__auto__ \x3d (((pp \x3d\x3d null))?null:pp);\nvar m__4464__auto__ \x3d (cljs.pprint._ppflush[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(pp) : m__4464__auto__.call(null,pp));\n} else {\nvar m__4461__auto__ \x3d (cljs.pprint._ppflush[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(pp) : m__4461__auto__.call(null,pp));\n} else {\nthrow cljs.core.missing_protocol(\x22IPrettyFlush.-ppflush\x22,pp);\n}\n}\n});\ncljs.pprint._ppflush \x3d (function cljs$pprint$_ppflush(pp){\nif((((!((pp \x3d\x3d null)))) \x26\x26 ((!((pp.cljs$pprint$IPrettyFlush$_ppflush$arity$1 \x3d\x3d null)))))){\nreturn pp.cljs$pprint$IPrettyFlush$_ppflush$arity$1(pp);\n} else {\nreturn cljs$pprint$IPrettyFlush$_ppflush$dyn_44066(pp);\n}\n});\n\ncljs.pprint._STAR_default_page_width_STAR_ \x3d (72);\ncljs.pprint.get_field \x3d (function cljs$pprint$get_field(this$,sym){\nvar G__40166 \x3d cljs.core.deref(cljs.core.deref(this$));\nreturn (sym.cljs$core$IFn$_invoke$arity$1 ? sym.cljs$core$IFn$_invoke$arity$1(G__40166) : sym.call(null,G__40166));\n});\ncljs.pprint.set_field \x3d (function cljs$pprint$set_field(this$,sym,new_val){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,sym,new_val);\n});\ncljs.pprint.get_column \x3d (function cljs$pprint$get_column(this$){\nreturn cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599));\n});\ncljs.pprint.get_line \x3d (function cljs$pprint$get_line(this$){\nreturn cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\n});\ncljs.pprint.get_max_column \x3d (function cljs$pprint$get_max_column(this$){\nreturn cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22max\x22,\x22max\x22,61366548));\n});\ncljs.pprint.set_max_column \x3d (function cljs$pprint$set_max_column(this$,new_max){\ncljs.pprint.set_field(this$,new cljs.core.Keyword(null,\x22max\x22,\x22max\x22,61366548),new_max);\n\nreturn null;\n});\ncljs.pprint.get_writer \x3d (function cljs$pprint$get_writer(this$){\nreturn cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322));\n});\ncljs.pprint.c_write_char \x3d (function cljs$pprint$c_write_char(this$,c){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(c,\x22\\n\x22)){\ncljs.pprint.set_field(this$,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599),(0));\n\ncljs.pprint.set_field(this$,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),(cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235)) + (1)));\n} else {\ncljs.pprint.set_field(this$,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599),(cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599)) + (1)));\n}\n\nreturn cljs.core._write(cljs.pprint.get_field(this$,new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322)),c);\n});\ncljs.pprint.column_writer \x3d (function cljs$pprint$column_writer(var_args){\nvar G__40174 \x3d arguments.length;\nswitch (G__40174) {\ncase 1:\nreturn cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$1 \x3d (function (writer){\nreturn cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2(writer,cljs.pprint._STAR_default_page_width_STAR_);\n}));\n\n(cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2 \x3d (function (writer,max_columns){\nvar fields \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22max\x22,\x22max\x22,61366548),max_columns,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599),(0),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),(0),new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322),writer], null));\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.t_cljs$pprint40175 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IDeref}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.pprint.t_cljs$pprint40175 \x3d (function (writer,max_columns,fields,meta40176){\nthis.writer \x3d writer;\nthis.max_columns \x3d max_columns;\nthis.fields \x3d fields;\nthis.meta40176 \x3d meta40176;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1074167808;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.pprint.t_cljs$pprint40175.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_40177,meta40176__$1){\nvar self__ \x3d this;\nvar _40177__$1 \x3d this;\nreturn (new cljs.pprint.t_cljs$pprint40175(self__.writer,self__.max_columns,self__.fields,meta40176__$1));\n}));\n\n(cljs.pprint.t_cljs$pprint40175.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_40177){\nvar self__ \x3d this;\nvar _40177__$1 \x3d this;\nreturn self__.meta40176;\n}));\n\n(cljs.pprint.t_cljs$pprint40175.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.fields;\n}));\n\n(cljs.pprint.t_cljs$pprint40175.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core._flush(self__.writer);\n}));\n\n(cljs.pprint.t_cljs$pprint40175.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (this$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar pred__40178 \x3d cljs.core._EQ_;\nvar expr__40179 \x3d cljs.core.type(x);\nif(cljs.core.truth_((pred__40178.cljs$core$IFn$_invoke$arity$2 ? pred__40178.cljs$core$IFn$_invoke$arity$2(String,expr__40179) : pred__40178.call(null,String,expr__40179)))){\nvar s \x3d x;\nvar nl \x3d s.lastIndexOf(\x22\\n\x22);\nif((nl \x3c (0))){\ncljs.pprint.set_field(this$__$1,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599),(cljs.pprint.get_field(this$__$1,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599)) + cljs.core.count(s)));\n} else {\ncljs.pprint.set_field(this$__$1,new cljs.core.Keyword(null,\x22cur\x22,\x22cur\x22,1153190599),((cljs.core.count(s) - nl) - (1)));\n\ncljs.pprint.set_field(this$__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),(cljs.pprint.get_field(this$__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235)) + cljs.core.count(cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__40172_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p1__40172_SHARP_,\x22\\n\x22);\n}),s))));\n}\n\nreturn cljs.core._write(cljs.pprint.get_field(this$__$1,new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322)),s);\n} else {\nif(cljs.core.truth_((pred__40178.cljs$core$IFn$_invoke$arity$2 ? pred__40178.cljs$core$IFn$_invoke$arity$2(Number,expr__40179) : pred__40178.call(null,Number,expr__40179)))){\nreturn cljs.pprint.c_write_char(this$__$1,x);\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__40179)].join(\x27\x27)));\n}\n}\n}));\n\n(cljs.pprint.t_cljs$pprint40175.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22writer\x22,\x22writer\x22,1362963291,null),new cljs.core.Symbol(null,\x22max-columns\x22,\x22max-columns\x22,-912112507,null),new cljs.core.Symbol(null,\x22fields\x22,\x22fields\x22,-291534703,null),new cljs.core.Symbol(null,\x22meta40176\x22,\x22meta40176\x22,-442672011,null)], null);\n}));\n\n(cljs.pprint.t_cljs$pprint40175.cljs$lang$type \x3d true);\n\n(cljs.pprint.t_cljs$pprint40175.cljs$lang$ctorStr \x3d \x22cljs.pprint/t_cljs$pprint40175\x22);\n\n(cljs.pprint.t_cljs$pprint40175.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.pprint/t_cljs$pprint40175\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/t_cljs$pprint40175.\n */\ncljs.pprint.__GT_t_cljs$pprint40175 \x3d (function cljs$pprint$__GT_t_cljs$pprint40175(writer__$1,max_columns__$1,fields__$1,meta40176){\nreturn (new cljs.pprint.t_cljs$pprint40175(writer__$1,max_columns__$1,fields__$1,meta40176));\n});\n\n}\n\nreturn (new cljs.pprint.t_cljs$pprint40175(writer,max_columns,fields,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(cljs.pprint.column_writer.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.logical_block \x3d (function (parent,section,start_col,indent,done_nl,intra_block_nl,prefix,per_line_prefix,suffix,logical_block_callback,__meta,__extmap,__hash){\nthis.parent \x3d parent;\nthis.section \x3d section;\nthis.start_col \x3d start_col;\nthis.indent \x3d indent;\nthis.done_nl \x3d done_nl;\nthis.intra_block_nl \x3d intra_block_nl;\nthis.prefix \x3d prefix;\nthis.per_line_prefix \x3d per_line_prefix;\nthis.suffix \x3d suffix;\nthis.logical_block_callback \x3d logical_block_callback;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.logical_block.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40184,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40193 \x3d k40184;\nvar G__40193__$1 \x3d (((G__40193 instanceof cljs.core.Keyword))?G__40193.fqn:null);\nswitch (G__40193__$1) {\ncase \x22parent\x22:\nreturn self__.parent;\n\nbreak;\ncase \x22section\x22:\nreturn self__.section;\n\nbreak;\ncase \x22start-col\x22:\nreturn self__.start_col;\n\nbreak;\ncase \x22indent\x22:\nreturn self__.indent;\n\nbreak;\ncase \x22done-nl\x22:\nreturn self__.done_nl;\n\nbreak;\ncase \x22intra-block-nl\x22:\nreturn self__.intra_block_nl;\n\nbreak;\ncase \x22prefix\x22:\nreturn self__.prefix;\n\nbreak;\ncase \x22per-line-prefix\x22:\nreturn self__.per_line_prefix;\n\nbreak;\ncase \x22suffix\x22:\nreturn self__.suffix;\n\nbreak;\ncase \x22logical-block-callback\x22:\nreturn self__.logical_block_callback;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40184,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40195){\nvar vec__40196 \x3d p__40195;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40196,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40196,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.logical-block{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),self__.parent],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),self__.section],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),self__.start_col],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),self__.indent],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),self__.done_nl],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),self__.intra_block_nl],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),self__.prefix],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),self__.per_line_prefix],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),self__.suffix],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194),self__.logical_block_callback],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40183){\nvar self__ \x3d this;\nvar G__40183__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40183__$1,10,new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (10 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (1977012399 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40185,other40186){\nvar self__ \x3d this;\nvar this40185__$1 \x3d this;\nreturn (((!((other40186 \x3d\x3d null)))) \x26\x26 ((this40185__$1.constructor \x3d\x3d\x3d other40186.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.parent,other40186.parent)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.section,other40186.section)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.start_col,other40186.start_col)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.indent,other40186.indent)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.done_nl,other40186.done_nl)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.intra_block_nl,other40186.intra_block_nl)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.prefix,other40186.prefix)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.per_line_prefix,other40186.per_line_prefix)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.suffix,other40186.suffix)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.logical_block_callback,other40186.logical_block_callback)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40185__$1.__extmap,other40186.__extmap)));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 10, [new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),null,new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),null,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),null,new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),null,new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),null,new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),null,new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),null,new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),null,new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194),null,new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40183){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40208 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40209 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),expr__40209)))){\nreturn (new cljs.pprint.logical_block(G__40183,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,G__40183,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,G__40183,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,G__40183,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,G__40183,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,G__40183,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,G__40183,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,G__40183,self__.suffix,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,G__40183,self__.logical_block_callback,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40208.cljs$core$IFn$_invoke$arity$2 ? pred__40208.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194),expr__40209) : pred__40208.call(null,new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194),expr__40209)))){\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,G__40183,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40183),null));\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),self__.parent,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),self__.section,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),self__.start_col,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),self__.indent,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),self__.done_nl,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),self__.intra_block_nl,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),self__.prefix,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),self__.per_line_prefix,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),self__.suffix,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194),self__.logical_block_callback,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40183){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.logical_block(self__.parent,self__.section,self__.start_col,self__.indent,self__.done_nl,self__.intra_block_nl,self__.prefix,self__.per_line_prefix,self__.suffix,self__.logical_block_callback,G__40183,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.logical_block.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.logical_block.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22parent\x22,\x22parent\x22,761652748,null),new cljs.core.Symbol(null,\x22section\x22,\x22section\x22,1340390001,null),new cljs.core.Symbol(null,\x22start-col\x22,\x22start-col\x22,-1986355626,null),new cljs.core.Symbol(null,\x22indent\x22,\x22indent\x22,1492331402,null),new cljs.core.Symbol(null,\x22done-nl\x22,\x22done-nl\x22,1259507187,null),new cljs.core.Symbol(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,-845608894,null),new cljs.core.Symbol(null,\x22prefix\x22,\x22prefix\x22,1374623062,null),new cljs.core.Symbol(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,-1807493956,null),new cljs.core.Symbol(null,\x22suffix\x22,\x22suffix\x22,2007904584,null),new cljs.core.Symbol(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,-1041744575,null)], null);\n}));\n\n(cljs.pprint.logical_block.cljs$lang$type \x3d true);\n\n(cljs.pprint.logical_block.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/logical-block\x22,null,(1),null));\n}));\n\n(cljs.pprint.logical_block.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/logical-block\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/logical-block.\n */\ncljs.pprint.__GT_logical_block \x3d (function cljs$pprint$__GT_logical_block(parent,section,start_col,indent,done_nl,intra_block_nl,prefix,per_line_prefix,suffix,logical_block_callback){\nreturn (new cljs.pprint.logical_block(parent,section,start_col,indent,done_nl,intra_block_nl,prefix,per_line_prefix,suffix,logical_block_callback,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/logical-block, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_logical_block \x3d (function cljs$pprint$map__GT_logical_block(G__40188){\nvar extmap__4454__auto__ \x3d (function (){var G__40212 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40188,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143),new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125),new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340),new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875),new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465),new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813),new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057),new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194)], 0));\nif(cljs.core.record_QMARK_(G__40188)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40212);\n} else {\nreturn G__40212;\n}\n})();\nreturn (new cljs.pprint.logical_block(new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057).cljs$core$IFn$_invoke$arity$1(G__40188),new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194).cljs$core$IFn$_invoke$arity$1(G__40188),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\ncljs.pprint.ancestor_QMARK_ \x3d (function cljs$pprint$ancestor_QMARK_(parent,child){\nvar child__$1 \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(child);\nwhile(true){\nif((child__$1 \x3d\x3d null)){\nreturn false;\n} else {\nif((parent \x3d\x3d\x3d child__$1)){\nreturn true;\n} else {\nvar G__44278 \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(child__$1);\nchild__$1 \x3d G__44278;\ncontinue;\n\n}\n}\nbreak;\n}\n});\ncljs.pprint.buffer_length \x3d (function cljs$pprint$buffer_length(l){\nvar l__$1 \x3d cljs.core.seq(l);\nif(l__$1){\nreturn (new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926).cljs$core$IFn$_invoke$arity$1(cljs.core.last(l__$1)) - new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086).cljs$core$IFn$_invoke$arity$1(cljs.core.first(l__$1)));\n} else {\nreturn (0);\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.buffer_blob \x3d (function (type_tag,data,trailing_white_space,start_pos,end_pos,__meta,__extmap,__hash){\nthis.type_tag \x3d type_tag;\nthis.data \x3d data;\nthis.trailing_white_space \x3d trailing_white_space;\nthis.start_pos \x3d start_pos;\nthis.end_pos \x3d end_pos;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.buffer_blob.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40218,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40223 \x3d k40218;\nvar G__40223__$1 \x3d (((G__40223 instanceof cljs.core.Keyword))?G__40223.fqn:null);\nswitch (G__40223__$1) {\ncase \x22type-tag\x22:\nreturn self__.type_tag;\n\nbreak;\ncase \x22data\x22:\nreturn self__.data;\n\nbreak;\ncase \x22trailing-white-space\x22:\nreturn self__.trailing_white_space;\n\nbreak;\ncase \x22start-pos\x22:\nreturn self__.start_pos;\n\nbreak;\ncase \x22end-pos\x22:\nreturn self__.end_pos;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40218,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40224){\nvar vec__40225 \x3d p__40224;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40225,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40225,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.buffer-blob{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),self__.data],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),self__.trailing_white_space],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40217){\nvar self__ \x3d this;\nvar G__40217__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40217__$1,5,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (5 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (1809113693 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40219,other40220){\nvar self__ \x3d this;\nvar this40219__$1 \x3d this;\nreturn (((!((other40220 \x3d\x3d null)))) \x26\x26 ((this40219__$1.constructor \x3d\x3d\x3d other40220.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40219__$1.type_tag,other40220.type_tag)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40219__$1.data,other40220.data)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40219__$1.trailing_white_space,other40220.trailing_white_space)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40219__$1.start_pos,other40220.start_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40219__$1.end_pos,other40220.end_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40219__$1.__extmap,other40220.__extmap)));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),null,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),null,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40217){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40233 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40234 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40233.cljs$core$IFn$_invoke$arity$2 ? pred__40233.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40234) : pred__40233.call(null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40234)))){\nreturn (new cljs.pprint.buffer_blob(G__40217,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40233.cljs$core$IFn$_invoke$arity$2 ? pred__40233.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),expr__40234) : pred__40233.call(null,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),expr__40234)))){\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,G__40217,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40233.cljs$core$IFn$_invoke$arity$2 ? pred__40233.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),expr__40234) : pred__40233.call(null,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),expr__40234)))){\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,G__40217,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40233.cljs$core$IFn$_invoke$arity$2 ? pred__40233.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40234) : pred__40233.call(null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40234)))){\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,G__40217,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40233.cljs$core$IFn$_invoke$arity$2 ? pred__40233.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40234) : pred__40233.call(null,new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40234)))){\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,G__40217,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40217),null));\n}\n}\n}\n}\n}\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),self__.data,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),self__.trailing_white_space,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40217){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.buffer_blob(self__.type_tag,self__.data,self__.trailing_white_space,self__.start_pos,self__.end_pos,G__40217,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.buffer_blob.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.buffer_blob.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type-tag\x22,\x22type-tag\x22,-233331740,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null),new cljs.core.Symbol(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,-1158428773,null),new cljs.core.Symbol(null,\x22start-pos\x22,\x22start-pos\x22,-1985646683,null),new cljs.core.Symbol(null,\x22end-pos\x22,\x22end-pos\x22,-3352399,null)], null);\n}));\n\n(cljs.pprint.buffer_blob.cljs$lang$type \x3d true);\n\n(cljs.pprint.buffer_blob.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/buffer-blob\x22,null,(1),null));\n}));\n\n(cljs.pprint.buffer_blob.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/buffer-blob\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/buffer-blob.\n */\ncljs.pprint.__GT_buffer_blob \x3d (function cljs$pprint$__GT_buffer_blob(type_tag,data,trailing_white_space,start_pos,end_pos){\nreturn (new cljs.pprint.buffer_blob(type_tag,data,trailing_white_space,start_pos,end_pos,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/buffer-blob, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_buffer_blob \x3d (function cljs$pprint$map__GT_buffer_blob(G__40221){\nvar extmap__4454__auto__ \x3d (function (){var G__40253 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40221,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], 0));\nif(cljs.core.record_QMARK_(G__40221)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40253);\n} else {\nreturn G__40253;\n}\n})();\nreturn (new cljs.pprint.buffer_blob(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(G__40221),new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377).cljs$core$IFn$_invoke$arity$1(G__40221),new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(G__40221),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086).cljs$core$IFn$_invoke$arity$1(G__40221),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926).cljs$core$IFn$_invoke$arity$1(G__40221),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n\ncljs.pprint.make_buffer_blob \x3d (function cljs$pprint$make_buffer_blob(data,trailing_white_space,start_pos,end_pos){\nreturn (new cljs.pprint.buffer_blob(new cljs.core.Keyword(null,\x22buffer-blob\x22,\x22buffer-blob\x22,-1830112173),data,trailing_white_space,start_pos,end_pos,null,null,null));\n});\n\ncljs.pprint.buffer_blob_QMARK_ \x3d (function cljs$pprint$buffer_blob_QMARK_(x__39890__auto__){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(x__39890__auto__),new cljs.core.Keyword(null,\x22buffer-blob\x22,\x22buffer-blob\x22,-1830112173));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.nl_t \x3d (function (type_tag,type,logical_block,start_pos,end_pos,__meta,__extmap,__hash){\nthis.type_tag \x3d type_tag;\nthis.type \x3d type;\nthis.logical_block \x3d logical_block;\nthis.start_pos \x3d start_pos;\nthis.end_pos \x3d end_pos;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.nl_t.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40258,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40265 \x3d k40258;\nvar G__40265__$1 \x3d (((G__40265 instanceof cljs.core.Keyword))?G__40265.fqn:null);\nswitch (G__40265__$1) {\ncase \x22type-tag\x22:\nreturn self__.type_tag;\n\nbreak;\ncase \x22type\x22:\nreturn self__.type;\n\nbreak;\ncase \x22logical-block\x22:\nreturn self__.logical_block;\n\nbreak;\ncase \x22start-pos\x22:\nreturn self__.start_pos;\n\nbreak;\ncase \x22end-pos\x22:\nreturn self__.end_pos;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40258,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40266){\nvar vec__40267 \x3d p__40266;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40267,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40267,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.nl-t{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),self__.type],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40257){\nvar self__ \x3d this;\nvar G__40257__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40257__$1,5,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (5 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-1640656800 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40259,other40260){\nvar self__ \x3d this;\nvar this40259__$1 \x3d this;\nreturn (((!((other40260 \x3d\x3d null)))) \x26\x26 ((this40259__$1.constructor \x3d\x3d\x3d other40260.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40259__$1.type_tag,other40260.type_tag)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40259__$1.type,other40260.type)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40259__$1.logical_block,other40260.logical_block)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40259__$1.start_pos,other40260.start_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40259__$1.end_pos,other40260.end_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40259__$1.__extmap,other40260.__extmap)));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),null,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40257){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40283 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40284 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40283.cljs$core$IFn$_invoke$arity$2 ? pred__40283.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40284) : pred__40283.call(null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40284)))){\nreturn (new cljs.pprint.nl_t(G__40257,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40283.cljs$core$IFn$_invoke$arity$2 ? pred__40283.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),expr__40284) : pred__40283.call(null,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),expr__40284)))){\nreturn (new cljs.pprint.nl_t(self__.type_tag,G__40257,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40283.cljs$core$IFn$_invoke$arity$2 ? pred__40283.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40284) : pred__40283.call(null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40284)))){\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,G__40257,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40283.cljs$core$IFn$_invoke$arity$2 ? pred__40283.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40284) : pred__40283.call(null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40284)))){\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,G__40257,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40283.cljs$core$IFn$_invoke$arity$2 ? pred__40283.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40284) : pred__40283.call(null,new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40284)))){\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,G__40257,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40257),null));\n}\n}\n}\n}\n}\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),self__.type,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40257){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.nl_t(self__.type_tag,self__.type,self__.logical_block,self__.start_pos,self__.end_pos,G__40257,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.nl_t.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.nl_t.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type-tag\x22,\x22type-tag\x22,-233331740,null),new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22logical-block\x22,\x22logical-block\x22,1059508963,null),new cljs.core.Symbol(null,\x22start-pos\x22,\x22start-pos\x22,-1985646683,null),new cljs.core.Symbol(null,\x22end-pos\x22,\x22end-pos\x22,-3352399,null)], null);\n}));\n\n(cljs.pprint.nl_t.cljs$lang$type \x3d true);\n\n(cljs.pprint.nl_t.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/nl-t\x22,null,(1),null));\n}));\n\n(cljs.pprint.nl_t.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/nl-t\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/nl-t.\n */\ncljs.pprint.__GT_nl_t \x3d (function cljs$pprint$__GT_nl_t(type_tag,type,logical_block,start_pos,end_pos){\nreturn (new cljs.pprint.nl_t(type_tag,type,logical_block,start_pos,end_pos,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/nl-t, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_nl_t \x3d (function cljs$pprint$map__GT_nl_t(G__40261){\nvar extmap__4454__auto__ \x3d (function (){var G__40292 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40261,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], 0));\nif(cljs.core.record_QMARK_(G__40261)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40292);\n} else {\nreturn G__40292;\n}\n})();\nreturn (new cljs.pprint.nl_t(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(G__40261),new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(G__40261),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(G__40261),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086).cljs$core$IFn$_invoke$arity$1(G__40261),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926).cljs$core$IFn$_invoke$arity$1(G__40261),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n\ncljs.pprint.make_nl_t \x3d (function cljs$pprint$make_nl_t(type,logical_block,start_pos,end_pos){\nreturn (new cljs.pprint.nl_t(new cljs.core.Keyword(null,\x22nl-t\x22,\x22nl-t\x22,-1608382114),type,logical_block,start_pos,end_pos,null,null,null));\n});\n\ncljs.pprint.nl_t_QMARK_ \x3d (function cljs$pprint$nl_t_QMARK_(x__39890__auto__){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(x__39890__auto__),new cljs.core.Keyword(null,\x22nl-t\x22,\x22nl-t\x22,-1608382114));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.start_block_t \x3d (function (type_tag,logical_block,start_pos,end_pos,__meta,__extmap,__hash){\nthis.type_tag \x3d type_tag;\nthis.logical_block \x3d logical_block;\nthis.start_pos \x3d start_pos;\nthis.end_pos \x3d end_pos;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.start_block_t.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40294,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40300 \x3d k40294;\nvar G__40300__$1 \x3d (((G__40300 instanceof cljs.core.Keyword))?G__40300.fqn:null);\nswitch (G__40300__$1) {\ncase \x22type-tag\x22:\nreturn self__.type_tag;\n\nbreak;\ncase \x22logical-block\x22:\nreturn self__.logical_block;\n\nbreak;\ncase \x22start-pos\x22:\nreturn self__.start_pos;\n\nbreak;\ncase \x22end-pos\x22:\nreturn self__.end_pos;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40294,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40302){\nvar vec__40303 \x3d p__40302;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40303,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40303,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.start-block-t{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40293){\nvar self__ \x3d this;\nvar G__40293__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40293__$1,4,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (4 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-414877272 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40295,other40296){\nvar self__ \x3d this;\nvar this40295__$1 \x3d this;\nreturn (((!((other40296 \x3d\x3d null)))) \x26\x26 ((this40295__$1.constructor \x3d\x3d\x3d other40296.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40295__$1.type_tag,other40296.type_tag)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40295__$1.logical_block,other40296.logical_block)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40295__$1.start_pos,other40296.start_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40295__$1.end_pos,other40296.end_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40295__$1.__extmap,other40296.__extmap)));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40293){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40333 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40334 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40333.cljs$core$IFn$_invoke$arity$2 ? pred__40333.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40334) : pred__40333.call(null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40334)))){\nreturn (new cljs.pprint.start_block_t(G__40293,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40333.cljs$core$IFn$_invoke$arity$2 ? pred__40333.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40334) : pred__40333.call(null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40334)))){\nreturn (new cljs.pprint.start_block_t(self__.type_tag,G__40293,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40333.cljs$core$IFn$_invoke$arity$2 ? pred__40333.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40334) : pred__40333.call(null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40334)))){\nreturn (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,G__40293,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40333.cljs$core$IFn$_invoke$arity$2 ? pred__40333.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40334) : pred__40333.call(null,new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40334)))){\nreturn (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,G__40293,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40293),null));\n}\n}\n}\n}\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40293){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.start_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,G__40293,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.start_block_t.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.start_block_t.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type-tag\x22,\x22type-tag\x22,-233331740,null),new cljs.core.Symbol(null,\x22logical-block\x22,\x22logical-block\x22,1059508963,null),new cljs.core.Symbol(null,\x22start-pos\x22,\x22start-pos\x22,-1985646683,null),new cljs.core.Symbol(null,\x22end-pos\x22,\x22end-pos\x22,-3352399,null)], null);\n}));\n\n(cljs.pprint.start_block_t.cljs$lang$type \x3d true);\n\n(cljs.pprint.start_block_t.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/start-block-t\x22,null,(1),null));\n}));\n\n(cljs.pprint.start_block_t.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/start-block-t\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/start-block-t.\n */\ncljs.pprint.__GT_start_block_t \x3d (function cljs$pprint$__GT_start_block_t(type_tag,logical_block,start_pos,end_pos){\nreturn (new cljs.pprint.start_block_t(type_tag,logical_block,start_pos,end_pos,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/start-block-t, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_start_block_t \x3d (function cljs$pprint$map__GT_start_block_t(G__40297){\nvar extmap__4454__auto__ \x3d (function (){var G__40342 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40297,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], 0));\nif(cljs.core.record_QMARK_(G__40297)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40342);\n} else {\nreturn G__40342;\n}\n})();\nreturn (new cljs.pprint.start_block_t(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(G__40297),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(G__40297),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086).cljs$core$IFn$_invoke$arity$1(G__40297),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926).cljs$core$IFn$_invoke$arity$1(G__40297),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n\ncljs.pprint.make_start_block_t \x3d (function cljs$pprint$make_start_block_t(logical_block,start_pos,end_pos){\nreturn (new cljs.pprint.start_block_t(new cljs.core.Keyword(null,\x22start-block-t\x22,\x22start-block-t\x22,-373430594),logical_block,start_pos,end_pos,null,null,null));\n});\n\ncljs.pprint.start_block_t_QMARK_ \x3d (function cljs$pprint$start_block_t_QMARK_(x__39890__auto__){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(x__39890__auto__),new cljs.core.Keyword(null,\x22start-block-t\x22,\x22start-block-t\x22,-373430594));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.end_block_t \x3d (function (type_tag,logical_block,start_pos,end_pos,__meta,__extmap,__hash){\nthis.type_tag \x3d type_tag;\nthis.logical_block \x3d logical_block;\nthis.start_pos \x3d start_pos;\nthis.end_pos \x3d end_pos;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.end_block_t.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40352,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40357 \x3d k40352;\nvar G__40357__$1 \x3d (((G__40357 instanceof cljs.core.Keyword))?G__40357.fqn:null);\nswitch (G__40357__$1) {\ncase \x22type-tag\x22:\nreturn self__.type_tag;\n\nbreak;\ncase \x22logical-block\x22:\nreturn self__.logical_block;\n\nbreak;\ncase \x22start-pos\x22:\nreturn self__.start_pos;\n\nbreak;\ncase \x22end-pos\x22:\nreturn self__.end_pos;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40352,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40361){\nvar vec__40362 \x3d p__40361;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40362,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40362,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.end-block-t{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40351){\nvar self__ \x3d this;\nvar G__40351__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40351__$1,4,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (4 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (1365867980 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40353,other40354){\nvar self__ \x3d this;\nvar this40353__$1 \x3d this;\nreturn (((!((other40354 \x3d\x3d null)))) \x26\x26 ((this40353__$1.constructor \x3d\x3d\x3d other40354.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40353__$1.type_tag,other40354.type_tag)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40353__$1.logical_block,other40354.logical_block)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40353__$1.start_pos,other40354.start_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40353__$1.end_pos,other40354.end_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40353__$1.__extmap,other40354.__extmap)));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40351){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40370 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40371 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40370.cljs$core$IFn$_invoke$arity$2 ? pred__40370.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40371) : pred__40370.call(null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40371)))){\nreturn (new cljs.pprint.end_block_t(G__40351,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40370.cljs$core$IFn$_invoke$arity$2 ? pred__40370.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40371) : pred__40370.call(null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40371)))){\nreturn (new cljs.pprint.end_block_t(self__.type_tag,G__40351,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40370.cljs$core$IFn$_invoke$arity$2 ? pred__40370.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40371) : pred__40370.call(null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40371)))){\nreturn (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,G__40351,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40370.cljs$core$IFn$_invoke$arity$2 ? pred__40370.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40371) : pred__40370.call(null,new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40371)))){\nreturn (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,G__40351,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40351),null));\n}\n}\n}\n}\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40351){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.end_block_t(self__.type_tag,self__.logical_block,self__.start_pos,self__.end_pos,G__40351,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.end_block_t.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.end_block_t.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type-tag\x22,\x22type-tag\x22,-233331740,null),new cljs.core.Symbol(null,\x22logical-block\x22,\x22logical-block\x22,1059508963,null),new cljs.core.Symbol(null,\x22start-pos\x22,\x22start-pos\x22,-1985646683,null),new cljs.core.Symbol(null,\x22end-pos\x22,\x22end-pos\x22,-3352399,null)], null);\n}));\n\n(cljs.pprint.end_block_t.cljs$lang$type \x3d true);\n\n(cljs.pprint.end_block_t.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/end-block-t\x22,null,(1),null));\n}));\n\n(cljs.pprint.end_block_t.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/end-block-t\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/end-block-t.\n */\ncljs.pprint.__GT_end_block_t \x3d (function cljs$pprint$__GT_end_block_t(type_tag,logical_block,start_pos,end_pos){\nreturn (new cljs.pprint.end_block_t(type_tag,logical_block,start_pos,end_pos,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/end-block-t, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_end_block_t \x3d (function cljs$pprint$map__GT_end_block_t(G__40355){\nvar extmap__4454__auto__ \x3d (function (){var G__40379 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40355,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], 0));\nif(cljs.core.record_QMARK_(G__40355)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40379);\n} else {\nreturn G__40379;\n}\n})();\nreturn (new cljs.pprint.end_block_t(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(G__40355),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(G__40355),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086).cljs$core$IFn$_invoke$arity$1(G__40355),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926).cljs$core$IFn$_invoke$arity$1(G__40355),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n\ncljs.pprint.make_end_block_t \x3d (function cljs$pprint$make_end_block_t(logical_block,start_pos,end_pos){\nreturn (new cljs.pprint.end_block_t(new cljs.core.Keyword(null,\x22end-block-t\x22,\x22end-block-t\x22,1544648735),logical_block,start_pos,end_pos,null,null,null));\n});\n\ncljs.pprint.end_block_t_QMARK_ \x3d (function cljs$pprint$end_block_t_QMARK_(x__39890__auto__){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(x__39890__auto__),new cljs.core.Keyword(null,\x22end-block-t\x22,\x22end-block-t\x22,1544648735));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.indent_t \x3d (function (type_tag,logical_block,relative_to,offset,start_pos,end_pos,__meta,__extmap,__hash){\nthis.type_tag \x3d type_tag;\nthis.logical_block \x3d logical_block;\nthis.relative_to \x3d relative_to;\nthis.offset \x3d offset;\nthis.start_pos \x3d start_pos;\nthis.end_pos \x3d end_pos;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.indent_t.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40390,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40402 \x3d k40390;\nvar G__40402__$1 \x3d (((G__40402 instanceof cljs.core.Keyword))?G__40402.fqn:null);\nswitch (G__40402__$1) {\ncase \x22type-tag\x22:\nreturn self__.type_tag;\n\nbreak;\ncase \x22logical-block\x22:\nreturn self__.logical_block;\n\nbreak;\ncase \x22relative-to\x22:\nreturn self__.relative_to;\n\nbreak;\ncase \x22offset\x22:\nreturn self__.offset;\n\nbreak;\ncase \x22start-pos\x22:\nreturn self__.start_pos;\n\nbreak;\ncase \x22end-pos\x22:\nreturn self__.end_pos;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40390,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40409){\nvar vec__40410 \x3d p__40409;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40410,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40410,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.indent-t{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),self__.relative_to],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),self__.offset],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40389){\nvar self__ \x3d this;\nvar G__40389__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40389__$1,6,new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (6 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-1602780238 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40391,other40392){\nvar self__ \x3d this;\nvar this40391__$1 \x3d this;\nreturn (((!((other40392 \x3d\x3d null)))) \x26\x26 ((this40391__$1.constructor \x3d\x3d\x3d other40392.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.type_tag,other40392.type_tag)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.logical_block,other40392.logical_block)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.relative_to,other40392.relative_to)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.offset,other40392.offset)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.start_pos,other40392.start_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.end_pos,other40392.end_pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40391__$1.__extmap,other40392.__extmap)));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),null,new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),null,new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40389){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40427 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40428 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40427.cljs$core$IFn$_invoke$arity$2 ? pred__40427.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40428) : pred__40427.call(null,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),expr__40428)))){\nreturn (new cljs.pprint.indent_t(G__40389,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40427.cljs$core$IFn$_invoke$arity$2 ? pred__40427.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40428) : pred__40427.call(null,new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),expr__40428)))){\nreturn (new cljs.pprint.indent_t(self__.type_tag,G__40389,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40427.cljs$core$IFn$_invoke$arity$2 ? pred__40427.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),expr__40428) : pred__40427.call(null,new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),expr__40428)))){\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,G__40389,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40427.cljs$core$IFn$_invoke$arity$2 ? pred__40427.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),expr__40428) : pred__40427.call(null,new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),expr__40428)))){\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,G__40389,self__.start_pos,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40427.cljs$core$IFn$_invoke$arity$2 ? pred__40427.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40428) : pred__40427.call(null,new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),expr__40428)))){\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,G__40389,self__.end_pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40427.cljs$core$IFn$_invoke$arity$2 ? pred__40427.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40428) : pred__40427.call(null,new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),expr__40428)))){\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,G__40389,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40389),null));\n}\n}\n}\n}\n}\n}\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),self__.type_tag,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),self__.logical_block,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),self__.relative_to,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),self__.offset,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),self__.start_pos,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926),self__.end_pos,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40389){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.indent_t(self__.type_tag,self__.logical_block,self__.relative_to,self__.offset,self__.start_pos,self__.end_pos,G__40389,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.indent_t.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.indent_t.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type-tag\x22,\x22type-tag\x22,-233331740,null),new cljs.core.Symbol(null,\x22logical-block\x22,\x22logical-block\x22,1059508963,null),new cljs.core.Symbol(null,\x22relative-to\x22,\x22relative-to\x22,1170431476,null),new cljs.core.Symbol(null,\x22offset\x22,\x22offset\x22,1937029838,null),new cljs.core.Symbol(null,\x22start-pos\x22,\x22start-pos\x22,-1985646683,null),new cljs.core.Symbol(null,\x22end-pos\x22,\x22end-pos\x22,-3352399,null)], null);\n}));\n\n(cljs.pprint.indent_t.cljs$lang$type \x3d true);\n\n(cljs.pprint.indent_t.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/indent-t\x22,null,(1),null));\n}));\n\n(cljs.pprint.indent_t.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/indent-t\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/indent-t.\n */\ncljs.pprint.__GT_indent_t \x3d (function cljs$pprint$__GT_indent_t(type_tag,logical_block,relative_to,offset,start_pos,end_pos){\nreturn (new cljs.pprint.indent_t(type_tag,logical_block,relative_to,offset,start_pos,end_pos,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/indent-t, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_indent_t \x3d (function cljs$pprint$map__GT_indent_t(G__40394){\nvar extmap__4454__auto__ \x3d (function (){var G__40437 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40394,new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564),new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926)], 0));\nif(cljs.core.record_QMARK_(G__40394)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40437);\n} else {\nreturn G__40437;\n}\n})();\nreturn (new cljs.pprint.indent_t(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(G__40394),new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(G__40394),new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051).cljs$core$IFn$_invoke$arity$1(G__40394),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(G__40394),new cljs.core.Keyword(null,\x22start-pos\x22,\x22start-pos\x22,668789086).cljs$core$IFn$_invoke$arity$1(G__40394),new cljs.core.Keyword(null,\x22end-pos\x22,\x22end-pos\x22,-1643883926).cljs$core$IFn$_invoke$arity$1(G__40394),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n\ncljs.pprint.make_indent_t \x3d (function cljs$pprint$make_indent_t(logical_block,relative_to,offset,start_pos,end_pos){\nreturn (new cljs.pprint.indent_t(new cljs.core.Keyword(null,\x22indent-t\x22,\x22indent-t\x22,528318969),logical_block,relative_to,offset,start_pos,end_pos,null,null,null));\n});\n\ncljs.pprint.indent_t_QMARK_ \x3d (function cljs$pprint$indent_t_QMARK_(x__39890__auto__){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(x__39890__auto__),new cljs.core.Keyword(null,\x22indent-t\x22,\x22indent-t\x22,528318969));\n});\ncljs.pprint.pp_newline \x3d (function cljs$pprint$pp_newline(){\nreturn \x22\\n\x22;\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.write_token !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.pprint.write_token \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__40442 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__40442.cljs$core$IFn$_invoke$arity$0 ? fexpr__40442.cljs$core$IFn$_invoke$arity$0() : fexpr__40442.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22cljs.pprint\x22,\x22write-token\x22),(function (p1__40440_SHARP_,p2__40439_SHARP_){\nreturn new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(p2__40439_SHARP_);\n}),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\ncljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22start-block-t\x22,\x22start-block-t\x22,-373430594),(function (this$,token){\nvar temp__5753__auto___44860 \x3d new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5753__auto___44860)){\nvar cb_44861 \x3d temp__5753__auto___44860;\n(cb_44861.cljs$core$IFn$_invoke$arity$1 ? cb_44861.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981)) : cb_44861.call(null,new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981)));\n} else {\n}\n\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(token);\nvar temp__5753__auto___44863 \x3d new cljs.core.Keyword(null,\x22prefix\x22,\x22prefix\x22,-265908465).cljs$core$IFn$_invoke$arity$1(lb);\nif(cljs.core.truth_(temp__5753__auto___44863)){\nvar prefix_44864 \x3d temp__5753__auto___44863;\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix_44864);\n} else {\n}\n\nvar col \x3d cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));\ncljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143).cljs$core$IFn$_invoke$arity$1(lb),col);\n\nreturn cljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125).cljs$core$IFn$_invoke$arity$1(lb),col);\n}));\ncljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22end-block-t\x22,\x22end-block-t\x22,1544648735),(function (this$,token){\nvar temp__5753__auto___44866 \x3d new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5753__auto___44866)){\nvar cb_44867 \x3d temp__5753__auto___44866;\n(cb_44867.cljs$core$IFn$_invoke$arity$1 ? cb_44867.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22end\x22,\x22end\x22,-268185958)) : cb_44867.call(null,new cljs.core.Keyword(null,\x22end\x22,\x22end\x22,-268185958)));\n} else {\n}\n\nvar temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(token));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar suffix \x3d temp__5753__auto__;\nreturn cljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),suffix);\n} else {\nreturn null;\n}\n}));\ncljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22indent-t\x22,\x22indent-t\x22,528318969),(function (this$,token){\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(token);\nreturn cljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125).cljs$core$IFn$_invoke$arity$1(lb),(new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(token) + (function (){var pred__40456 \x3d cljs.core._EQ_;\nvar expr__40457 \x3d new cljs.core.Keyword(null,\x22relative-to\x22,\x22relative-to\x22,-470100051).cljs$core$IFn$_invoke$arity$1(token);\nif(cljs.core.truth_((pred__40456.cljs$core$IFn$_invoke$arity$2 ? pred__40456.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),expr__40457) : pred__40456.call(null,new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),expr__40457)))){\nreturn cljs.core.deref(new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143).cljs$core$IFn$_invoke$arity$1(lb));\n} else {\nif(cljs.core.truth_((pred__40456.cljs$core$IFn$_invoke$arity$2 ? pred__40456.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),expr__40457) : pred__40456.call(null,new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),expr__40457)))){\nreturn cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__40457)].join(\x27\x27)));\n}\n}\n})()));\n}));\ncljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22buffer-blob\x22,\x22buffer-blob\x22,-1830112173),(function (this$,token){\nreturn cljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377).cljs$core$IFn$_invoke$arity$1(token));\n}));\ncljs.pprint.write_token.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22nl-t\x22,\x22nl-t\x22,-1608382114),(function (this$,token){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(token),new cljs.core.Keyword(null,\x22mandatory\x22,\x22mandatory\x22,542802336));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(token),new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889))))){\nreturn cljs.core.deref(new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(token)));\n} else {\nreturn false;\n}\n}\n})())){\n(cljs.pprint.emit_nl.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.emit_nl.cljs$core$IFn$_invoke$arity$2(this$,token) : cljs.pprint.emit_nl.call(null,this$,token));\n} else {\nvar temp__5751__auto___44884 \x3d new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5751__auto___44884)){\nvar tws_44886 \x3d temp__5751__auto___44884;\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_44886);\n} else {\n}\n}\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),null);\n}));\ncljs.pprint.write_tokens \x3d (function cljs$pprint$write_tokens(this$,tokens,force_trailing_whitespace){\nvar seq__40470 \x3d cljs.core.seq(tokens);\nvar chunk__40471 \x3d null;\nvar count__40472 \x3d (0);\nvar i__40473 \x3d (0);\nwhile(true){\nif((i__40473 \x3c count__40472)){\nvar token \x3d chunk__40471.cljs$core$IIndexed$_nth$arity$2(null,i__40473);\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(token),new cljs.core.Keyword(null,\x22nl-t\x22,\x22nl-t\x22,-1608382114))))){\nvar temp__5751__auto___44911 \x3d new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5751__auto___44911)){\nvar tws_44914 \x3d temp__5751__auto___44911;\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_44914);\n} else {\n}\n} else {\n}\n\ncljs.pprint.write_token.cljs$core$IFn$_invoke$arity$2(this$,token);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(token));\n\nvar tws_44918 \x3d new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d force_trailing_whitespace;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn tws_44918;\n} else {\nreturn and__4149__auto__;\n}\n})())){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_44918);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),null);\n} else {\n}\n\n\nvar G__44942 \x3d seq__40470;\nvar G__44943 \x3d chunk__40471;\nvar G__44944 \x3d count__40472;\nvar G__44945 \x3d (i__40473 + (1));\nseq__40470 \x3d G__44942;\nchunk__40471 \x3d G__44943;\ncount__40472 \x3d G__44944;\ni__40473 \x3d G__44945;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__40470);\nif(temp__5753__auto__){\nvar seq__40470__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__40470__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__40470__$1);\nvar G__44948 \x3d cljs.core.chunk_rest(seq__40470__$1);\nvar G__44949 \x3d c__4591__auto__;\nvar G__44950 \x3d cljs.core.count(c__4591__auto__);\nvar G__44951 \x3d (0);\nseq__40470 \x3d G__44948;\nchunk__40471 \x3d G__44949;\ncount__40472 \x3d G__44950;\ni__40473 \x3d G__44951;\ncontinue;\n} else {\nvar token \x3d cljs.core.first(seq__40470__$1);\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type-tag\x22,\x22type-tag\x22,-1873863267).cljs$core$IFn$_invoke$arity$1(token),new cljs.core.Keyword(null,\x22nl-t\x22,\x22nl-t\x22,-1608382114))))){\nvar temp__5751__auto___44952 \x3d new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5751__auto___44952)){\nvar tws_44954 \x3d temp__5751__auto___44952;\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_44954);\n} else {\n}\n} else {\n}\n\ncljs.pprint.write_token.cljs$core$IFn$_invoke$arity$2(this$,token);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(token));\n\nvar tws_44957 \x3d new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d force_trailing_whitespace;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn tws_44957;\n} else {\nreturn and__4149__auto__;\n}\n})())){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws_44957);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),null);\n} else {\n}\n\n\nvar G__44959 \x3d cljs.core.next(seq__40470__$1);\nvar G__44960 \x3d null;\nvar G__44961 \x3d (0);\nvar G__44962 \x3d (0);\nseq__40470 \x3d G__44959;\nchunk__40471 \x3d G__44960;\ncount__40472 \x3d G__44961;\ni__40473 \x3d G__44962;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\ncljs.pprint.tokens_fit_QMARK_ \x3d (function cljs$pprint$tokens_fit_QMARK_(this$,tokens){\nvar maxcol \x3d cljs.pprint.get_max_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));\nreturn (((maxcol \x3d\x3d null)) || (((cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)))) + cljs.pprint.buffer_length(tokens)) \x3c maxcol)));\n});\ncljs.pprint.linear_nl_QMARK_ \x3d (function cljs$pprint$linear_nl_QMARK_(this$,lb,section){\nvar or__4160__auto__ \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340).cljs$core$IFn$_invoke$arity$1(lb));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (!(cljs.pprint.tokens_fit_QMARK_(this$,section)));\n}\n});\ncljs.pprint.miser_nl_QMARK_ \x3d (function cljs$pprint$miser_nl_QMARK_(this$,lb,section){\nvar miser_width \x3d cljs.pprint.get_miser_width(this$);\nvar maxcol \x3d cljs.pprint.get_max_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));\nvar and__4149__auto__ \x3d miser_width;\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d maxcol;\nif(cljs.core.truth_(and__4149__auto____$1)){\nif((cljs.core.deref(new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143).cljs$core$IFn$_invoke$arity$1(lb)) \x3e\x3d (maxcol - miser_width))){\nreturn cljs.pprint.linear_nl_QMARK_(this$,lb,section);\n} else {\nreturn false;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.emit_nl_QMARK_ !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.pprint.emit_nl_QMARK_ \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__40509 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__40509.cljs$core$IFn$_invoke$arity$0 ? fexpr__40509.cljs$core$IFn$_invoke$arity$0() : fexpr__40509.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22cljs.pprint\x22,\x22emit-nl?\x22),(function (t,_,___$1,___$2){\nreturn new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(t);\n}),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\ncljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697),(function (newl,this$,section,_){\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(newl);\nreturn cljs.pprint.linear_nl_QMARK_(this$,lb,section);\n}));\ncljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22miser\x22,\x22miser\x22,-556060186),(function (newl,this$,section,_){\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(newl);\nreturn cljs.pprint.miser_nl_QMARK_(this$,lb,section);\n}));\ncljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),(function (newl,this$,section,subsection){\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(newl);\nvar or__4160__auto__ \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875).cljs$core$IFn$_invoke$arity$1(lb));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (!(cljs.pprint.tokens_fit_QMARK_(this$,subsection)));\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nreturn cljs.pprint.miser_nl_QMARK_(this$,lb,section);\n}\n}\n}));\ncljs.pprint.emit_nl_QMARK_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22mandatory\x22,\x22mandatory\x22,542802336),(function (_,___$1,___$2,___$3){\nreturn true;\n}));\ncljs.pprint.get_section \x3d (function cljs$pprint$get_section(buffer){\nvar nl \x3d cljs.core.first(buffer);\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(nl);\nvar section \x3d cljs.core.seq(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__40520_SHARP_){\nreturn (!(((cljs.pprint.nl_t_QMARK_(p1__40520_SHARP_)) \x26\x26 (cljs.pprint.ancestor_QMARK_(new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(p1__40520_SHARP_),lb)))));\n}),cljs.core.next(buffer)));\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [section,cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2((cljs.core.count(section) + (1)),buffer))], null);\n});\ncljs.pprint.get_sub_section \x3d (function cljs$pprint$get_sub_section(buffer){\nvar nl \x3d cljs.core.first(buffer);\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(nl);\nvar section \x3d cljs.core.seq(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__40522_SHARP_){\nvar nl_lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(p1__40522_SHARP_);\nreturn (!(((cljs.pprint.nl_t_QMARK_(p1__40522_SHARP_)) \x26\x26 (((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(nl_lb,lb)) || (cljs.pprint.ancestor_QMARK_(nl_lb,lb)))))));\n}),cljs.core.next(buffer)));\nreturn section;\n});\ncljs.pprint.update_nl_state \x3d (function cljs$pprint$update_nl_state(lb){\ncljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875).cljs$core$IFn$_invoke$arity$1(lb),true);\n\ncljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340).cljs$core$IFn$_invoke$arity$1(lb),true);\n\nvar lb__$1 \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(lb);\nwhile(true){\nif(cljs.core.truth_(lb__$1)){\ncljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22done-nl\x22,\x22done-nl\x22,-381024340).cljs$core$IFn$_invoke$arity$1(lb__$1),true);\n\ncljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22intra-block-nl\x22,\x22intra-block-nl\x22,1808826875).cljs$core$IFn$_invoke$arity$1(lb__$1),true);\n\nvar G__44992 \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(lb__$1);\nlb__$1 \x3d G__44992;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n});\ncljs.pprint.emit_nl \x3d (function cljs$pprint$emit_nl(this$,nl){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.pprint.pp_newline());\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),null);\n\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-block\x22,\x22logical-block\x22,-581022564).cljs$core$IFn$_invoke$arity$1(nl);\nvar prefix \x3d new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813).cljs$core$IFn$_invoke$arity$1(lb);\nif(cljs.core.truth_(prefix)){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);\n} else {\n}\n\nvar istr_44997 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((cljs.core.deref(new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125).cljs$core$IFn$_invoke$arity$1(lb)) - cljs.core.count(prefix)),\x22 \x22));\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),istr_44997);\n\nreturn cljs.pprint.update_nl_state(lb);\n});\ncljs.pprint.split_at_newline \x3d (function cljs$pprint$split_at_newline(tokens){\nvar pre \x3d cljs.core.seq(cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__40527_SHARP_){\nreturn (!(cljs.pprint.nl_t_QMARK_(p1__40527_SHARP_)));\n}),tokens));\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [pre,cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2(cljs.core.count(pre),tokens))], null);\n});\ncljs.pprint.write_token_string \x3d (function cljs$pprint$write_token_string(this$,tokens){\nvar vec__40530 \x3d cljs.pprint.split_at_newline(tokens);\nvar a \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40530,(0),null);\nvar b \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40530,(1),null);\nif(cljs.core.truth_(a)){\ncljs.pprint.write_tokens(this$,a,false);\n} else {\n}\n\nif(cljs.core.truth_(b)){\nvar vec__40533 \x3d cljs.pprint.get_section(b);\nvar section \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40533,(0),null);\nvar remainder \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40533,(1),null);\nvar newl \x3d cljs.core.first(b);\nvar do_nl \x3d cljs.pprint.emit_nl_QMARK_.cljs$core$IFn$_invoke$arity$4(newl,this$,section,cljs.pprint.get_sub_section(b));\nvar result \x3d (cljs.core.truth_(do_nl)?(function (){\ncljs.pprint.emit_nl(this$,newl);\n\nreturn cljs.core.next(b);\n})()\n:b);\nvar long_section \x3d (!(cljs.pprint.tokens_fit_QMARK_(this$,result)));\nvar result__$1 \x3d ((long_section)?(function (){var rem2 \x3d (cljs.pprint.write_token_string.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.write_token_string.cljs$core$IFn$_invoke$arity$2(this$,section) : cljs.pprint.write_token_string.call(null,this$,section));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(rem2,section)){\ncljs.pprint.write_tokens(this$,section,false);\n\nreturn remainder;\n} else {\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(rem2,remainder));\n}\n})():result);\nreturn result__$1;\n} else {\nreturn null;\n}\n});\ncljs.pprint.write_line \x3d (function cljs$pprint$write_line(this$){\nvar buffer \x3d new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nwhile(true){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198),cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,buffer));\n\nif((!(cljs.pprint.tokens_fit_QMARK_(this$,buffer)))){\nvar new_buffer \x3d cljs.pprint.write_token_string(this$,buffer);\nif((!((buffer \x3d\x3d\x3d new_buffer)))){\nvar G__45014 \x3d new_buffer;\nbuffer \x3d G__45014;\ncontinue;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\ncljs.pprint.add_to_buffer \x3d (function cljs$pprint$add_to_buffer(this$,token){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),token));\n\nif((!(cljs.pprint.tokens_fit_QMARK_(this$,new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))))))){\nreturn cljs.pprint.write_line(this$);\n} else {\nreturn null;\n}\n});\ncljs.pprint.write_buffered_output \x3d (function cljs$pprint$write_buffered_output(this$){\ncljs.pprint.write_line(this$);\n\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar buf \x3d temp__5751__auto__;\ncljs.pprint.write_tokens(this$,buf,true);\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198),cljs.core.PersistentVector.EMPTY);\n} else {\nreturn null;\n}\n});\ncljs.pprint.write_white_space \x3d (function cljs$pprint$write_white_space(this$){\nvar temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar tws \x3d temp__5753__auto__;\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),tws);\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),null);\n} else {\nreturn null;\n}\n});\ncljs.pprint.write_initial_lines \x3d (function cljs$pprint$write_initial_lines(this$,s){\nvar lines \x3d clojure.string.split.cljs$core$IFn$_invoke$arity$3(s,\x22\\n\x22,(-1));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(lines),(1))){\nreturn s;\n} else {\nvar prefix \x3d new cljs.core.Keyword(null,\x22per-line-prefix\x22,\x22per-line-prefix\x22,846941813).cljs$core$IFn$_invoke$arity$1(cljs.core.first(new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)))));\nvar l \x3d cljs.core.first(lines);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22buffering\x22,\x22buffering\x22,-876713613),new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))))){\nvar oldpos_45032 \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nvar newpos_45033 \x3d (oldpos_45032 + cljs.core.count(l));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),newpos_45033);\n\ncljs.pprint.add_to_buffer(this$,cljs.pprint.make_buffer_blob(l,null,oldpos_45032,newpos_45033));\n\ncljs.pprint.write_buffered_output(this$);\n} else {\ncljs.pprint.write_white_space(this$);\n\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),l);\n}\n\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),\x22\\n\x22);\n\nvar seq__40545_45046 \x3d cljs.core.seq(cljs.core.next(cljs.core.butlast(lines)));\nvar chunk__40546_45047 \x3d null;\nvar count__40547_45048 \x3d (0);\nvar i__40548_45049 \x3d (0);\nwhile(true){\nif((i__40548_45049 \x3c count__40547_45048)){\nvar l_45051__$1 \x3d chunk__40546_45047.cljs$core$IIndexed$_nth$arity$2(null,i__40548_45049);\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),l_45051__$1);\n\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.pprint.pp_newline());\n\nif(cljs.core.truth_(prefix)){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);\n} else {\n}\n\n\nvar G__45053 \x3d seq__40545_45046;\nvar G__45054 \x3d chunk__40546_45047;\nvar G__45055 \x3d count__40547_45048;\nvar G__45056 \x3d (i__40548_45049 + (1));\nseq__40545_45046 \x3d G__45053;\nchunk__40546_45047 \x3d G__45054;\ncount__40547_45048 \x3d G__45055;\ni__40548_45049 \x3d G__45056;\ncontinue;\n} else {\nvar temp__5753__auto___45057 \x3d cljs.core.seq(seq__40545_45046);\nif(temp__5753__auto___45057){\nvar seq__40545_45058__$1 \x3d temp__5753__auto___45057;\nif(cljs.core.chunked_seq_QMARK_(seq__40545_45058__$1)){\nvar c__4591__auto___45059 \x3d cljs.core.chunk_first(seq__40545_45058__$1);\nvar G__45060 \x3d cljs.core.chunk_rest(seq__40545_45058__$1);\nvar G__45061 \x3d c__4591__auto___45059;\nvar G__45062 \x3d cljs.core.count(c__4591__auto___45059);\nvar G__45063 \x3d (0);\nseq__40545_45046 \x3d G__45060;\nchunk__40546_45047 \x3d G__45061;\ncount__40547_45048 \x3d G__45062;\ni__40548_45049 \x3d G__45063;\ncontinue;\n} else {\nvar l_45064__$1 \x3d cljs.core.first(seq__40545_45058__$1);\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),l_45064__$1);\n\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),cljs.pprint.pp_newline());\n\nif(cljs.core.truth_(prefix)){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);\n} else {\n}\n\n\nvar G__45072 \x3d cljs.core.next(seq__40545_45058__$1);\nvar G__45073 \x3d null;\nvar G__45074 \x3d (0);\nvar G__45075 \x3d (0);\nseq__40545_45046 \x3d G__45072;\nchunk__40546_45047 \x3d G__45073;\ncount__40547_45048 \x3d G__45074;\ni__40548_45049 \x3d G__45075;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22buffering\x22,\x22buffering\x22,-876713613),new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108));\n\nreturn cljs.core.last(lines);\n}\n});\ncljs.pprint.p_write_char \x3d (function cljs$pprint$p_write_char(this$,c){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108))){\ncljs.pprint.write_white_space(this$);\n\nreturn cljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),c);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(c,\x22\\n\x22)){\nreturn cljs.pprint.write_initial_lines(this$,\x22\\n\x22);\n} else {\nvar oldpos \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nvar newpos \x3d (oldpos + (1));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),newpos);\n\nreturn cljs.pprint.add_to_buffer(this$,cljs.pprint.make_buffer_blob(cljs.core.char$(c),null,oldpos,newpos));\n}\n}\n});\ncljs.pprint.pretty_writer \x3d (function cljs$pprint$pretty_writer(writer,max_columns,miser_width){\nvar lb \x3d (new cljs.pprint.logical_block(null,null,cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),null,null,null,null,null,null,null));\nvar fields \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776),new cljs.core.Keyword(null,\x22miser-width\x22,\x22miser-width\x22,-1310049437),new cljs.core.Keyword(null,\x22buffer-block\x22,\x22buffer-block\x22,-10937307),new cljs.core.Keyword(null,\x22pretty-writer\x22,\x22pretty-writer\x22,-1222834267),new cljs.core.Keyword(null,\x22sections\x22,\x22sections\x22,-886710106),new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691),new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322),new cljs.core.Keyword(null,\x22buffer-level\x22,\x22buffer-level\x22,928864731),new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198)],[lb,miser_width,lb,true,null,new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108),(0),null,cljs.pprint.column_writer.cljs$core$IFn$_invoke$arity$2(writer,max_columns),(1),cljs.core.PersistentVector.EMPTY]));\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.t_cljs$pprint40557 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IDeref}\n * @implements {cljs.pprint.IPrettyFlush}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.pprint.t_cljs$pprint40557 \x3d (function (writer,max_columns,miser_width,lb,fields,meta40558){\nthis.writer \x3d writer;\nthis.max_columns \x3d max_columns;\nthis.miser_width \x3d miser_width;\nthis.lb \x3d lb;\nthis.fields \x3d fields;\nthis.meta40558 \x3d meta40558;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1074167808;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_40559,meta40558__$1){\nvar self__ \x3d this;\nvar _40559__$1 \x3d this;\nreturn (new cljs.pprint.t_cljs$pprint40557(self__.writer,self__.max_columns,self__.miser_width,self__.lb,self__.fields,meta40558__$1));\n}));\n\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_40559){\nvar self__ \x3d this;\nvar _40559__$1 \x3d this;\nreturn self__.meta40558;\n}));\n\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.fields;\n}));\n\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (this$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar pred__40562 \x3d cljs.core._EQ_;\nvar expr__40563 \x3d cljs.core.type(x);\nif(cljs.core.truth_((pred__40562.cljs$core$IFn$_invoke$arity$2 ? pred__40562.cljs$core$IFn$_invoke$arity$2(String,expr__40563) : pred__40562.call(null,String,expr__40563)))){\nvar s0 \x3d cljs.pprint.write_initial_lines(this$__$1,x);\nvar s \x3d clojure.string.replace_first(s0,/\\s+$/,\x22\x22);\nvar white_space \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s0,((s).length));\nvar mode \x3d new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1)));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(mode,new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108))){\ncljs.pprint.write_white_space(this$__$1);\n\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))),s);\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$__$1),cljs.core.assoc,new cljs.core.Keyword(null,\x22trailing-white-space\x22,\x22trailing-white-space\x22,1496006996),white_space);\n} else {\nvar oldpos \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1)));\nvar newpos \x3d (oldpos + cljs.core.count(s0));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$__$1),cljs.core.assoc,new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),newpos);\n\nreturn cljs.pprint.add_to_buffer(this$__$1,cljs.pprint.make_buffer_blob(s,white_space,oldpos,newpos));\n}\n} else {\nif(cljs.core.truth_((pred__40562.cljs$core$IFn$_invoke$arity$2 ? pred__40562.cljs$core$IFn$_invoke$arity$2(Number,expr__40563) : pred__40562.call(null,Number,expr__40563)))){\nreturn cljs.pprint.p_write_char(this$__$1,x);\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__40563)].join(\x27\x27)));\n}\n}\n}));\n\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nthis$__$1.cljs$pprint$IPrettyFlush$_ppflush$arity$1(null);\n\nreturn cljs.core._flush(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))));\n}));\n\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$pprint$IPrettyFlush$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.pprint.t_cljs$pprint40557.prototype.cljs$pprint$IPrettyFlush$_ppflush$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))),new cljs.core.Keyword(null,\x22buffering\x22,\x22buffering\x22,-876713613))){\ncljs.pprint.write_tokens(this$__$1,new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$__$1))),true);\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$__$1),cljs.core.assoc,new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198),cljs.core.PersistentVector.EMPTY);\n} else {\nreturn cljs.pprint.write_white_space(this$__$1);\n}\n}));\n\n(cljs.pprint.t_cljs$pprint40557.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22writer\x22,\x22writer\x22,1362963291,null),new cljs.core.Symbol(null,\x22max-columns\x22,\x22max-columns\x22,-912112507,null),new cljs.core.Symbol(null,\x22miser-width\x22,\x22miser-width\x22,330482090,null),new cljs.core.Symbol(null,\x22lb\x22,\x22lb\x22,950310490,null),new cljs.core.Symbol(null,\x22fields\x22,\x22fields\x22,-291534703,null),new cljs.core.Symbol(null,\x22meta40558\x22,\x22meta40558\x22,645979452,null)], null);\n}));\n\n(cljs.pprint.t_cljs$pprint40557.cljs$lang$type \x3d true);\n\n(cljs.pprint.t_cljs$pprint40557.cljs$lang$ctorStr \x3d \x22cljs.pprint/t_cljs$pprint40557\x22);\n\n(cljs.pprint.t_cljs$pprint40557.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.pprint/t_cljs$pprint40557\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/t_cljs$pprint40557.\n */\ncljs.pprint.__GT_t_cljs$pprint40557 \x3d (function cljs$pprint$pretty_writer_$___GT_t_cljs$pprint40557(writer__$1,max_columns__$1,miser_width__$1,lb__$1,fields__$1,meta40558){\nreturn (new cljs.pprint.t_cljs$pprint40557(writer__$1,max_columns__$1,miser_width__$1,lb__$1,fields__$1,meta40558));\n});\n\n}\n\nreturn (new cljs.pprint.t_cljs$pprint40557(writer,max_columns,miser_width,lb,fields,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.pprint.start_block \x3d (function cljs$pprint$start_block(this$,prefix,per_line_prefix,suffix){\nvar lb \x3d (new cljs.pprint.logical_block(new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),null,cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0)),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false),prefix,per_line_prefix,suffix,null,null,null,null));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776),lb);\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108))){\ncljs.pprint.write_white_space(this$);\n\nvar temp__5753__auto___45095 \x3d new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5753__auto___45095)){\nvar cb_45097 \x3d temp__5753__auto___45095;\n(cb_45097.cljs$core$IFn$_invoke$arity$1 ? cb_45097.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981)) : cb_45097.call(null,new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981)));\n} else {\n}\n\nif(cljs.core.truth_(prefix)){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),prefix);\n} else {\n}\n\nvar col \x3d cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));\ncljs.core.reset_BANG_(lb.start_col,col);\n\nreturn cljs.core.reset_BANG_(lb.indent,col);\n} else {\nvar oldpos \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nvar newpos \x3d (oldpos + (cljs.core.truth_(prefix)?cljs.core.count(prefix):(0)));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),newpos);\n\nreturn cljs.pprint.add_to_buffer(this$,cljs.pprint.make_start_block_t(lb,oldpos,newpos));\n}\n});\ncljs.pprint.end_block \x3d (function cljs$pprint$end_block(this$){\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nvar suffix \x3d new cljs.core.Keyword(null,\x22suffix\x22,\x22suffix\x22,367373057).cljs$core$IFn$_invoke$arity$1(lb);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108))){\ncljs.pprint.write_white_space(this$);\n\nif(cljs.core.truth_(suffix)){\ncljs.core._write(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),suffix);\n} else {\n}\n\nvar temp__5753__auto___45103 \x3d new cljs.core.Keyword(null,\x22logical-block-callback\x22,\x22logical-block-callback\x22,1612691194).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core.truth_(temp__5753__auto___45103)){\nvar cb_45104 \x3d temp__5753__auto___45103;\n(cb_45104.cljs$core$IFn$_invoke$arity$1 ? cb_45104.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22end\x22,\x22end\x22,-268185958)) : cb_45104.call(null,new cljs.core.Keyword(null,\x22end\x22,\x22end\x22,-268185958)));\n} else {\n}\n} else {\nvar oldpos_45109 \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nvar newpos_45110 \x3d (oldpos_45109 + (cljs.core.truth_(suffix)?cljs.core.count(suffix):(0)));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),newpos_45110);\n\ncljs.pprint.add_to_buffer(this$,cljs.pprint.make_end_block_t(lb,oldpos_45109,newpos_45110));\n}\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776),new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(lb));\n});\ncljs.pprint.nl \x3d (function cljs$pprint$nl(this$,type){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.core.deref(this$),cljs.core.assoc,new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691),new cljs.core.Keyword(null,\x22buffering\x22,\x22buffering\x22,-876713613));\n\nvar pos \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nreturn cljs.pprint.add_to_buffer(this$,cljs.pprint.make_nl_t(type,new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),pos,pos));\n});\ncljs.pprint.indent \x3d (function cljs$pprint$indent(this$,relative_to,offset){\nvar lb \x3d new cljs.core.Keyword(null,\x22logical-blocks\x22,\x22logical-blocks\x22,-1466339776).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22mode\x22,\x22mode\x22,654403691).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))),new cljs.core.Keyword(null,\x22writing\x22,\x22writing\x22,-1486865108))){\ncljs.pprint.write_white_space(this$);\n\nreturn cljs.core.reset_BANG_(new cljs.core.Keyword(null,\x22indent\x22,\x22indent\x22,-148200125).cljs$core$IFn$_invoke$arity$1(lb),(offset + (function (){var pred__40583 \x3d cljs.core._EQ_;\nvar expr__40584 \x3d relative_to;\nif(cljs.core.truth_((pred__40583.cljs$core$IFn$_invoke$arity$2 ? pred__40583.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),expr__40584) : pred__40583.call(null,new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),expr__40584)))){\nreturn cljs.core.deref(new cljs.core.Keyword(null,\x22start-col\x22,\x22start-col\x22,668080143).cljs$core$IFn$_invoke$arity$1(lb));\n} else {\nif(cljs.core.truth_((pred__40583.cljs$core$IFn$_invoke$arity$2 ? pred__40583.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),expr__40584) : pred__40583.call(null,new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),expr__40584)))){\nreturn cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$))));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__40584)].join(\x27\x27)));\n}\n}\n})()));\n} else {\nvar pos \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\nreturn cljs.pprint.add_to_buffer(this$,cljs.pprint.make_indent_t(lb,relative_to,offset,pos,pos));\n}\n});\ncljs.pprint.get_miser_width \x3d (function cljs$pprint$get_miser_width(this$){\nreturn new cljs.core.Keyword(null,\x22miser-width\x22,\x22miser-width\x22,-1310049437).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(this$)));\n});\n/**\n * Bind to true if you want write to use pretty printing\n */\ncljs.pprint._STAR_print_pretty_STAR_ \x3d true;\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint._STAR_print_pprint_dispatch_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * The pretty print dispatch function. Use with-pprint-dispatch or\n * set-pprint-dispatch to modify.\n */\ncljs.pprint._STAR_print_pprint_dispatch_STAR_ \x3d null;\n}\n/**\n * Pretty printing will try to avoid anything going beyond this column.\n * Set it to nil to have pprint let the line be arbitrarily long. This will ignore all\n * non-mandatory newlines.\n */\ncljs.pprint._STAR_print_right_margin_STAR_ \x3d (72);\n/**\n * The column at which to enter miser style. Depending on the dispatch table,\n * miser style add newlines in more places to try to keep lines short allowing for further\n * levels of nesting.\n */\ncljs.pprint._STAR_print_miser_width_STAR_ \x3d (40);\n/**\n * Maximum number of lines to print in a pretty print instance (N.B. This is not yet used)\n */\ncljs.pprint._STAR_print_lines_STAR_ \x3d null;\n/**\n * Mark circular structures (N.B. This is not yet used)\n */\ncljs.pprint._STAR_print_circle_STAR_ \x3d null;\n/**\n * Mark repeated structures rather than repeat them (N.B. This is not yet used)\n */\ncljs.pprint._STAR_print_shared_STAR_ \x3d null;\n/**\n * Don\x27t print namespaces with symbols. This is particularly useful when\n * pretty printing the results of macro expansions\n */\ncljs.pprint._STAR_print_suppress_namespaces_STAR_ \x3d null;\n/**\n * Print a radix specifier in front of integers and rationals. If *print-base* is 2, 8,\n * or 16, then the radix specifier used is #b, #o, or #x, respectively. Otherwise the\n * radix specifier is in the form #XXr where XX is the decimal value of *print-base* \n */\ncljs.pprint._STAR_print_radix_STAR_ \x3d null;\n/**\n * The base to use for printing integers and rationals.\n */\ncljs.pprint._STAR_print_base_STAR_ \x3d (10);\ncljs.pprint._STAR_current_level_STAR_ \x3d (0);\ncljs.pprint._STAR_current_length_STAR_ \x3d null;\ncljs.pprint.table_ize \x3d (function cljs$pprint$table_ize(t,m){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__40591_SHARP_){\nvar temp__5753__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(t,cljs.core.key(p1__40591_SHARP_));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,cljs.core.val(p1__40591_SHARP_)], null);\n} else {\nreturn null;\n}\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([m], 0)));\n});\n/**\n * Return true iff x is a PrettyWriter\n */\ncljs.pprint.pretty_writer_QMARK_ \x3d (function cljs$pprint$pretty_writer_QMARK_(x){\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (32768))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IDeref$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,x))){\nreturn new cljs.core.Keyword(null,\x22pretty-writer\x22,\x22pretty-writer\x22,-1222834267).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(x)));\n} else {\nreturn false;\n}\n});\n/**\n * Wrap base-writer in a PrettyWriter with the specified right-margin and miser-width\n */\ncljs.pprint.make_pretty_writer \x3d (function cljs$pprint$make_pretty_writer(base_writer,right_margin,miser_width){\nreturn cljs.pprint.pretty_writer(base_writer,right_margin,miser_width);\n});\n/**\n * Write an object to *out* subject to the current bindings of the printer control\n * variables. Use the kw-args argument to override individual variables for this call (and\n * any recursive calls).\n * \n * *out* must be a PrettyWriter if pretty printing is enabled. This is the responsibility\n * of the caller.\n * \n * This method is primarily intended for use by pretty print dispatch functions that\n * already know that the pretty printer will have set up their environment appropriately.\n * Normal library clients should use the standard \x22write\x22 interface. \n */\ncljs.pprint.write_out \x3d (function cljs$pprint$write_out(object){\nvar length_reached \x3d (function (){var and__4149__auto__ \x3d cljs.pprint._STAR_current_length_STAR_;\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d cljs.core._STAR_print_length_STAR_;\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn (cljs.pprint._STAR_current_length_STAR_ \x3e\x3d cljs.core._STAR_print_length_STAR_);\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.not(cljs.pprint._STAR_print_pretty_STAR_)){\ncljs.pprint.pr.call(null,object);\n} else {\nif(cljs.core.truth_(length_reached)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n} else {\nif(cljs.core.truth_(cljs.pprint._STAR_current_length_STAR_)){\n(cljs.pprint._STAR_current_length_STAR_ \x3d (cljs.pprint._STAR_current_length_STAR_ + (1)));\n} else {\n}\n\ncljs.pprint._STAR_print_pprint_dispatch_STAR_.call(null,object);\n}\n}\n\nreturn length_reached;\n});\n/**\n * Write an object subject to the current bindings of the printer control variables.\n * Use the kw-args argument to override individual variables for this call (and any\n * recursive calls). Returns the string result if :stream is nil or nil otherwise.\n * \n * The following keyword arguments can be passed with values:\n *   Keyword              Meaning                              Default value\n *   :stream              Writer for output or nil             true (indicates *out*)\n *   :base                Base to use for writing rationals    Current value of *print-base*\n *   :circle*             If true, mark circular structures    Current value of *print-circle*\n *   :length              Maximum elements to show in sublists Current value of *print-length*\n *   :level               Maximum depth                        Current value of *print-level*\n *   :lines*              Maximum lines of output              Current value of *print-lines*\n *   :miser-width         Width to enter miser mode            Current value of *print-miser-width*\n *   :dispatch            The pretty print dispatch function   Current value of *print-pprint-dispatch*\n *   :pretty              If true, do pretty printing          Current value of *print-pretty*\n *   :radix               If true, prepend a radix specifier   Current value of *print-radix*\n *   :readably*           If true, print readably              Current value of *print-readably*\n *   :right-margin        The column for the right margin      Current value of *print-right-margin*\n *   :suppress-namespaces If true, no namespaces in symbols    Current value of *print-suppress-namespaces*\n * \n *   * \x3d not yet supported\n */\ncljs.pprint.write \x3d (function cljs$pprint$write(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___45121 \x3d arguments.length;\nvar i__4772__auto___45122 \x3d (0);\nwhile(true){\nif((i__4772__auto___45122 \x3c len__4771__auto___45121)){\nargs__4777__auto__.push((arguments[i__4772__auto___45122]));\n\nvar G__45123 \x3d (i__4772__auto___45122 + (1));\ni__4772__auto___45122 \x3d G__45123;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.pprint.write.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.pprint.write.cljs$core$IFn$_invoke$arity$variadic \x3d (function (object,kw_args){\nvar options \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22stream\x22,\x22stream\x22,1534941648),true], null),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,kw_args)], 0));\nvar _STAR_print_base_STAR__orig_val__40604 \x3d cljs.pprint._STAR_print_base_STAR_;\nvar _STAR_print_circle_STAR__orig_val__40605 \x3d cljs.pprint._STAR_print_circle_STAR_;\nvar _STAR_print_length_STAR__orig_val__40606 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__40607 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_lines_STAR__orig_val__40608 \x3d cljs.pprint._STAR_print_lines_STAR_;\nvar _STAR_print_miser_width_STAR__orig_val__40609 \x3d cljs.pprint._STAR_print_miser_width_STAR_;\nvar _STAR_print_pprint_dispatch_STAR__orig_val__40610 \x3d cljs.pprint._STAR_print_pprint_dispatch_STAR_;\nvar _STAR_print_pretty_STAR__orig_val__40611 \x3d cljs.pprint._STAR_print_pretty_STAR_;\nvar _STAR_print_radix_STAR__orig_val__40612 \x3d cljs.pprint._STAR_print_radix_STAR_;\nvar _STAR_print_readably_STAR__orig_val__40613 \x3d cljs.core._STAR_print_readably_STAR_;\nvar _STAR_print_right_margin_STAR__orig_val__40614 \x3d cljs.pprint._STAR_print_right_margin_STAR_;\nvar _STAR_print_suppress_namespaces_STAR__orig_val__40615 \x3d cljs.pprint._STAR_print_suppress_namespaces_STAR_;\nvar _STAR_print_base_STAR__temp_val__40616 \x3d new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_base_STAR_);\nvar _STAR_print_circle_STAR__temp_val__40617 \x3d new cljs.core.Keyword(null,\x22circle\x22,\x22circle\x22,1903212362).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_circle_STAR_);\nvar _STAR_print_length_STAR__temp_val__40618 \x3d new cljs.core.Keyword(null,\x22length\x22,\x22length\x22,588987862).cljs$core$IFn$_invoke$arity$2(options,cljs.core._STAR_print_length_STAR_);\nvar _STAR_print_level_STAR__temp_val__40619 \x3d new cljs.core.Keyword(null,\x22level\x22,\x22level\x22,1290497552).cljs$core$IFn$_invoke$arity$2(options,cljs.core._STAR_print_level_STAR_);\nvar _STAR_print_lines_STAR__temp_val__40620 \x3d new cljs.core.Keyword(null,\x22lines\x22,\x22lines\x22,-700165781).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_lines_STAR_);\nvar _STAR_print_miser_width_STAR__temp_val__40621 \x3d new cljs.core.Keyword(null,\x22miser-width\x22,\x22miser-width\x22,-1310049437).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_miser_width_STAR_);\nvar _STAR_print_pprint_dispatch_STAR__temp_val__40622 \x3d new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_pprint_dispatch_STAR_);\nvar _STAR_print_pretty_STAR__temp_val__40623 \x3d new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_pretty_STAR_);\nvar _STAR_print_radix_STAR__temp_val__40624 \x3d new cljs.core.Keyword(null,\x22radix\x22,\x22radix\x22,857016463).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_radix_STAR_);\nvar _STAR_print_readably_STAR__temp_val__40625 \x3d new cljs.core.Keyword(null,\x22readably\x22,\x22readably\x22,1129599760).cljs$core$IFn$_invoke$arity$2(options,cljs.core._STAR_print_readably_STAR_);\nvar _STAR_print_right_margin_STAR__temp_val__40626 \x3d new cljs.core.Keyword(null,\x22right-margin\x22,\x22right-margin\x22,-810413306).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_right_margin_STAR_);\nvar _STAR_print_suppress_namespaces_STAR__temp_val__40627 \x3d new cljs.core.Keyword(null,\x22suppress-namespaces\x22,\x22suppress-namespaces\x22,2130686956).cljs$core$IFn$_invoke$arity$2(options,cljs.pprint._STAR_print_suppress_namespaces_STAR_);\n(cljs.pprint._STAR_print_base_STAR_ \x3d _STAR_print_base_STAR__temp_val__40616);\n\n(cljs.pprint._STAR_print_circle_STAR_ \x3d _STAR_print_circle_STAR__temp_val__40617);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__40618);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__40619);\n\n(cljs.pprint._STAR_print_lines_STAR_ \x3d _STAR_print_lines_STAR__temp_val__40620);\n\n(cljs.pprint._STAR_print_miser_width_STAR_ \x3d _STAR_print_miser_width_STAR__temp_val__40621);\n\n(cljs.pprint._STAR_print_pprint_dispatch_STAR_ \x3d _STAR_print_pprint_dispatch_STAR__temp_val__40622);\n\n(cljs.pprint._STAR_print_pretty_STAR_ \x3d _STAR_print_pretty_STAR__temp_val__40623);\n\n(cljs.pprint._STAR_print_radix_STAR_ \x3d _STAR_print_radix_STAR__temp_val__40624);\n\n(cljs.core._STAR_print_readably_STAR_ \x3d _STAR_print_readably_STAR__temp_val__40625);\n\n(cljs.pprint._STAR_print_right_margin_STAR_ \x3d _STAR_print_right_margin_STAR__temp_val__40626);\n\n(cljs.pprint._STAR_print_suppress_namespaces_STAR_ \x3d _STAR_print_suppress_namespaces_STAR__temp_val__40627);\n\ntry{try{var sb \x3d (new goog.string.StringBuffer());\nvar optval \x3d ((cljs.core.contains_QMARK_(options,new cljs.core.Keyword(null,\x22stream\x22,\x22stream\x22,1534941648)))?new cljs.core.Keyword(null,\x22stream\x22,\x22stream\x22,1534941648).cljs$core$IFn$_invoke$arity$1(options):true);\nvar base_writer \x3d ((((optval \x3d\x3d\x3d true) || ((optval \x3d\x3d null))))?(new cljs.core.StringBufferWriter(sb)):optval);\nif(cljs.core.truth_(cljs.pprint._STAR_print_pretty_STAR_)){\nvar base_writer__39861__auto___45165 \x3d base_writer;\nvar new_writer__39862__auto___45166 \x3d cljs.core.not(cljs.pprint.pretty_writer_QMARK_(base_writer__39861__auto___45165));\nvar _STAR_out_STAR__orig_val__40630_45171 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__40631_45172 \x3d ((new_writer__39862__auto___45166)?cljs.pprint.make_pretty_writer(base_writer__39861__auto___45165,cljs.pprint._STAR_print_right_margin_STAR_,cljs.pprint._STAR_print_miser_width_STAR_):base_writer__39861__auto___45165);\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__40631_45172);\n\ntry{cljs.pprint.write_out(object);\n\ncljs.pprint._ppflush(cljs.core._STAR_out_STAR_);\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__40630_45171);\n}} else {\nvar _STAR_out_STAR__orig_val__40632_45190 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__40633_45191 \x3d base_writer;\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__40633_45191);\n\ntry{cljs.pprint.pr.call(null,object);\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__40632_45190);\n}}\n\nif(optval \x3d\x3d\x3d true){\ncljs.core.string_print(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));\n} else {\n}\n\nif((optval \x3d\x3d null)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n} else {\nreturn null;\n}\n}finally {}}finally {(cljs.pprint._STAR_print_suppress_namespaces_STAR_ \x3d _STAR_print_suppress_namespaces_STAR__orig_val__40615);\n\n(cljs.pprint._STAR_print_right_margin_STAR_ \x3d _STAR_print_right_margin_STAR__orig_val__40614);\n\n(cljs.core._STAR_print_readably_STAR_ \x3d _STAR_print_readably_STAR__orig_val__40613);\n\n(cljs.pprint._STAR_print_radix_STAR_ \x3d _STAR_print_radix_STAR__orig_val__40612);\n\n(cljs.pprint._STAR_print_pretty_STAR_ \x3d _STAR_print_pretty_STAR__orig_val__40611);\n\n(cljs.pprint._STAR_print_pprint_dispatch_STAR_ \x3d _STAR_print_pprint_dispatch_STAR__orig_val__40610);\n\n(cljs.pprint._STAR_print_miser_width_STAR_ \x3d _STAR_print_miser_width_STAR__orig_val__40609);\n\n(cljs.pprint._STAR_print_lines_STAR_ \x3d _STAR_print_lines_STAR__orig_val__40608);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__40607);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__40606);\n\n(cljs.pprint._STAR_print_circle_STAR_ \x3d _STAR_print_circle_STAR__orig_val__40605);\n\n(cljs.pprint._STAR_print_base_STAR_ \x3d _STAR_print_base_STAR__orig_val__40604);\n}}));\n\n(cljs.pprint.write.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.pprint.write.cljs$lang$applyTo \x3d (function (seq40600){\nvar G__40601 \x3d cljs.core.first(seq40600);\nvar seq40600__$1 \x3d cljs.core.next(seq40600);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40601,seq40600__$1);\n}));\n\ncljs.pprint.pprint \x3d (function cljs$pprint$pprint(var_args){\nvar G__40635 \x3d arguments.length;\nswitch (G__40635) {\ncase 1:\nreturn cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$1 \x3d (function (object){\nvar sb \x3d (new goog.string.StringBuffer());\nvar _STAR_out_STAR__orig_val__40637 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__40638 \x3d (new cljs.core.StringBufferWriter(sb));\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__40638);\n\ntry{cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$2(object,cljs.core._STAR_out_STAR_);\n\nreturn cljs.core.string_print(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__40637);\n}}));\n\n(cljs.pprint.pprint.cljs$core$IFn$_invoke$arity$2 \x3d (function (object,writer){\nvar base_writer__39861__auto__ \x3d writer;\nvar new_writer__39862__auto__ \x3d cljs.core.not(cljs.pprint.pretty_writer_QMARK_(base_writer__39861__auto__));\nvar _STAR_out_STAR__orig_val__40639 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__40640 \x3d ((new_writer__39862__auto__)?cljs.pprint.make_pretty_writer(base_writer__39861__auto__,cljs.pprint._STAR_print_right_margin_STAR_,cljs.pprint._STAR_print_miser_width_STAR_):base_writer__39861__auto__);\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__40640);\n\ntry{var _STAR_print_pretty_STAR__orig_val__40641_45222 \x3d cljs.pprint._STAR_print_pretty_STAR_;\nvar _STAR_print_pretty_STAR__temp_val__40642_45223 \x3d true;\n(cljs.pprint._STAR_print_pretty_STAR_ \x3d _STAR_print_pretty_STAR__temp_val__40642_45223);\n\ntry{cljs.pprint.write_out(object);\n}finally {(cljs.pprint._STAR_print_pretty_STAR_ \x3d _STAR_print_pretty_STAR__orig_val__40641_45222);\n}\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),cljs.pprint.get_column(cljs.core._STAR_out_STAR_))))){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22\\n\x22);\n} else {\n}\n\nreturn cljs.pprint._ppflush(cljs.core._STAR_out_STAR_);\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__40639);\n}}));\n\n(cljs.pprint.pprint.cljs$lang$maxFixedArity \x3d 2);\n\ncljs.pprint.set_pprint_dispatch \x3d (function cljs$pprint$set_pprint_dispatch(function$){\n(cljs.pprint._STAR_print_pprint_dispatch_STAR_ \x3d function$);\n\nreturn null;\n});\ncljs.pprint.check_enumerated_arg \x3d (function cljs$pprint$check_enumerated_arg(arg,choices){\nif(cljs.core.not((choices.cljs$core$IFn$_invoke$arity$1 ? choices.cljs$core$IFn$_invoke$arity$1(arg) : choices.call(null,arg)))){\nthrow (new Error([\x22Bad argument: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arg),\x22. It must be one of \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(choices)].join(\x27\x27)));\n} else {\nreturn null;\n}\n});\ncljs.pprint.level_exceeded \x3d (function cljs$pprint$level_exceeded(){\nvar and__4149__auto__ \x3d cljs.core._STAR_print_level_STAR_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (cljs.pprint._STAR_current_level_STAR_ \x3e\x3d cljs.core._STAR_print_level_STAR_);\n} else {\nreturn and__4149__auto__;\n}\n});\n/**\n * Print a conditional newline to a pretty printing stream. kind specifies if the\n *   newline is :linear, :miser, :fill, or :mandatory.\n * \n *   This function is intended for use when writing custom dispatch functions.\n * \n *   Output is sent to *out* which must be a pretty printing writer.\n */\ncljs.pprint.pprint_newline \x3d (function cljs$pprint$pprint_newline(kind){\ncljs.pprint.check_enumerated_arg(kind,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22mandatory\x22,\x22mandatory\x22,542802336),null,new cljs.core.Keyword(null,\x22miser\x22,\x22miser\x22,-556060186),null,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),null,new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697),null], null), null));\n\nreturn cljs.pprint.nl(cljs.core._STAR_out_STAR_,kind);\n});\n/**\n * Create an indent at this point in the pretty printing stream. This defines how\n * following lines are indented. relative-to can be either :block or :current depending\n * whether the indent should be computed relative to the start of the logical block or\n * the current column position. n is an offset.\n * \n * This function is intended for use when writing custom dispatch functions.\n * \n * Output is sent to *out* which must be a pretty printing writer.\n */\ncljs.pprint.pprint_indent \x3d (function cljs$pprint$pprint_indent(relative_to,n){\ncljs.pprint.check_enumerated_arg(relative_to,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),null,new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),null], null), null));\n\nreturn cljs.pprint.indent(cljs.core._STAR_out_STAR_,relative_to,n);\n});\n/**\n * Tab at this point in the pretty printing stream. kind specifies whether the tab\n * is :line, :section, :line-relative, or :section-relative.\n * \n * Colnum and colinc specify the target column and the increment to move the target\n * forward if the output is already past the original target.\n * \n * This function is intended for use when writing custom dispatch functions.\n * \n * Output is sent to *out* which must be a pretty printing writer.\n * \n * THIS FUNCTION IS NOT YET IMPLEMENTED.\n */\ncljs.pprint.pprint_tab \x3d (function cljs$pprint$pprint_tab(kind,colnum,colinc){\ncljs.pprint.check_enumerated_arg(kind,new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22section\x22,\x22section\x22,-300141526),null,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),null,new cljs.core.Keyword(null,\x22line-relative\x22,\x22line-relative\x22,1149548219),null,new cljs.core.Keyword(null,\x22section-relative\x22,\x22section-relative\x22,-658298724),null], null), null));\n\nthrow (new Error(\x22pprint-tab is not yet implemented\x22));\n});\n/**\n * An implementation of a Common Lisp compatible format function. cl-format formats its\n * arguments to an output stream or string based on the format control string given. It\n * supports sophisticated formatting of structured data.\n * \n * Writer satisfies IWriter, true to output via *print-fn* or nil to output\n * to a string, format-in is the format control string and the remaining arguments\n * are the data to be formatted.\n * \n * The format control string is a string to be output with embedded \x27format directives\x27\n * describing how to format the various arguments passed in.\n * \n * If writer is nil, cl-format returns the formatted result string. Otherwise, cl-format\n * returns nil.\n * \n * For example:\n *  (let [results [46 38 22]]\n *      (cl-format true \x22There ~[are~;is~:;are~]~:* ~d result~:p: ~{~d~^, ~}~%\x22\n *                 (count results) results))\n * \n * Prints via *print-fn*:\n *  There are 3 results: 46, 38, 22\n * \n * Detailed documentation on format control strings is available in the \x22Common Lisp the\n * Language, 2nd edition\x22, Chapter 22 (available online at:\n * http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/html/cltl/clm/node200.html#SECTION002633000000000000000)\n * and in the Common Lisp HyperSpec at\n * http://www.lispworks.com/documentation/HyperSpec/Body/22_c.htm\n */\ncljs.pprint.cl_format \x3d (function cljs$pprint$cl_format(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___45239 \x3d arguments.length;\nvar i__4772__auto___45240 \x3d (0);\nwhile(true){\nif((i__4772__auto___45240 \x3c len__4771__auto___45239)){\nargs__4777__auto__.push((arguments[i__4772__auto___45240]));\n\nvar G__45241 \x3d (i__4772__auto___45240 + (1));\ni__4772__auto___45240 \x3d G__45241;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic \x3d (function (writer,format_in,args){\nvar compiled_format \x3d ((typeof format_in \x3d\x3d\x3d \x27string\x27)?cljs.pprint.compile_format(format_in):format_in);\nvar navigator \x3d cljs.pprint.init_navigator(args);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$3(writer,compiled_format,navigator);\n}));\n\n(cljs.pprint.cl_format.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(cljs.pprint.cl_format.cljs$lang$applyTo \x3d (function (seq40733){\nvar G__40734 \x3d cljs.core.first(seq40733);\nvar seq40733__$1 \x3d cljs.core.next(seq40733);\nvar G__40735 \x3d cljs.core.first(seq40733__$1);\nvar seq40733__$2 \x3d cljs.core.next(seq40733__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__40734,G__40735,seq40733__$2);\n}));\n\ncljs.pprint._STAR_format_str_STAR_ \x3d null;\ncljs.pprint.format_error \x3d (function cljs$pprint$format_error(message,offset){\nvar full_message \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1(message),\x22\\n\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint._STAR_format_str_STAR_),\x22\\n\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(offset,\x22 \x22))),\x22^\x22,\x22\\n\x22].join(\x27\x27);\nthrow Error(full_message);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.arg_navigator \x3d (function (seq,rest,pos,__meta,__extmap,__hash){\nthis.seq \x3d seq;\nthis.rest \x3d rest;\nthis.pos \x3d pos;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.arg_navigator.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k40788,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__40808 \x3d k40788;\nvar G__40808__$1 \x3d (((G__40808 instanceof cljs.core.Keyword))?G__40808.fqn:null);\nswitch (G__40808__$1) {\ncase \x22seq\x22:\nreturn self__.seq;\n\nbreak;\ncase \x22rest\x22:\nreturn self__.rest;\n\nbreak;\ncase \x22pos\x22:\nreturn self__.pos;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k40788,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__40821){\nvar vec__40822 \x3d p__40821;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40822,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40822,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.arg-navigator{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),self__.seq],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),self__.rest],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),self__.pos],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__40787){\nvar self__ \x3d this;\nvar G__40787__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__40787__$1,3,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (3 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-402038447 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this40789,other40790){\nvar self__ \x3d this;\nvar this40789__$1 \x3d this;\nreturn (((!((other40790 \x3d\x3d null)))) \x26\x26 ((this40789__$1.constructor \x3d\x3d\x3d other40790.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40789__$1.seq,other40790.seq)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40789__$1.rest,other40790.rest)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40789__$1.pos,other40790.pos)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this40789__$1.__extmap,other40790.__extmap)));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),null,new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),null,new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__40787){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__40875 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__40876 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__40875.cljs$core$IFn$_invoke$arity$2 ? pred__40875.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),expr__40876) : pred__40875.call(null,new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),expr__40876)))){\nreturn (new cljs.pprint.arg_navigator(G__40787,self__.rest,self__.pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40875.cljs$core$IFn$_invoke$arity$2 ? pred__40875.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),expr__40876) : pred__40875.call(null,new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),expr__40876)))){\nreturn (new cljs.pprint.arg_navigator(self__.seq,G__40787,self__.pos,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__40875.cljs$core$IFn$_invoke$arity$2 ? pred__40875.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),expr__40876) : pred__40875.call(null,new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),expr__40876)))){\nreturn (new cljs.pprint.arg_navigator(self__.seq,self__.rest,G__40787,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__40787),null));\n}\n}\n}\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),self__.seq,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),self__.rest,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220),self__.pos,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__40787){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.arg_navigator(self__.seq,self__.rest,self__.pos,G__40787,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.arg_navigator.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.arg_navigator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),new cljs.core.Symbol(null,\x22rest\x22,\x22rest\x22,398835108,null),new cljs.core.Symbol(null,\x22pos\x22,\x22pos\x22,775924307,null)], null);\n}));\n\n(cljs.pprint.arg_navigator.cljs$lang$type \x3d true);\n\n(cljs.pprint.arg_navigator.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/arg-navigator\x22,null,(1),null));\n}));\n\n(cljs.pprint.arg_navigator.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/arg-navigator\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/arg-navigator.\n */\ncljs.pprint.__GT_arg_navigator \x3d (function cljs$pprint$__GT_arg_navigator(seq,rest,pos){\nreturn (new cljs.pprint.arg_navigator(seq,rest,pos,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/arg-navigator, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_arg_navigator \x3d (function cljs$pprint$map__GT_arg_navigator(G__40793){\nvar extmap__4454__auto__ \x3d (function (){var G__40925 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__40793,new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419),new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220)], 0));\nif(cljs.core.record_QMARK_(G__40793)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__40925);\n} else {\nreturn G__40925;\n}\n})();\nreturn (new cljs.pprint.arg_navigator(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783).cljs$core$IFn$_invoke$arity$1(G__40793),new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(G__40793),new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(G__40793),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n/**\n * Create a new arg-navigator from the sequence with the position set to 0\n */\ncljs.pprint.init_navigator \x3d (function cljs$pprint$init_navigator(s){\nvar s__$1 \x3d cljs.core.seq(s);\nreturn (new cljs.pprint.arg_navigator(s__$1,s__$1,(0),null,null,null));\n});\ncljs.pprint.next_arg \x3d (function cljs$pprint$next_arg(navigator){\nvar rst \x3d new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator);\nif(cljs.core.truth_(rst)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(rst),(new cljs.pprint.arg_navigator(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783).cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.next(rst),(new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator) + (1)),null,null,null))], null);\n} else {\nthrow Error(\x22Not enough arguments for format definition\x22);\n}\n});\ncljs.pprint.next_arg_or_nil \x3d (function cljs$pprint$next_arg_or_nil(navigator){\nvar rst \x3d new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator);\nif(cljs.core.truth_(rst)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(rst),(new cljs.pprint.arg_navigator(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783).cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.next(rst),(new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator) + (1)),null,null,null))], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,navigator], null);\n}\n});\ncljs.pprint.get_format_arg \x3d (function cljs$pprint$get_format_arg(navigator){\nvar vec__40983 \x3d cljs.pprint.next_arg(navigator);\nvar raw_format \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40983,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40983,(1),null);\nvar compiled_format \x3d ((typeof raw_format \x3d\x3d\x3d \x27string\x27)?cljs.pprint.compile_format(raw_format):raw_format);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [compiled_format,navigator__$1], null);\n});\ncljs.pprint.absolute_reposition \x3d (function cljs$pprint$absolute_reposition(navigator,position){\nif((position \x3e\x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator))){\nvar G__41004 \x3d navigator;\nvar G__41005 \x3d (new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator) - position);\nreturn (cljs.pprint.relative_reposition.cljs$core$IFn$_invoke$arity$2 ? cljs.pprint.relative_reposition.cljs$core$IFn$_invoke$arity$2(G__41004,G__41005) : cljs.pprint.relative_reposition.call(null,G__41004,G__41005));\n} else {\nreturn (new cljs.pprint.arg_navigator(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783).cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.drop.cljs$core$IFn$_invoke$arity$2(position,new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783).cljs$core$IFn$_invoke$arity$1(navigator)),position,null,null,null));\n}\n});\ncljs.pprint.relative_reposition \x3d (function cljs$pprint$relative_reposition(navigator,position){\nvar newpos \x3d (new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator) + position);\nif((position \x3c (0))){\nreturn cljs.pprint.absolute_reposition(navigator,newpos);\n} else {\nreturn (new cljs.pprint.arg_navigator(new cljs.core.Keyword(null,\x22seq\x22,\x22seq\x22,-1817803783).cljs$core$IFn$_invoke$arity$1(navigator),cljs.core.drop.cljs$core$IFn$_invoke$arity$2(position,new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator)),newpos,null,null,null));\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\ncljs.pprint.compiled_directive \x3d (function (func,def,params,offset,__meta,__extmap,__hash){\nthis.func \x3d func;\nthis.def \x3d def;\nthis.params \x3d params;\nthis.offset \x3d offset;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(cljs.pprint.compiled_directive.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k41010,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__41031 \x3d k41010;\nvar G__41031__$1 \x3d (((G__41031 instanceof cljs.core.Keyword))?G__41031.fqn:null);\nswitch (G__41031__$1) {\ncase \x22func\x22:\nreturn self__.func;\n\nbreak;\ncase \x22def\x22:\nreturn self__.def;\n\nbreak;\ncase \x22params\x22:\nreturn self__.params;\n\nbreak;\ncase \x22offset\x22:\nreturn self__.offset;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k41010,else__4418__auto__);\n\n}\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__41042){\nvar vec__41043 \x3d p__41042;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41043,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41043,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#cljs.pprint.compiled-directive{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),self__.func],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),self__.def],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),self__.params],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),self__.offset],null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__41009){\nvar self__ \x3d this;\nvar G__41009__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__41009__$1,4,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (4 + cljs.core.count(self__.__extmap));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-829256337 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this41011,other41012){\nvar self__ \x3d this;\nvar this41011__$1 \x3d this;\nreturn (((!((other41012 \x3d\x3d null)))) \x26\x26 ((this41011__$1.constructor \x3d\x3d\x3d other41012.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this41011__$1.func,other41012.func)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this41011__$1.def,other41012.def)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this41011__$1.params,other41012.params)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this41011__$1.offset,other41012.offset)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this41011__$1.__extmap,other41012.__extmap)));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),null,new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),null,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),null,new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__41009){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__41072 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__41073 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__41072.cljs$core$IFn$_invoke$arity$2 ? pred__41072.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),expr__41073) : pred__41072.call(null,new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),expr__41073)))){\nreturn (new cljs.pprint.compiled_directive(G__41009,self__.def,self__.params,self__.offset,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__41072.cljs$core$IFn$_invoke$arity$2 ? pred__41072.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),expr__41073) : pred__41072.call(null,new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),expr__41073)))){\nreturn (new cljs.pprint.compiled_directive(self__.func,G__41009,self__.params,self__.offset,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__41072.cljs$core$IFn$_invoke$arity$2 ? pred__41072.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),expr__41073) : pred__41072.call(null,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),expr__41073)))){\nreturn (new cljs.pprint.compiled_directive(self__.func,self__.def,G__41009,self__.offset,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__41072.cljs$core$IFn$_invoke$arity$2 ? pred__41072.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),expr__41073) : pred__41072.call(null,new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),expr__41073)))){\nreturn (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,G__41009,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__41009),null));\n}\n}\n}\n}\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),self__.func,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),self__.def,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),self__.params,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311),self__.offset,null))], null),self__.__extmap));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__41009){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new cljs.pprint.compiled_directive(self__.func,self__.def,self__.params,self__.offset,G__41009,self__.__extmap,self__.__hash));\n}));\n\n(cljs.pprint.compiled_directive.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(cljs.pprint.compiled_directive.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22func\x22,\x22func\x22,1401825487,null),new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),new cljs.core.Symbol(null,\x22params\x22,\x22params\x22,-1943919534,null),new cljs.core.Symbol(null,\x22offset\x22,\x22offset\x22,1937029838,null)], null);\n}));\n\n(cljs.pprint.compiled_directive.cljs$lang$type \x3d true);\n\n(cljs.pprint.compiled_directive.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22cljs.pprint/compiled-directive\x22,null,(1),null));\n}));\n\n(cljs.pprint.compiled_directive.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22cljs.pprint/compiled-directive\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/compiled-directive.\n */\ncljs.pprint.__GT_compiled_directive \x3d (function cljs$pprint$__GT_compiled_directive(func,def,params,offset){\nreturn (new cljs.pprint.compiled_directive(func,def,params,offset,null,null,null));\n});\n\n/**\n * Factory function for cljs.pprint/compiled-directive, taking a map of keywords to field values.\n */\ncljs.pprint.map__GT_compiled_directive \x3d (function cljs$pprint$map__GT_compiled_directive(G__41017){\nvar extmap__4454__auto__ \x3d (function (){var G__41101 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__41017,new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536),new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311)], 0));\nif(cljs.core.record_QMARK_(G__41017)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__41101);\n} else {\nreturn G__41101;\n}\n})();\nreturn (new cljs.pprint.compiled_directive(new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040).cljs$core$IFn$_invoke$arity$1(G__41017),new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(G__41017),new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(G__41017),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(G__41017),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\ncljs.pprint.realize_parameter \x3d (function cljs$pprint$realize_parameter(p__41105,navigator){\nvar vec__41106 \x3d p__41105;\nvar param \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41106,(0),null);\nvar vec__41109 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41106,(1),null);\nvar raw_val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41109,(0),null);\nvar offset \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41109,(1),null);\nvar vec__41114 \x3d ((cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),param))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [raw_val,navigator], null):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(raw_val,new cljs.core.Keyword(null,\x22parameter-from-args\x22,\x22parameter-from-args\x22,-758446196)))?cljs.pprint.next_arg(navigator):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(raw_val,new cljs.core.Keyword(null,\x22remaining-arg-count\x22,\x22remaining-arg-count\x22,-1216589335)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.count(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator)),navigator], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [raw_val,navigator], null)\n)));\nvar real_param \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41114,(0),null);\nvar new_navigator \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41114,(1),null);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [real_param,offset], null)], null),new_navigator], null);\n});\ncljs.pprint.realize_parameter_list \x3d (function cljs$pprint$realize_parameter_list(parameter_map,navigator){\nvar vec__41123 \x3d cljs.pprint.map_passing_context(cljs.pprint.realize_parameter,navigator,parameter_map);\nvar pairs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41123,(0),null);\nvar new_navigator \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41123,(1),null);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,pairs),new_navigator], null);\n});\ncljs.pprint.special_radix_markers \x3d new cljs.core.PersistentArrayMap(null, 3, [(2),\x22#b\x22,(8),\x22#o\x22,(16),\x22#x\x22], null);\ncljs.pprint.format_simple_number \x3d (function cljs$pprint$format_simple_number(n){\nif(cljs.core.integer_QMARK_(n)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.pprint._STAR_print_base_STAR_,(10))){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),(cljs.core.truth_(cljs.pprint._STAR_print_radix_STAR_)?\x22.\x22:null)].join(\x27\x27);\n} else {\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(cljs.pprint._STAR_print_radix_STAR_)?(function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.special_radix_markers,cljs.pprint._STAR_print_base_STAR_);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn [\x22#\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint._STAR_print_base_STAR_),\x22r\x22].join(\x27\x27);\n}\n})():null)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint.opt_base_str(cljs.pprint._STAR_print_base_STAR_,n))].join(\x27\x27);\n}\n} else {\nreturn null;\n\n}\n});\ncljs.pprint.format_ascii \x3d (function cljs$pprint$format_ascii(print_func,params,arg_navigator,offsets){\nvar vec__41143 \x3d cljs.pprint.next_arg(arg_navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41143,(0),null);\nvar arg_navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41143,(1),null);\nvar base_output \x3d (function (){var or__4160__auto__ \x3d cljs.pprint.format_simple_number(arg);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (print_func.cljs$core$IFn$_invoke$arity$1 ? print_func.cljs$core$IFn$_invoke$arity$1(arg) : print_func.call(null,arg));\n}\n})();\nvar base_width \x3d base_output.length;\nvar min_width \x3d (base_width + new cljs.core.Keyword(null,\x22minpad\x22,\x22minpad\x22,323570901).cljs$core$IFn$_invoke$arity$1(params));\nvar width \x3d (((min_width \x3e\x3d new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445).cljs$core$IFn$_invoke$arity$1(params)))?min_width:(min_width + ((cljs.core.quot(((new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445).cljs$core$IFn$_invoke$arity$1(params) - min_width) - (1)),new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385).cljs$core$IFn$_invoke$arity$1(params)) + (1)) * new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385).cljs$core$IFn$_invoke$arity$1(params))));\nvar chars \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((width - base_width),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params)));\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(chars),cljs.core.str.cljs$core$IFn$_invoke$arity$1(base_output)].join(\x27\x27)], 0));\n} else {\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(base_output),cljs.core.str.cljs$core$IFn$_invoke$arity$1(chars)].join(\x27\x27)], 0));\n}\n\nreturn arg_navigator__$1;\n});\n/**\n * returns true if a number is actually an integer (that is, has no fractional part)\n */\ncljs.pprint.integral_QMARK_ \x3d (function cljs$pprint$integral_QMARK_(x){\nif(cljs.core.integer_QMARK_(x)){\nreturn true;\n} else {\nif(cljs.pprint.float_QMARK_(x)){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x,Math.floor(x));\n} else {\nreturn false;\n\n}\n}\n});\n/**\n * Return the list of remainders (essentially the \x27digits\x27) of val in the given base\n */\ncljs.pprint.remainders \x3d (function cljs$pprint$remainders(base,val){\nreturn cljs.core.reverse(cljs.core.first(cljs.pprint.consume((function (p1__41161_SHARP_){\nif((p1__41161_SHARP_ \x3e (0))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.rem(p1__41161_SHARP_,base),cljs.core.quot(p1__41161_SHARP_,base)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null);\n}\n}),val)));\n});\n/**\n * Return val as a string in the given base\n */\ncljs.pprint.base_str \x3d (function cljs$pprint$base_str(base,val){\nif((val \x3d\x3d\x3d (0))){\nreturn \x220\x22;\n} else {\nvar xlated_val \x3d val\n;\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__41165_SHARP_){\nif((p1__41165_SHARP_ \x3c (10))){\nreturn cljs.core.char$((cljs.pprint.char_code(\x220\x22) + p1__41165_SHARP_));\n} else {\nreturn cljs.core.char$((cljs.pprint.char_code(\x22a\x22) + (p1__41165_SHARP_ - (10))));\n}\n}),cljs.pprint.remainders(base,val)));\n}\n});\ncljs.pprint.javascript_base_formats \x3d new cljs.core.PersistentArrayMap(null, 3, [(8),\x22%o\x22,(10),\x22%d\x22,(16),\x22%x\x22], null);\n/**\n * Return val as a string in the given base. No cljs format, so no improved performance.\n */\ncljs.pprint.opt_base_str \x3d (function cljs$pprint$opt_base_str(base,val){\nreturn cljs.pprint.base_str(base,val);\n});\ncljs.pprint.group_by_STAR_ \x3d (function cljs$pprint$group_by_STAR_(unit,lis){\nreturn cljs.core.reverse(cljs.core.first(cljs.pprint.consume((function (x){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.seq(cljs.core.reverse(cljs.core.take.cljs$core$IFn$_invoke$arity$2(unit,x))),cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2(unit,x))], null);\n}),cljs.core.reverse(lis))));\n});\ncljs.pprint.format_integer \x3d (function cljs$pprint$format_integer(base,params,arg_navigator,offsets){\nvar vec__41183 \x3d cljs.pprint.next_arg(arg_navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41183,(0),null);\nvar arg_navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41183,(1),null);\nif(cljs.pprint.integral_QMARK_(arg)){\nvar neg_45393 \x3d (arg \x3c (0));\nvar pos_arg_45394 \x3d ((neg_45393)?(- arg):arg);\nvar raw_str_45395 \x3d cljs.pprint.opt_base_str(base,pos_arg_45394);\nvar group_str_45396 \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?(function (){var groups \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__41178_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,p1__41178_SHARP_);\n}),cljs.pprint.group_by_STAR_(new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083).cljs$core$IFn$_invoke$arity$1(params),raw_str_45395));\nvar commas \x3d cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(cljs.core.count(groups),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327).cljs$core$IFn$_invoke$arity$1(params));\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.next(cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(commas,groups)));\n})():raw_str_45395);\nvar signed_str_45397 \x3d ((neg_45393)?[\x22-\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(group_str_45396)].join(\x27\x27):(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))?[\x22+\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(group_str_45396)].join(\x27\x27):group_str_45396\n));\nvar padded_str_45398 \x3d (((signed_str_45397.length \x3c new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445).cljs$core$IFn$_invoke$arity$1(params)))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445).cljs$core$IFn$_invoke$arity$1(params) - signed_str_45397.length),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params)))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(signed_str_45397)].join(\x27\x27):signed_str_45397);\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([padded_str_45398], 0));\n} else {\ncljs.pprint.format_ascii(cljs.core.print_str,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445).cljs$core$IFn$_invoke$arity$1(params),new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385),(1),new cljs.core.Keyword(null,\x22minpad\x22,\x22minpad\x22,323570901),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params),new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),null);\n}\n\nreturn arg_navigator__$1;\n});\ncljs.pprint.english_cardinal_units \x3d new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22zero\x22,\x22one\x22,\x22two\x22,\x22three\x22,\x22four\x22,\x22five\x22,\x22six\x22,\x22seven\x22,\x22eight\x22,\x22nine\x22,\x22ten\x22,\x22eleven\x22,\x22twelve\x22,\x22thirteen\x22,\x22fourteen\x22,\x22fifteen\x22,\x22sixteen\x22,\x22seventeen\x22,\x22eighteen\x22,\x22nineteen\x22], null);\ncljs.pprint.english_ordinal_units \x3d new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22zeroth\x22,\x22first\x22,\x22second\x22,\x22third\x22,\x22fourth\x22,\x22fifth\x22,\x22sixth\x22,\x22seventh\x22,\x22eighth\x22,\x22ninth\x22,\x22tenth\x22,\x22eleventh\x22,\x22twelfth\x22,\x22thirteenth\x22,\x22fourteenth\x22,\x22fifteenth\x22,\x22sixteenth\x22,\x22seventeenth\x22,\x22eighteenth\x22,\x22nineteenth\x22], null);\ncljs.pprint.english_cardinal_tens \x3d new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22\x22,\x22\x22,\x22twenty\x22,\x22thirty\x22,\x22forty\x22,\x22fifty\x22,\x22sixty\x22,\x22seventy\x22,\x22eighty\x22,\x22ninety\x22], null);\ncljs.pprint.english_ordinal_tens \x3d new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22\x22,\x22\x22,\x22twentieth\x22,\x22thirtieth\x22,\x22fortieth\x22,\x22fiftieth\x22,\x22sixtieth\x22,\x22seventieth\x22,\x22eightieth\x22,\x22ninetieth\x22], null);\ncljs.pprint.english_scale_numbers \x3d new cljs.core.PersistentVector(null, 22, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22\x22,\x22thousand\x22,\x22million\x22,\x22billion\x22,\x22trillion\x22,\x22quadrillion\x22,\x22quintillion\x22,\x22sextillion\x22,\x22septillion\x22,\x22octillion\x22,\x22nonillion\x22,\x22decillion\x22,\x22undecillion\x22,\x22duodecillion\x22,\x22tredecillion\x22,\x22quattuordecillion\x22,\x22quindecillion\x22,\x22sexdecillion\x22,\x22septendecillion\x22,\x22octodecillion\x22,\x22novemdecillion\x22,\x22vigintillion\x22], null);\n/**\n * Convert a number less than 1000 to a cardinal english string\n */\ncljs.pprint.format_simple_cardinal \x3d (function cljs$pprint$format_simple_cardinal(num){\nvar hundreds \x3d cljs.core.quot(num,(100));\nvar tens \x3d cljs.core.rem(num,(100));\nreturn [(((hundreds \x3e (0)))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,hundreds)),\x22 hundred\x22].join(\x27\x27):null),(((((hundreds \x3e (0))) \x26\x26 ((tens \x3e (0)))))?\x22 \x22:null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((tens \x3e (0)))?(((tens \x3c (20)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,tens):(function (){var ten_digit \x3d cljs.core.quot(tens,(10));\nvar unit_digit \x3d cljs.core.rem(tens,(10));\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1((((ten_digit \x3e (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_tens,ten_digit):null)),(((((ten_digit \x3e (0))) \x26\x26 ((unit_digit \x3e (0)))))?\x22-\x22:null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((unit_digit \x3e (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,unit_digit):null))].join(\x27\x27);\n})()):null))].join(\x27\x27);\n});\n/**\n * Take a sequence of parts, add scale numbers (e.g., million) and combine into a string\n *   offset is a factor of 10^3 to multiply by\n */\ncljs.pprint.add_english_scales \x3d (function cljs$pprint$add_english_scales(parts,offset){\nvar cnt \x3d cljs.core.count(parts);\nvar acc \x3d cljs.core.PersistentVector.EMPTY;\nvar pos \x3d (cnt - (1));\nvar this$ \x3d cljs.core.first(parts);\nvar remainder \x3d cljs.core.next(parts);\nwhile(true){\nif((remainder \x3d\x3d null)){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(\x22, \x22,acc))),(((((!(cljs.core.empty_QMARK_(this$)))) \x26\x26 ((!(cljs.core.empty_QMARK_(acc))))))?\x22, \x22:null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$),(((((!(cljs.core.empty_QMARK_(this$)))) \x26\x26 (((pos + offset) \x3e (0)))))?[\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_scale_numbers,(pos + offset)))].join(\x27\x27):null)].join(\x27\x27);\n} else {\nvar G__45444 \x3d ((cljs.core.empty_QMARK_(this$))?acc:cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$),\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_scale_numbers,(pos + offset)))].join(\x27\x27)));\nvar G__45445 \x3d (pos - (1));\nvar G__45446 \x3d cljs.core.first(remainder);\nvar G__45447 \x3d cljs.core.next(remainder);\nacc \x3d G__45444;\npos \x3d G__45445;\nthis$ \x3d G__45446;\nremainder \x3d G__45447;\ncontinue;\n}\nbreak;\n}\n});\ncljs.pprint.format_cardinal_english \x3d (function cljs$pprint$format_cardinal_english(params,navigator,offsets){\nvar vec__41255 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41255,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41255,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),arg)){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22zero\x22], 0));\n} else {\nvar abs_arg_45450 \x3d (((arg \x3c (0)))?(- arg):arg);\nvar parts_45451 \x3d cljs.pprint.remainders((1000),abs_arg_45450);\nif((cljs.core.count(parts_45451) \x3c\x3d cljs.core.count(cljs.pprint.english_scale_numbers))){\nvar parts_strs_45456 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.pprint.format_simple_cardinal,parts_45451);\nvar full_str_45457 \x3d cljs.pprint.add_english_scales(parts_strs_45456,(0));\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(((arg \x3c (0)))?\x22minus \x22:null),full_str_45457].join(\x27\x27)], 0));\n} else {\ncljs.pprint.format_integer((10),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),\x22 \x22,new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),\x22,\x22,new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),(3),new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),(0),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),(0),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),(0)], null));\n}\n}\n\nreturn navigator__$1;\n});\n/**\n * Convert a number less than 1000 to a ordinal english string\n *   Note this should only be used for the last one in the sequence\n */\ncljs.pprint.format_simple_ordinal \x3d (function cljs$pprint$format_simple_ordinal(num){\nvar hundreds \x3d cljs.core.quot(num,(100));\nvar tens \x3d cljs.core.rem(num,(100));\nreturn [(((hundreds \x3e (0)))?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_units,hundreds)),\x22 hundred\x22].join(\x27\x27):null),(((((hundreds \x3e (0))) \x26\x26 ((tens \x3e (0)))))?\x22 \x22:null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((tens \x3e (0)))?(((tens \x3c (20)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_ordinal_units,tens):(function (){var ten_digit \x3d cljs.core.quot(tens,(10));\nvar unit_digit \x3d cljs.core.rem(tens,(10));\nif((((ten_digit \x3e (0))) \x26\x26 ((!((unit_digit \x3e (0))))))){\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_ordinal_tens,ten_digit);\n} else {\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1((((ten_digit \x3e (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_cardinal_tens,ten_digit):null)),(((((ten_digit \x3e (0))) \x26\x26 ((unit_digit \x3e (0)))))?\x22-\x22:null),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((unit_digit \x3e (0)))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.pprint.english_ordinal_units,unit_digit):null))].join(\x27\x27);\n}\n})()):(((hundreds \x3e (0)))?\x22th\x22:null)))].join(\x27\x27);\n});\ncljs.pprint.format_ordinal_english \x3d (function cljs$pprint$format_ordinal_english(params,navigator,offsets){\nvar vec__41285 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41285,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41285,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),arg)){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22zeroth\x22], 0));\n} else {\nvar abs_arg_45489 \x3d (((arg \x3c (0)))?(- arg):arg);\nvar parts_45490 \x3d cljs.pprint.remainders((1000),abs_arg_45489);\nif((cljs.core.count(parts_45490) \x3c\x3d cljs.core.count(cljs.pprint.english_scale_numbers))){\nvar parts_strs_45495 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.pprint.format_simple_cardinal,cljs.core.drop_last.cljs$core$IFn$_invoke$arity$1(parts_45490));\nvar head_str_45496 \x3d cljs.pprint.add_english_scales(parts_strs_45495,(1));\nvar tail_str_45497 \x3d cljs.pprint.format_simple_ordinal(cljs.core.last(parts_45490));\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(((arg \x3c (0)))?\x22minus \x22:null),(((((!(cljs.core.empty_QMARK_(head_str_45496)))) \x26\x26 ((!(cljs.core.empty_QMARK_(tail_str_45497))))))?[head_str_45496,\x22, \x22,tail_str_45497].join(\x27\x27):(((!(cljs.core.empty_QMARK_(head_str_45496))))?[head_str_45496,\x22th\x22].join(\x27\x27):tail_str_45497\n))].join(\x27\x27)], 0));\n} else {\ncljs.pprint.format_integer((10),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),\x22 \x22,new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),\x22,\x22,new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),(3),new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),(0),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),(0),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),(0)], null));\n\nvar low_two_digits_45505 \x3d cljs.core.rem(arg,(100));\nvar not_teens_45506 \x3d ((((11) \x3c low_two_digits_45505)) || (((19) \x3e low_two_digits_45505)));\nvar low_digit_45507 \x3d cljs.core.rem(low_two_digits_45505,(10));\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(((((low_digit_45507 \x3d\x3d\x3d (1))) \x26\x26 (not_teens_45506)))?\x22st\x22:(((((low_digit_45507 \x3d\x3d\x3d (2))) \x26\x26 (not_teens_45506)))?\x22nd\x22:(((((low_digit_45507 \x3d\x3d\x3d (3))) \x26\x26 (not_teens_45506)))?\x22rd\x22:\x22th\x22\n)))], 0));\n}\n}\n\nreturn navigator__$1;\n});\ncljs.pprint.old_roman_table \x3d new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22I\x22,\x22II\x22,\x22III\x22,\x22IIII\x22,\x22V\x22,\x22VI\x22,\x22VII\x22,\x22VIII\x22,\x22VIIII\x22], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22X\x22,\x22XX\x22,\x22XXX\x22,\x22XXXX\x22,\x22L\x22,\x22LX\x22,\x22LXX\x22,\x22LXXX\x22,\x22LXXXX\x22], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22C\x22,\x22CC\x22,\x22CCC\x22,\x22CCCC\x22,\x22D\x22,\x22DC\x22,\x22DCC\x22,\x22DCCC\x22,\x22DCCCC\x22], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22M\x22,\x22MM\x22,\x22MMM\x22], null)], null);\ncljs.pprint.new_roman_table \x3d new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22I\x22,\x22II\x22,\x22III\x22,\x22IV\x22,\x22V\x22,\x22VI\x22,\x22VII\x22,\x22VIII\x22,\x22IX\x22], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22X\x22,\x22XX\x22,\x22XXX\x22,\x22XL\x22,\x22L\x22,\x22LX\x22,\x22LXX\x22,\x22LXXX\x22,\x22XC\x22], null),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22C\x22,\x22CC\x22,\x22CCC\x22,\x22CD\x22,\x22D\x22,\x22DC\x22,\x22DCC\x22,\x22DCCC\x22,\x22CM\x22], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22M\x22,\x22MM\x22,\x22MMM\x22], null)], null);\n/**\n * Format a roman numeral using the specified look-up table\n */\ncljs.pprint.format_roman \x3d (function cljs$pprint$format_roman(table,params,navigator,offsets){\nvar vec__41308 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41308,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41308,(1),null);\nif(((typeof arg \x3d\x3d\x3d \x27number\x27) \x26\x26 ((arg \x3e (0))) \x26\x26 ((arg \x3c (4000))))){\nvar digits_45516 \x3d cljs.pprint.remainders((10),arg);\nvar acc_45518 \x3d cljs.core.PersistentVector.EMPTY;\nvar pos_45519 \x3d (cljs.core.count(digits_45516) - (1));\nvar digits_45520__$1 \x3d digits_45516;\nwhile(true){\nif(cljs.core.empty_QMARK_(digits_45520__$1)){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,acc_45518)], 0));\n} else {\nvar digit_45523 \x3d cljs.core.first(digits_45520__$1);\nvar G__45525 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),digit_45523))?acc_45518:cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc_45518,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(table,pos_45519),(digit_45523 - (1)))));\nvar G__45526 \x3d (pos_45519 - (1));\nvar G__45527 \x3d cljs.core.next(digits_45520__$1);\nacc_45518 \x3d G__45525;\npos_45519 \x3d G__45526;\ndigits_45520__$1 \x3d G__45527;\ncontinue;\n}\nbreak;\n}\n} else {\ncljs.pprint.format_integer((10),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),\x22 \x22,new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),\x22,\x22,new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),(3),new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),true], null),cljs.pprint.init_navigator(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg], null)),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),(0),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),(0),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),(0),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),(0)], null));\n}\n\nreturn navigator__$1;\n});\ncljs.pprint.format_old_roman \x3d (function cljs$pprint$format_old_roman(params,navigator,offsets){\nreturn cljs.pprint.format_roman(cljs.pprint.old_roman_table,params,navigator,offsets);\n});\ncljs.pprint.format_new_roman \x3d (function cljs$pprint$format_new_roman(params,navigator,offsets){\nreturn cljs.pprint.format_roman(cljs.pprint.new_roman_table,params,navigator,offsets);\n});\ncljs.pprint.special_chars \x3d new cljs.core.PersistentArrayMap(null, 5, [(8),\x22Backspace\x22,(9),\x22Tab\x22,(10),\x22Newline\x22,(13),\x22Return\x22,(32),\x22Space\x22], null);\ncljs.pprint.pretty_character \x3d (function cljs$pprint$pretty_character(params,navigator,offsets){\nvar vec__41318 \x3d cljs.pprint.next_arg(navigator);\nvar c \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41318,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41318,(1),null);\nvar as_int \x3d cljs.pprint.char_code(c);\nvar base_char \x3d (as_int \x26 (127));\nvar meta \x3d (as_int \x26 (128));\nvar special \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.special_chars,base_char);\nif((meta \x3e (0))){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Meta-\x22], 0));\n} else {\n}\n\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(cljs.core.truth_(special)?special:(((base_char \x3c (32)))?[\x22Control-\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.char$((base_char + (64))))].join(\x27\x27):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(base_char,(127)))?\x22Control-?\x22:cljs.core.char$(base_char)\n)))], 0));\n\nreturn navigator__$1;\n});\ncljs.pprint.readable_character \x3d (function cljs$pprint$readable_character(params,navigator,offsets){\nvar vec__41326 \x3d cljs.pprint.next_arg(navigator);\nvar c \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41326,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41326,(1),null);\nvar pred__41330_45533 \x3d cljs.core._EQ_;\nvar expr__41331_45534 \x3d new cljs.core.Keyword(null,\x22char-format\x22,\x22char-format\x22,-1016499218).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_((function (){var G__41335 \x3d \x22o\x22;\nvar G__41336 \x3d expr__41331_45534;\nreturn (pred__41330_45533.cljs$core$IFn$_invoke$arity$2 ? pred__41330_45533.cljs$core$IFn$_invoke$arity$2(G__41335,G__41336) : pred__41330_45533.call(null,G__41335,G__41336));\n})())){\ncljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(true,\x22\\\\o~3,\x270o\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.pprint.char_code(c)], 0));\n} else {\nif(cljs.core.truth_((function (){var G__41339 \x3d \x22u\x22;\nvar G__41340 \x3d expr__41331_45534;\nreturn (pred__41330_45533.cljs$core$IFn$_invoke$arity$2 ? pred__41330_45533.cljs$core$IFn$_invoke$arity$2(G__41339,G__41340) : pred__41330_45533.call(null,G__41339,G__41340));\n})())){\ncljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(true,\x22\\\\u~4,\x270x\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.pprint.char_code(c)], 0));\n} else {\nif(cljs.core.truth_((pred__41330_45533.cljs$core$IFn$_invoke$arity$2 ? pred__41330_45533.cljs$core$IFn$_invoke$arity$2(null,expr__41331_45534) : pred__41330_45533.call(null,null,expr__41331_45534)))){\ncljs.pprint.print_char(c);\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__41331_45534)].join(\x27\x27)));\n}\n}\n}\n\nreturn navigator__$1;\n});\ncljs.pprint.plain_character \x3d (function cljs$pprint$plain_character(params,navigator,offsets){\nvar vec__41353 \x3d cljs.pprint.next_arg(navigator);\nvar char$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41353,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41353,(1),null);\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([char$], 0));\n\nreturn navigator__$1;\n});\ncljs.pprint.abort_QMARK_ \x3d (function cljs$pprint$abort_QMARK_(context){\nvar token \x3d cljs.core.first(context);\nreturn ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333),token)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22colon-up-arrow\x22,\x22colon-up-arrow\x22,244853007),token)));\n});\ncljs.pprint.execute_sub_format \x3d (function cljs$pprint$execute_sub_format(format,args,base_args){\nreturn cljs.core.second(cljs.pprint.map_passing_context((function (element,context){\nif(cljs.pprint.abort_QMARK_(context)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,context], null);\n} else {\nvar vec__41361 \x3d cljs.pprint.realize_parameter_list(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(element),context);\nvar params \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41361,(0),null);\nvar args__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41361,(1),null);\nvar vec__41364 \x3d cljs.pprint.unzip_map(params);\nvar params__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41364,(0),null);\nvar offsets \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41364,(1),null);\nvar params__$2 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(params__$1,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822),base_args);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040).cljs$core$IFn$_invoke$arity$1(element),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [params__$2,args__$1,offsets], null))], null);\n}\n}),args,format));\n});\n/**\n * Produce string parts for the mantissa (normalize 1-9) and exponent\n */\ncljs.pprint.float_parts_base \x3d (function cljs$pprint$float_parts_base(f){\nvar s \x3d clojure.string.lower_case(cljs.core.str.cljs$core$IFn$_invoke$arity$1(f));\nvar exploc \x3d s.indexOf(\x22e\x22);\nvar dotloc \x3d s.indexOf(\x22.\x22);\nif((exploc \x3c (0))){\nif((dotloc \x3c (0))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,cljs.core.str.cljs$core$IFn$_invoke$arity$1((((s).length) - (1)))], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),dotloc),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(dotloc + (1)))].join(\x27\x27),cljs.core.str.cljs$core$IFn$_invoke$arity$1((dotloc - (1)))], null);\n}\n} else {\nif((dotloc \x3c (0))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),exploc),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(exploc + (1)))], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),(1)),cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(2),exploc)].join(\x27\x27),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(exploc + (1)))], null);\n}\n}\n});\n/**\n * Take care of leading and trailing zeros in decomposed floats\n */\ncljs.pprint.float_parts \x3d (function cljs$pprint$float_parts(f){\nvar vec__41374 \x3d cljs.pprint.float_parts_base(f);\nvar m \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41374,(0),null);\nvar e \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41374,(1),null);\nvar m1 \x3d cljs.pprint.rtrim(m,\x220\x22);\nvar m2 \x3d cljs.pprint.ltrim(m1,\x220\x22);\nvar delta \x3d (cljs.core.count(m1) - cljs.core.count(m2));\nvar e__$1 \x3d (((((cljs.core.count(e) \x3e (0))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(e,(0)),\x22+\x22))))?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(e,(1)):e);\nif(cljs.core.empty_QMARK_(m2)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x220\x22,(0)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [m2,(parseInt(e__$1,(10)) - delta)], null);\n}\n});\n/**\n * Assumption: The input string consists of one or more decimal digits,\n *   and no other characters. Return a string containing one or more\n *   decimal digits containing a decimal number one larger than the input\n *   string. The output string will always be the same length as the input\n *   string, or one character longer.\n */\ncljs.pprint.inc_s \x3d (function cljs$pprint$inc_s(s){\nvar len_1 \x3d (cljs.core.count(s) - (1));\nvar i \x3d (len_1 | (0));\nwhile(true){\nif((i \x3c (0))){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.str,\x221\x22,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((len_1 + (1)),\x220\x22));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x229\x22,s.charAt(i))){\nvar G__45563 \x3d (i - (1));\ni \x3d G__45563;\ncontinue;\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core.str,cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),i),cljs.core.char$((cljs.pprint.char_code(s.charAt(i)) + (1))),cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((len_1 - i),\x220\x22));\n\n}\n}\nbreak;\n}\n});\ncljs.pprint.round_str \x3d (function cljs$pprint$round_str(m,e,d,w){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d d;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn w;\n}\n})())){\nvar len \x3d cljs.core.count(m);\nvar w__$1 \x3d (cljs.core.truth_(w)?(function (){var x__4249__auto__ \x3d (2);\nvar y__4250__auto__ \x3d w;\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})():(0));\nvar round_pos \x3d (cljs.core.truth_(d)?((e + d) + (1)):(((e \x3e\x3d (0)))?(function (){var x__4249__auto__ \x3d (e + (1));\nvar y__4250__auto__ \x3d (w__$1 - (1));\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})():(w__$1 + e)\n));\nvar vec__41402 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(round_pos,(0)))?new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [[\x220\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join(\x27\x27),(e + (1)),(1),(len + (1))], null):new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,round_pos,len], null));\nvar m1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41402,(0),null);\nvar e1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41402,(1),null);\nvar round_pos__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41402,(2),null);\nvar len__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41402,(3),null);\nif(cljs.core.truth_(round_pos__$1)){\nif((round_pos__$1 \x3c (0))){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x220\x22,(0),false], null);\n} else {\nif((len__$1 \x3e round_pos__$1)){\nvar round_char \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(m1,round_pos__$1);\nvar result \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$3(m1,(0),round_pos__$1);\nif((cljs.pprint.char_code(round_char) \x3e\x3d cljs.pprint.char_code(\x225\x22))){\nvar round_up_result \x3d cljs.pprint.inc_s(result);\nvar expanded \x3d (cljs.core.count(round_up_result) \x3e ((result).length));\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [((expanded)?cljs.core.subs.cljs$core$IFn$_invoke$arity$3(round_up_result,(0),(cljs.core.count(round_up_result) - (1))):round_up_result),e1,expanded], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [result,e1,false], null);\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,false], null);\n}\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,false], null);\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e,false], null);\n}\n});\ncljs.pprint.expand_fixed \x3d (function cljs$pprint$expand_fixed(m,e,d){\nvar vec__41408 \x3d (((e \x3c (0)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(((- e) - (1)),\x220\x22))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join(\x27\x27),(-1)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,e], null));\nvar m1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41408,(0),null);\nvar e1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41408,(1),null);\nvar len \x3d cljs.core.count(m1);\nvar target_len \x3d (cljs.core.truth_(d)?((e1 + d) + (1)):(e1 + (1)));\nif((len \x3c target_len)){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(m1),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((target_len - len),\x220\x22)))].join(\x27\x27);\n} else {\nreturn m1;\n}\n});\n/**\n * Insert the decimal point at the right spot in the number to match an exponent\n */\ncljs.pprint.insert_decimal \x3d (function cljs$pprint$insert_decimal(m,e){\nif((e \x3c (0))){\nreturn [\x22.\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join(\x27\x27);\n} else {\nvar loc \x3d (e + (1));\nreturn [cljs.core.subs.cljs$core$IFn$_invoke$arity$3(m,(0),loc),\x22.\x22,cljs.core.subs.cljs$core$IFn$_invoke$arity$2(m,loc)].join(\x27\x27);\n}\n});\ncljs.pprint.get_fixed \x3d (function cljs$pprint$get_fixed(m,e,d){\nreturn cljs.pprint.insert_decimal(cljs.pprint.expand_fixed(m,e,d),e);\n});\n/**\n * Insert the decimal point at the right spot in the number to match an exponent\n */\ncljs.pprint.insert_scaled_decimal \x3d (function cljs$pprint$insert_scaled_decimal(m,k){\nif((k \x3c (0))){\nreturn [\x22.\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(m)].join(\x27\x27);\n} else {\nreturn [cljs.core.subs.cljs$core$IFn$_invoke$arity$3(m,(0),k),\x22.\x22,cljs.core.subs.cljs$core$IFn$_invoke$arity$2(m,k)].join(\x27\x27);\n}\n});\ncljs.pprint.convert_ratio \x3d (function cljs$pprint$convert_ratio(x){\nreturn x;\n});\ncljs.pprint.fixed_float \x3d (function cljs$pprint$fixed_float(params,navigator,offsets){\nvar w \x3d new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001).cljs$core$IFn$_invoke$arity$1(params);\nvar d \x3d new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424).cljs$core$IFn$_invoke$arity$1(params);\nvar vec__41441 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41441,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41441,(1),null);\nvar vec__41444 \x3d (((arg \x3c (0)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22-\x22,(- arg)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22+\x22,arg], null));\nvar sign \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41444,(0),null);\nvar abs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41444,(1),null);\nvar abs__$1 \x3d cljs.pprint.convert_ratio(abs);\nvar vec__41447 \x3d cljs.pprint.float_parts(abs__$1);\nvar mantissa \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41447,(0),null);\nvar exp \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41447,(1),null);\nvar scaled_exp \x3d (exp + new cljs.core.Keyword(null,\x22k\x22,\x22k\x22,-2146297393).cljs$core$IFn$_invoke$arity$1(params));\nvar add_sign \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (arg \x3c (0));\n}\n})();\nvar append_zero \x3d ((cljs.core.not(d)) \x26\x26 (((cljs.core.count(mantissa) - (1)) \x3c\x3d scaled_exp)));\nvar vec__41450 \x3d cljs.pprint.round_str(mantissa,scaled_exp,d,(cljs.core.truth_(w)?(w - (cljs.core.truth_(add_sign)?(1):(0))):null));\nvar rounded_mantissa \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41450,(0),null);\nvar scaled_exp__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41450,(1),null);\nvar expanded \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41450,(2),null);\nvar fixed_repr \x3d cljs.pprint.get_fixed(rounded_mantissa,(cljs.core.truth_(expanded)?(scaled_exp__$1 + (1)):scaled_exp__$1),d);\nvar fixed_repr__$1 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d w;\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d d;\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn (((d \x3e\x3d (1))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(fixed_repr.charAt((0)),\x220\x22)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(fixed_repr.charAt((1)),\x22.\x22)) \x26\x26 ((((fixed_repr).length) \x3e (w - (cljs.core.truth_(add_sign)?(1):(0))))));\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})())?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(fixed_repr,(1)):fixed_repr);\nvar prepend_zero \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(fixed_repr__$1),\x22.\x22);\nif(cljs.core.truth_(w)){\nvar len_45613 \x3d ((fixed_repr__$1).length);\nvar signed_len_45614 \x3d (cljs.core.truth_(add_sign)?(len_45613 + (1)):len_45613);\nvar prepend_zero_45615__$1 \x3d ((prepend_zero) \x26\x26 ((!((signed_len_45614 \x3e\x3d w)))));\nvar append_zero_45616__$1 \x3d ((append_zero) \x26\x26 ((!((signed_len_45614 \x3e\x3d w)))));\nvar full_len_45617 \x3d ((((prepend_zero_45615__$1) || (append_zero_45616__$1)))?(signed_len_45614 + (1)):signed_len_45614);\nif(cljs.core.truth_((((full_len_45617 \x3e w))?new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106).cljs$core$IFn$_invoke$arity$1(params):false))){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(w,new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106).cljs$core$IFn$_invoke$arity$1(params)))], 0));\n} else {\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((w - full_len_45617),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params)))),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(add_sign)?sign:null)),((prepend_zero_45615__$1)?\x220\x22:null),fixed_repr__$1,((append_zero_45616__$1)?\x220\x22:null)].join(\x27\x27)], 0));\n}\n} else {\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(add_sign)?sign:null)),((prepend_zero)?\x220\x22:null),fixed_repr__$1,((append_zero)?\x220\x22:null)].join(\x27\x27)], 0));\n}\n\nreturn navigator__$1;\n});\ncljs.pprint.exponential_float \x3d (function cljs$pprint$exponential_float(params,navigator,offset){\nvar vec__41485 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41485,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41485,(1),null);\nvar arg__$1 \x3d cljs.pprint.convert_ratio(arg);\nvar G__41492_45627 \x3d cljs.pprint.float_parts((((arg__$1 \x3c (0)))?(- arg__$1):arg__$1));\nvar vec__41493_45628 \x3d G__41492_45627;\nvar mantissa_45629 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41493_45628,(0),null);\nvar exp_45630 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41493_45628,(1),null);\nvar G__41492_45636__$1 \x3d G__41492_45627;\nwhile(true){\nvar vec__41498_45637 \x3d G__41492_45636__$1;\nvar mantissa_45638__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41498_45637,(0),null);\nvar exp_45639__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41498_45637,(1),null);\nvar w_45640 \x3d new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001).cljs$core$IFn$_invoke$arity$1(params);\nvar d_45641 \x3d new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424).cljs$core$IFn$_invoke$arity$1(params);\nvar e_45642 \x3d new cljs.core.Keyword(null,\x22e\x22,\x22e\x22,1381269198).cljs$core$IFn$_invoke$arity$1(params);\nvar k_45643 \x3d new cljs.core.Keyword(null,\x22k\x22,\x22k\x22,-2146297393).cljs$core$IFn$_invoke$arity$1(params);\nvar expchar_45644 \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22exponentchar\x22,\x22exponentchar\x22,1986664222).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22E\x22;\n}\n})();\nvar add_sign_45645 \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (arg__$1 \x3c (0));\n}\n})();\nvar prepend_zero_45646 \x3d (k_45643 \x3c\x3d (0));\nvar scaled_exp_45647 \x3d (exp_45639__$1 - (k_45643 - (1)));\nvar scaled_exp_str_45648 \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(Math.abs(scaled_exp_45647));\nvar scaled_exp_str_45649__$1 \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1(expchar_45644),(((scaled_exp_45647 \x3c (0)))?\x22-\x22:\x22+\x22),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(e_45642)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((e_45642 - ((scaled_exp_str_45648).length)),\x220\x22)):null)),scaled_exp_str_45648].join(\x27\x27);\nvar exp_width_45650 \x3d ((scaled_exp_str_45649__$1).length);\nvar base_mantissa_width_45651 \x3d cljs.core.count(mantissa_45638__$1);\nvar scaled_mantissa_45652 \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((- k_45643),\x220\x22))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(mantissa_45638__$1),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(d_45641)?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(((d_45641 - (base_mantissa_width_45651 - (1))) - (((k_45643 \x3c (0)))?(- k_45643):(0))),\x220\x22)):null))].join(\x27\x27);\nvar w_mantissa_45653 \x3d (cljs.core.truth_(w_45640)?(w_45640 - exp_width_45650):null);\nvar vec__41504_45654 \x3d cljs.pprint.round_str(scaled_mantissa_45652,(0),((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k_45643,(0)))?(d_45641 - (1)):(((k_45643 \x3e (0)))?d_45641:(((k_45643 \x3c (0)))?(d_45641 - (1)):null))),(cljs.core.truth_(w_mantissa_45653)?(w_mantissa_45653 - (cljs.core.truth_(add_sign_45645)?(1):(0))):null));\nvar rounded_mantissa_45655 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41504_45654,(0),null);\nvar __45656 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41504_45654,(1),null);\nvar incr_exp_45657 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41504_45654,(2),null);\nvar full_mantissa_45658 \x3d cljs.pprint.insert_scaled_decimal(rounded_mantissa_45655,k_45643);\nvar append_zero_45660 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k_45643,cljs.core.count(rounded_mantissa_45655))) \x26\x26 ((d_45641 \x3d\x3d null)));\nif(cljs.core.not(incr_exp_45657)){\nif(cljs.core.truth_(w_45640)){\nvar len_45678 \x3d (((full_mantissa_45658).length) + exp_width_45650);\nvar signed_len_45679 \x3d (cljs.core.truth_(add_sign_45645)?(len_45678 + (1)):len_45678);\nvar prepend_zero_45680__$1 \x3d ((prepend_zero_45646) \x26\x26 ((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(signed_len_45679,w_45640)))));\nvar full_len_45681 \x3d ((prepend_zero_45680__$1)?(signed_len_45679 + (1)):signed_len_45679);\nvar append_zero_45682__$1 \x3d ((append_zero_45660) \x26\x26 ((full_len_45681 \x3c w_45640)));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d (function (){var or__4160__auto__ \x3d (full_len_45681 \x3e w_45640);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar and__4149__auto__ \x3d e_45642;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((exp_width_45650 - (2)) \x3e e_45642);\n} else {\nreturn and__4149__auto__;\n}\n}\n})();\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106).cljs$core$IFn$_invoke$arity$1(params);\n} else {\nreturn and__4149__auto__;\n}\n})())){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(w_45640,new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106).cljs$core$IFn$_invoke$arity$1(params)))], 0));\n} else {\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(((w_45640 - full_len_45681) - ((append_zero_45682__$1)?(1):(0))),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params)))),(cljs.core.truth_(add_sign_45645)?(((arg__$1 \x3c (0)))?\x22-\x22:\x22+\x22):null),((prepend_zero_45680__$1)?\x220\x22:null),full_mantissa_45658,((append_zero_45682__$1)?\x220\x22:null),scaled_exp_str_45649__$1].join(\x27\x27)], 0));\n}\n} else {\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(cljs.core.truth_(add_sign_45645)?(((arg__$1 \x3c (0)))?\x22-\x22:\x22+\x22):null),((prepend_zero_45646)?\x220\x22:null),full_mantissa_45658,((append_zero_45660)?\x220\x22:null),scaled_exp_str_45649__$1].join(\x27\x27)], 0));\n}\n} else {\nvar G__45690 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [rounded_mantissa_45655,(exp_45639__$1 + (1))], null);\nG__41492_45636__$1 \x3d G__45690;\ncontinue;\n}\nbreak;\n}\n\nreturn navigator__$1;\n});\ncljs.pprint.general_float \x3d (function cljs$pprint$general_float(params,navigator,offsets){\nvar vec__41543 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41543,(0),null);\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41543,(1),null);\nvar arg__$1 \x3d cljs.pprint.convert_ratio(arg);\nvar vec__41546 \x3d cljs.pprint.float_parts((((arg__$1 \x3c (0)))?(- arg__$1):arg__$1));\nvar mantissa \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41546,(0),null);\nvar exp \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41546,(1),null);\nvar w \x3d new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001).cljs$core$IFn$_invoke$arity$1(params);\nvar d \x3d new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424).cljs$core$IFn$_invoke$arity$1(params);\nvar e \x3d new cljs.core.Keyword(null,\x22e\x22,\x22e\x22,1381269198).cljs$core$IFn$_invoke$arity$1(params);\nvar n \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg__$1,0.0))?(0):(exp + (1)));\nvar ee \x3d (cljs.core.truth_(e)?(e + (2)):(4));\nvar ww \x3d (cljs.core.truth_(w)?(w - ee):null);\nvar d__$1 \x3d (cljs.core.truth_(d)?d:(function (){var x__4249__auto__ \x3d cljs.core.count(mantissa);\nvar y__4250__auto__ \x3d (function (){var x__4252__auto__ \x3d n;\nvar y__4253__auto__ \x3d (7);\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})();\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})());\nvar dd \x3d (d__$1 - n);\nif(((((0) \x3c\x3d dd)) \x26\x26 ((dd \x3c\x3d d__$1)))){\nvar navigator__$1 \x3d cljs.pprint.fixed_float(new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),ww,new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),dd,new cljs.core.Keyword(null,\x22k\x22,\x22k\x22,-2146297393),(0),new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106),new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106).cljs$core$IFn$_invoke$arity$1(params),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params),new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params)], null),navigator,offsets);\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(ee,\x22 \x22))], 0));\n\nreturn navigator__$1;\n} else {\nreturn cljs.pprint.exponential_float(params,navigator,offsets);\n}\n});\ncljs.pprint.dollar_float \x3d (function cljs$pprint$dollar_float(params,navigator,offsets){\nvar vec__41564 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41564,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41564,(1),null);\nvar vec__41568 \x3d cljs.pprint.float_parts(Math.abs(arg));\nvar mantissa \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41568,(0),null);\nvar exp \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41568,(1),null);\nvar d \x3d new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424).cljs$core$IFn$_invoke$arity$1(params);\nvar n \x3d new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025).cljs$core$IFn$_invoke$arity$1(params);\nvar w \x3d new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001).cljs$core$IFn$_invoke$arity$1(params);\nvar add_sign \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (arg \x3c (0));\n}\n})();\nvar vec__41572 \x3d cljs.pprint.round_str(mantissa,exp,d,null);\nvar rounded_mantissa \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41572,(0),null);\nvar scaled_exp \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41572,(1),null);\nvar expanded \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41572,(2),null);\nvar fixed_repr \x3d cljs.pprint.get_fixed(rounded_mantissa,(cljs.core.truth_(expanded)?(scaled_exp + (1)):scaled_exp),d);\nvar full_repr \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((n - fixed_repr.indexOf(\x22.\x22)),\x220\x22))),fixed_repr].join(\x27\x27);\nvar full_len \x3d (((full_repr).length) + (cljs.core.truth_(add_sign)?(1):(0)));\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(cljs.core.truth_((function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn add_sign;\n} else {\nreturn and__4149__auto__;\n}\n})())?(((arg \x3c (0)))?\x22-\x22:\x22+\x22):null),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2((w - full_len),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params)))),(cljs.core.truth_(((cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params)))?add_sign:false))?(((arg \x3c (0)))?\x22-\x22:\x22+\x22):null),full_repr].join(\x27\x27)], 0));\n\nreturn navigator__$1;\n});\ncljs.pprint.choice_conditional \x3d (function cljs$pprint$choice_conditional(params,arg_navigator,offsets){\nvar arg \x3d new cljs.core.Keyword(null,\x22selector\x22,\x22selector\x22,762528866).cljs$core$IFn$_invoke$arity$1(params);\nvar vec__41595 \x3d (cljs.core.truth_(arg)?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [arg,arg_navigator], null):cljs.pprint.next_arg(arg_navigator));\nvar arg__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41595,(0),null);\nvar navigator \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41595,(1),null);\nvar clauses \x3d new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params);\nvar clause \x3d (((((arg__$1 \x3c (0))) || ((arg__$1 \x3e\x3d cljs.core.count(clauses)))))?cljs.core.first(new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(params)):cljs.core.nth.cljs$core$IFn$_invoke$arity$2(clauses,arg__$1));\nif(cljs.core.truth_(clause)){\nreturn cljs.pprint.execute_sub_format(clause,navigator,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\n} else {\nreturn navigator;\n}\n});\ncljs.pprint.boolean_conditional \x3d (function cljs$pprint$boolean_conditional(params,arg_navigator,offsets){\nvar vec__41607 \x3d cljs.pprint.next_arg(arg_navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41607,(0),null);\nvar navigator \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41607,(1),null);\nvar clauses \x3d new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params);\nvar clause \x3d (cljs.core.truth_(arg)?cljs.core.second(clauses):cljs.core.first(clauses));\nif(cljs.core.truth_(clause)){\nreturn cljs.pprint.execute_sub_format(clause,navigator,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\n} else {\nreturn navigator;\n}\n});\ncljs.pprint.check_arg_conditional \x3d (function cljs$pprint$check_arg_conditional(params,arg_navigator,offsets){\nvar vec__41617 \x3d cljs.pprint.next_arg(arg_navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41617,(0),null);\nvar navigator \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41617,(1),null);\nvar clauses \x3d new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params);\nvar clause \x3d (cljs.core.truth_(arg)?cljs.core.first(clauses):null);\nif(cljs.core.truth_(arg)){\nif(cljs.core.truth_(clause)){\nreturn cljs.pprint.execute_sub_format(clause,arg_navigator,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\n} else {\nreturn arg_navigator;\n}\n} else {\nreturn navigator;\n}\n});\ncljs.pprint.iterate_sublist \x3d (function cljs$pprint$iterate_sublist(params,navigator,offsets){\nvar max_count \x3d new cljs.core.Keyword(null,\x22max-iterations\x22,\x22max-iterations\x22,2021275563).cljs$core$IFn$_invoke$arity$1(params);\nvar param_clause \x3d cljs.core.first(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params));\nvar vec__41641 \x3d ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));\nvar clause \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41641,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41641,(1),null);\nvar vec__41644 \x3d cljs.pprint.next_arg(navigator__$1);\nvar arg_list \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41644,(0),null);\nvar navigator__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41644,(1),null);\nvar args \x3d cljs.pprint.init_navigator(arg_list);\nvar count \x3d (0);\nvar args__$1 \x3d args;\nvar last_pos \x3d ((-1) | (0));\nwhile(true){\nif(((cljs.core.not(max_count)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(args__$1),last_pos)) \x26\x26 ((count \x3e (1))))){\nthrow Error(\x22%{ construct not consuming any arguments: Infinite loop!\x22);\n} else {\n}\n\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d ((cljs.core.empty_QMARK_(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(args__$1))) \x26\x26 (((cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22right-params\x22,\x22right-params\x22,-1790676237).cljs$core$IFn$_invoke$arity$1(params)))) || ((count \x3e (0))))));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar and__4149__auto__ \x3d max_count;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (count \x3e\x3d max_count);\n} else {\nreturn and__4149__auto__;\n}\n}\n})())){\nreturn navigator__$2;\n} else {\nvar iter_result \x3d cljs.pprint.execute_sub_format(clause,args__$1,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333),cljs.core.first(iter_result))){\nreturn navigator__$2;\n} else {\nvar G__45764 \x3d (count + (1));\nvar G__45765 \x3d iter_result;\nvar G__45766 \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(args__$1);\ncount \x3d G__45764;\nargs__$1 \x3d G__45765;\nlast_pos \x3d G__45766;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.pprint.iterate_list_of_sublists \x3d (function cljs$pprint$iterate_list_of_sublists(params,navigator,offsets){\nvar max_count \x3d new cljs.core.Keyword(null,\x22max-iterations\x22,\x22max-iterations\x22,2021275563).cljs$core$IFn$_invoke$arity$1(params);\nvar param_clause \x3d cljs.core.first(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params));\nvar vec__41690 \x3d ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));\nvar clause \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41690,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41690,(1),null);\nvar vec__41693 \x3d cljs.pprint.next_arg(navigator__$1);\nvar arg_list \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41693,(0),null);\nvar navigator__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41693,(1),null);\nvar count \x3d (0);\nvar arg_list__$1 \x3d arg_list;\nwhile(true){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d ((cljs.core.empty_QMARK_(arg_list__$1)) \x26\x26 (((cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22right-params\x22,\x22right-params\x22,-1790676237).cljs$core$IFn$_invoke$arity$1(params)))) || ((count \x3e (0))))));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar and__4149__auto__ \x3d max_count;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (count \x3e\x3d max_count);\n} else {\nreturn and__4149__auto__;\n}\n}\n})())){\nreturn navigator__$2;\n} else {\nvar iter_result \x3d cljs.pprint.execute_sub_format(clause,cljs.pprint.init_navigator(cljs.core.first(arg_list__$1)),cljs.pprint.init_navigator(cljs.core.next(arg_list__$1)));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22colon-up-arrow\x22,\x22colon-up-arrow\x22,244853007),cljs.core.first(iter_result))){\nreturn navigator__$2;\n} else {\nvar G__45770 \x3d (count + (1));\nvar G__45771 \x3d cljs.core.next(arg_list__$1);\ncount \x3d G__45770;\narg_list__$1 \x3d G__45771;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.pprint.iterate_main_list \x3d (function cljs$pprint$iterate_main_list(params,navigator,offsets){\nvar max_count \x3d new cljs.core.Keyword(null,\x22max-iterations\x22,\x22max-iterations\x22,2021275563).cljs$core$IFn$_invoke$arity$1(params);\nvar param_clause \x3d cljs.core.first(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params));\nvar vec__41743 \x3d ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));\nvar clause \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41743,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41743,(1),null);\nvar count \x3d (0);\nvar navigator__$2 \x3d navigator__$1;\nvar last_pos \x3d ((-1) | (0));\nwhile(true){\nif(((cljs.core.not(max_count)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator__$2),last_pos)) \x26\x26 ((count \x3e (1))))){\nthrow Error(\x22%@{ construct not consuming any arguments: Infinite loop!\x22);\n} else {\n}\n\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d ((cljs.core.empty_QMARK_(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator__$2))) \x26\x26 (((cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22right-params\x22,\x22right-params\x22,-1790676237).cljs$core$IFn$_invoke$arity$1(params)))) || ((count \x3e (0))))));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar and__4149__auto__ \x3d max_count;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (count \x3e\x3d max_count);\n} else {\nreturn and__4149__auto__;\n}\n}\n})())){\nreturn navigator__$2;\n} else {\nvar iter_result \x3d cljs.pprint.execute_sub_format(clause,navigator__$2,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333),cljs.core.first(iter_result))){\nreturn cljs.core.second(iter_result);\n} else {\nvar G__45774 \x3d (count + (1));\nvar G__45775 \x3d iter_result;\nvar G__45776 \x3d new cljs.core.Keyword(null,\x22pos\x22,\x22pos\x22,-864607220).cljs$core$IFn$_invoke$arity$1(navigator__$2);\ncount \x3d G__45774;\nnavigator__$2 \x3d G__45775;\nlast_pos \x3d G__45776;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.pprint.iterate_main_sublists \x3d (function cljs$pprint$iterate_main_sublists(params,navigator,offsets){\nvar max_count \x3d new cljs.core.Keyword(null,\x22max-iterations\x22,\x22max-iterations\x22,2021275563).cljs$core$IFn$_invoke$arity$1(params);\nvar param_clause \x3d cljs.core.first(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params));\nvar vec__41810 \x3d ((cljs.core.empty_QMARK_(param_clause))?cljs.pprint.get_format_arg(navigator):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [param_clause,navigator], null));\nvar clause \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41810,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41810,(1),null);\nvar count \x3d (0);\nvar navigator__$2 \x3d navigator__$1;\nwhile(true){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d ((cljs.core.empty_QMARK_(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator__$2))) \x26\x26 (((cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22right-params\x22,\x22right-params\x22,-1790676237).cljs$core$IFn$_invoke$arity$1(params)))) || ((count \x3e (0))))));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar and__4149__auto__ \x3d max_count;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (count \x3e\x3d max_count);\n} else {\nreturn and__4149__auto__;\n}\n}\n})())){\nreturn navigator__$2;\n} else {\nvar vec__41910 \x3d cljs.pprint.next_arg_or_nil(navigator__$2);\nvar sublist \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41910,(0),null);\nvar navigator__$3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41910,(1),null);\nvar iter_result \x3d cljs.pprint.execute_sub_format(clause,cljs.pprint.init_navigator(sublist),navigator__$3);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22colon-up-arrow\x22,\x22colon-up-arrow\x22,244853007),cljs.core.first(iter_result))){\nreturn navigator__$3;\n} else {\nvar G__45780 \x3d (count + (1));\nvar G__45781 \x3d navigator__$3;\ncount \x3d G__45780;\nnavigator__$2 \x3d G__45781;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.pprint.logical_block_or_justify \x3d (function cljs$pprint$logical_block_or_justify(params,navigator,offsets){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22right-params\x22,\x22right-params\x22,-1790676237).cljs$core$IFn$_invoke$arity$1(params)))){\nreturn cljs.pprint.format_logical_block(params,navigator,offsets);\n} else {\nreturn cljs.pprint.justify_clauses(params,navigator,offsets);\n}\n});\ncljs.pprint.render_clauses \x3d (function cljs$pprint$render_clauses(clauses,navigator,base_navigator){\nvar clauses__$1 \x3d clauses;\nvar acc \x3d cljs.core.PersistentVector.EMPTY;\nvar navigator__$1 \x3d navigator;\nwhile(true){\nif(cljs.core.empty_QMARK_(clauses__$1)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,navigator__$1], null);\n} else {\nvar clause \x3d cljs.core.first(clauses__$1);\nvar vec__41950 \x3d (function (){var sb \x3d (new goog.string.StringBuffer());\nvar _STAR_out_STAR__orig_val__41955 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__41956 \x3d (new cljs.core.StringBufferWriter(sb));\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__41956);\n\ntry{return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.pprint.execute_sub_format(clause,navigator__$1,base_navigator),cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb)], null);\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__41955);\n}})();\nvar iter_result \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41950,(0),null);\nvar result_str \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41950,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333),cljs.core.first(iter_result))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [acc,cljs.core.second(iter_result)], null);\n} else {\nvar G__45789 \x3d cljs.core.next(clauses__$1);\nvar G__45790 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(acc,result_str);\nvar G__45791 \x3d iter_result;\nclauses__$1 \x3d G__45789;\nacc \x3d G__45790;\nnavigator__$1 \x3d G__45791;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.pprint.justify_clauses \x3d (function cljs$pprint$justify_clauses(params,navigator,offsets){\nvar vec__41980 \x3d (function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar else$ \x3d temp__5753__auto__;\nreturn cljs.pprint.render_clauses(else$,navigator,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\n} else {\nreturn null;\n}\n})();\nvar vec__41983 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41980,(0),null);\nvar eol_str \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41983,(0),null);\nvar new_navigator \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41980,(1),null);\nvar navigator__$1 \x3d (function (){var or__4160__auto__ \x3d new_navigator;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn navigator;\n}\n})();\nvar vec__41987 \x3d (function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22else-params\x22,\x22else-params\x22,-832171646).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar p \x3d temp__5753__auto__;\nreturn cljs.pprint.realize_parameter_list(p,navigator__$1);\n} else {\nreturn null;\n}\n})();\nvar else_params \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41987,(0),null);\nvar new_navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41987,(1),null);\nvar navigator__$2 \x3d (function (){var or__4160__auto__ \x3d new_navigator__$1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn navigator__$1;\n}\n})();\nvar min_remaining \x3d (function (){var or__4160__auto__ \x3d cljs.core.first(new cljs.core.Keyword(null,\x22min-remaining\x22,\x22min-remaining\x22,962687677).cljs$core$IFn$_invoke$arity$1(else_params));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar max_columns \x3d (function (){var or__4160__auto__ \x3d cljs.core.first(new cljs.core.Keyword(null,\x22max-columns\x22,\x22max-columns\x22,1742323262).cljs$core$IFn$_invoke$arity$1(else_params));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.pprint.get_max_column(cljs.core._STAR_out_STAR_);\n}\n})();\nvar clauses \x3d new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params);\nvar vec__41990 \x3d cljs.pprint.render_clauses(clauses,navigator__$2,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\nvar strs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41990,(0),null);\nvar navigator__$3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__41990,(1),null);\nvar slots \x3d (function (){var x__4249__auto__ \x3d (1);\nvar y__4250__auto__ \x3d (((cljs.core.count(strs) - (1)) + (cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?(1):(0))) + (cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))?(1):(0)));\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})();\nvar chars \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$2(cljs.core._PLUS_,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.count,strs));\nvar mincol \x3d new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445).cljs$core$IFn$_invoke$arity$1(params);\nvar minpad \x3d new cljs.core.Keyword(null,\x22minpad\x22,\x22minpad\x22,323570901).cljs$core$IFn$_invoke$arity$1(params);\nvar colinc \x3d new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385).cljs$core$IFn$_invoke$arity$1(params);\nvar minout \x3d (chars + (slots * minpad));\nvar result_columns \x3d (((minout \x3c\x3d mincol))?mincol:(mincol + (colinc * ((1) + cljs.core.quot(((minout - mincol) - (1)),colinc)))));\nvar total_pad \x3d (result_columns - chars);\nvar pad \x3d (function (){var x__4249__auto__ \x3d minpad;\nvar y__4250__auto__ \x3d cljs.core.quot(total_pad,slots);\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})();\nvar extra_pad \x3d (total_pad - (pad * slots));\nvar pad_str \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(pad,new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params)));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d eol_str;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (((cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_)))) + min_remaining) + result_columns) \x3e max_columns);\n} else {\nreturn and__4149__auto__;\n}\n})())){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([eol_str], 0));\n} else {\n}\n\nvar slots_45834__$1 \x3d slots;\nvar extra_pad_45835__$1 \x3d extra_pad;\nvar strs_45836__$1 \x3d strs;\nvar pad_only_45837 \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(strs_45836__$1),(1))) \x26\x26 (cljs.core.not(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))));\n}\n})();\nwhile(true){\nif(cljs.core.seq(strs_45836__$1)){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[cljs.core.str.cljs$core$IFn$_invoke$arity$1(((cljs.core.not(pad_only_45837))?cljs.core.first(strs_45836__$1):null)),cljs.core.str.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_((function (){var or__4160__auto__ \x3d pad_only_45837;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.core.next(strs_45836__$1);\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nreturn new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\n}\n}\n})())?pad_str:null)),cljs.core.str.cljs$core$IFn$_invoke$arity$1((((extra_pad_45835__$1 \x3e (0)))?new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530).cljs$core$IFn$_invoke$arity$1(params):null))].join(\x27\x27)], 0));\n\nvar G__45840 \x3d (slots_45834__$1 - (1));\nvar G__45841 \x3d (extra_pad_45835__$1 - (1));\nvar G__45842 \x3d (cljs.core.truth_(pad_only_45837)?strs_45836__$1:cljs.core.next(strs_45836__$1));\nvar G__45843 \x3d false;\nslots_45834__$1 \x3d G__45840;\nextra_pad_45835__$1 \x3d G__45841;\nstrs_45836__$1 \x3d G__45842;\npad_only_45837 \x3d G__45843;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn navigator__$3;\n});\n/**\n * Returns a proxy that wraps writer, converting all characters to lower case\n */\ncljs.pprint.downcase_writer \x3d (function cljs$pprint$downcase_writer(writer){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.t_cljs$pprint42121 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.pprint.t_cljs$pprint42121 \x3d (function (writer,meta42122){\nthis.writer \x3d writer;\nthis.meta42122 \x3d meta42122;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1074135040;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.pprint.t_cljs$pprint42121.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_42123,meta42122__$1){\nvar self__ \x3d this;\nvar _42123__$1 \x3d this;\nreturn (new cljs.pprint.t_cljs$pprint42121(self__.writer,meta42122__$1));\n}));\n\n(cljs.pprint.t_cljs$pprint42121.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_42123){\nvar self__ \x3d this;\nvar _42123__$1 \x3d this;\nreturn self__.meta42122;\n}));\n\n(cljs.pprint.t_cljs$pprint42121.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core._flush(self__.writer);\n}));\n\n(cljs.pprint.t_cljs$pprint42121.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (this$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar pred__42142 \x3d cljs.core._EQ_;\nvar expr__42143 \x3d cljs.core.type(x);\nif(cljs.core.truth_((pred__42142.cljs$core$IFn$_invoke$arity$2 ? pred__42142.cljs$core$IFn$_invoke$arity$2(String,expr__42143) : pred__42142.call(null,String,expr__42143)))){\nvar s \x3d x;\nreturn cljs.core._write(self__.writer,clojure.string.lower_case(s));\n} else {\nif(cljs.core.truth_((pred__42142.cljs$core$IFn$_invoke$arity$2 ? pred__42142.cljs$core$IFn$_invoke$arity$2(Number,expr__42143) : pred__42142.call(null,Number,expr__42143)))){\nvar c \x3d x;\nreturn cljs.core._write(self__.writer,clojure.string.lower_case(cljs.core.char$(c)));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__42143)].join(\x27\x27)));\n}\n}\n}));\n\n(cljs.pprint.t_cljs$pprint42121.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22writer\x22,\x22writer\x22,1362963291,null),new cljs.core.Symbol(null,\x22meta42122\x22,\x22meta42122\x22,-1520173393,null)], null);\n}));\n\n(cljs.pprint.t_cljs$pprint42121.cljs$lang$type \x3d true);\n\n(cljs.pprint.t_cljs$pprint42121.cljs$lang$ctorStr \x3d \x22cljs.pprint/t_cljs$pprint42121\x22);\n\n(cljs.pprint.t_cljs$pprint42121.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.pprint/t_cljs$pprint42121\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/t_cljs$pprint42121.\n */\ncljs.pprint.__GT_t_cljs$pprint42121 \x3d (function cljs$pprint$downcase_writer_$___GT_t_cljs$pprint42121(writer__$1,meta42122){\nreturn (new cljs.pprint.t_cljs$pprint42121(writer__$1,meta42122));\n});\n\n}\n\nreturn (new cljs.pprint.t_cljs$pprint42121(writer,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Returns a proxy that wraps writer, converting all characters to upper case\n */\ncljs.pprint.upcase_writer \x3d (function cljs$pprint$upcase_writer(writer){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.t_cljs$pprint42154 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.pprint.t_cljs$pprint42154 \x3d (function (writer,meta42155){\nthis.writer \x3d writer;\nthis.meta42155 \x3d meta42155;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1074135040;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.pprint.t_cljs$pprint42154.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_42156,meta42155__$1){\nvar self__ \x3d this;\nvar _42156__$1 \x3d this;\nreturn (new cljs.pprint.t_cljs$pprint42154(self__.writer,meta42155__$1));\n}));\n\n(cljs.pprint.t_cljs$pprint42154.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_42156){\nvar self__ \x3d this;\nvar _42156__$1 \x3d this;\nreturn self__.meta42155;\n}));\n\n(cljs.pprint.t_cljs$pprint42154.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core._flush(self__.writer);\n}));\n\n(cljs.pprint.t_cljs$pprint42154.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (this$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar pred__42168 \x3d cljs.core._EQ_;\nvar expr__42169 \x3d cljs.core.type(x);\nif(cljs.core.truth_((pred__42168.cljs$core$IFn$_invoke$arity$2 ? pred__42168.cljs$core$IFn$_invoke$arity$2(String,expr__42169) : pred__42168.call(null,String,expr__42169)))){\nvar s \x3d x;\nreturn cljs.core._write(self__.writer,clojure.string.upper_case(s));\n} else {\nif(cljs.core.truth_((pred__42168.cljs$core$IFn$_invoke$arity$2 ? pred__42168.cljs$core$IFn$_invoke$arity$2(Number,expr__42169) : pred__42168.call(null,Number,expr__42169)))){\nvar c \x3d x;\nreturn cljs.core._write(self__.writer,clojure.string.upper_case(cljs.core.char$(c)));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__42169)].join(\x27\x27)));\n}\n}\n}));\n\n(cljs.pprint.t_cljs$pprint42154.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22writer\x22,\x22writer\x22,1362963291,null),new cljs.core.Symbol(null,\x22meta42155\x22,\x22meta42155\x22,2135533193,null)], null);\n}));\n\n(cljs.pprint.t_cljs$pprint42154.cljs$lang$type \x3d true);\n\n(cljs.pprint.t_cljs$pprint42154.cljs$lang$ctorStr \x3d \x22cljs.pprint/t_cljs$pprint42154\x22);\n\n(cljs.pprint.t_cljs$pprint42154.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.pprint/t_cljs$pprint42154\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/t_cljs$pprint42154.\n */\ncljs.pprint.__GT_t_cljs$pprint42154 \x3d (function cljs$pprint$upcase_writer_$___GT_t_cljs$pprint42154(writer__$1,meta42155){\nreturn (new cljs.pprint.t_cljs$pprint42154(writer__$1,meta42155));\n});\n\n}\n\nreturn (new cljs.pprint.t_cljs$pprint42154(writer,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Capitalizes the words in a string. If first? is false, don\x27t capitalize the\n *                                    first character of the string even if it\x27s a letter.\n */\ncljs.pprint.capitalize_string \x3d (function cljs$pprint$capitalize_string(s,first_QMARK_){\nvar f \x3d cljs.core.first(s);\nvar s__$1 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d first_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d f;\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn goog.string.isUnicodeChar(f);\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})())?[clojure.string.upper_case(f),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(1))].join(\x27\x27):s);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.first(cljs.pprint.consume((function (s__$2){\nif(cljs.core.empty_QMARK_(s__$2)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null], null);\n} else {\nvar m \x3d RegExp(\x22\\\\W\\\\w\x22,\x22g\x22).exec(s__$2);\nvar offset \x3d (function (){var and__4149__auto__ \x3d m;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (m.index + (1));\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(offset)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s__$2,(0),offset),clojure.string.upper_case(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s__$2,offset))].join(\x27\x27),cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s__$2,(offset + (1)))], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [s__$2,null], null);\n}\n}\n}),s__$1)));\n});\n/**\n * Returns a proxy that wraps writer, capitalizing all words\n */\ncljs.pprint.capitalize_word_writer \x3d (function cljs$pprint$capitalize_word_writer(writer){\nvar last_was_whitespace_QMARK_ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(true);\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.t_cljs$pprint42315 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.pprint.t_cljs$pprint42315 \x3d (function (writer,last_was_whitespace_QMARK_,meta42316){\nthis.writer \x3d writer;\nthis.last_was_whitespace_QMARK_ \x3d last_was_whitespace_QMARK_;\nthis.meta42316 \x3d meta42316;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1074135040;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.pprint.t_cljs$pprint42315.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_42317,meta42316__$1){\nvar self__ \x3d this;\nvar _42317__$1 \x3d this;\nreturn (new cljs.pprint.t_cljs$pprint42315(self__.writer,self__.last_was_whitespace_QMARK_,meta42316__$1));\n}));\n\n(cljs.pprint.t_cljs$pprint42315.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_42317){\nvar self__ \x3d this;\nvar _42317__$1 \x3d this;\nreturn self__.meta42316;\n}));\n\n(cljs.pprint.t_cljs$pprint42315.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core._flush(self__.writer);\n}));\n\n(cljs.pprint.t_cljs$pprint42315.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (this$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar pred__42346 \x3d cljs.core._EQ_;\nvar expr__42347 \x3d cljs.core.type(x);\nif(cljs.core.truth_((pred__42346.cljs$core$IFn$_invoke$arity$2 ? pred__42346.cljs$core$IFn$_invoke$arity$2(String,expr__42347) : pred__42346.call(null,String,expr__42347)))){\nvar s \x3d x;\ncljs.core._write(self__.writer,cljs.pprint.capitalize_string(s.toLowerCase(),cljs.core.deref(self__.last_was_whitespace_QMARK_)));\n\nif((s.length \x3e (0))){\nreturn cljs.core.reset_BANG_(self__.last_was_whitespace_QMARK_,goog.string.isEmptyOrWhitespace(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,(cljs.core.count(s) - (1)))));\n} else {\nreturn null;\n}\n} else {\nif(cljs.core.truth_((pred__42346.cljs$core$IFn$_invoke$arity$2 ? pred__42346.cljs$core$IFn$_invoke$arity$2(Number,expr__42347) : pred__42346.call(null,Number,expr__42347)))){\nvar c \x3d cljs.core.char$(x);\nvar mod_c \x3d (cljs.core.truth_(cljs.core.deref(self__.last_was_whitespace_QMARK_))?clojure.string.upper_case(c):c);\ncljs.core._write(self__.writer,mod_c);\n\nreturn cljs.core.reset_BANG_(self__.last_was_whitespace_QMARK_,goog.string.isEmptyOrWhitespace(c));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__42347)].join(\x27\x27)));\n}\n}\n}));\n\n(cljs.pprint.t_cljs$pprint42315.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22writer\x22,\x22writer\x22,1362963291,null),new cljs.core.Symbol(null,\x22last-was-whitespace?\x22,\x22last-was-whitespace?\x22,-1073928093,null),new cljs.core.Symbol(null,\x22meta42316\x22,\x22meta42316\x22,-14787239,null)], null);\n}));\n\n(cljs.pprint.t_cljs$pprint42315.cljs$lang$type \x3d true);\n\n(cljs.pprint.t_cljs$pprint42315.cljs$lang$ctorStr \x3d \x22cljs.pprint/t_cljs$pprint42315\x22);\n\n(cljs.pprint.t_cljs$pprint42315.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.pprint/t_cljs$pprint42315\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/t_cljs$pprint42315.\n */\ncljs.pprint.__GT_t_cljs$pprint42315 \x3d (function cljs$pprint$capitalize_word_writer_$___GT_t_cljs$pprint42315(writer__$1,last_was_whitespace_QMARK___$1,meta42316){\nreturn (new cljs.pprint.t_cljs$pprint42315(writer__$1,last_was_whitespace_QMARK___$1,meta42316));\n});\n\n}\n\nreturn (new cljs.pprint.t_cljs$pprint42315(writer,last_was_whitespace_QMARK_,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Returns a proxy that wraps writer, capitalizing the first word\n */\ncljs.pprint.init_cap_writer \x3d (function cljs$pprint$init_cap_writer(writer){\nvar capped \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false);\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.t_cljs$pprint42384 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.pprint.t_cljs$pprint42384 \x3d (function (writer,capped,meta42385){\nthis.writer \x3d writer;\nthis.capped \x3d capped;\nthis.meta42385 \x3d meta42385;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1074135040;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.pprint.t_cljs$pprint42384.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_42386,meta42385__$1){\nvar self__ \x3d this;\nvar _42386__$1 \x3d this;\nreturn (new cljs.pprint.t_cljs$pprint42384(self__.writer,self__.capped,meta42385__$1));\n}));\n\n(cljs.pprint.t_cljs$pprint42384.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_42386){\nvar self__ \x3d this;\nvar _42386__$1 \x3d this;\nreturn self__.meta42385;\n}));\n\n(cljs.pprint.t_cljs$pprint42384.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core._flush(self__.writer);\n}));\n\n(cljs.pprint.t_cljs$pprint42384.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (this$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar pred__42391 \x3d cljs.core._EQ_;\nvar expr__42392 \x3d cljs.core.type(x);\nif(cljs.core.truth_((pred__42391.cljs$core$IFn$_invoke$arity$2 ? pred__42391.cljs$core$IFn$_invoke$arity$2(String,expr__42392) : pred__42391.call(null,String,expr__42392)))){\nvar s \x3d clojure.string.lower_case(x);\nif(cljs.core.not(cljs.core.deref(self__.capped))){\nvar m \x3d RegExp(\x22\\\\S\x22,\x22g\x22).exec(s);\nvar offset \x3d (function (){var and__4149__auto__ \x3d m;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn m.index;\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(offset)){\ncljs.core._write(self__.writer,[cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),offset),clojure.string.upper_case(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(s,offset)),clojure.string.lower_case(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(offset + (1))))].join(\x27\x27));\n\nreturn cljs.core.reset_BANG_(self__.capped,true);\n} else {\nreturn cljs.core._write(self__.writer,s);\n}\n} else {\nreturn cljs.core._write(self__.writer,clojure.string.lower_case(s));\n}\n} else {\nif(cljs.core.truth_((pred__42391.cljs$core$IFn$_invoke$arity$2 ? pred__42391.cljs$core$IFn$_invoke$arity$2(Number,expr__42392) : pred__42391.call(null,Number,expr__42392)))){\nvar c \x3d cljs.core.char$(x);\nif(cljs.core.truth_(((cljs.core.not(cljs.core.deref(self__.capped)))?goog.string.isUnicodeChar(c):false))){\ncljs.core.reset_BANG_(self__.capped,true);\n\nreturn cljs.core._write(self__.writer,clojure.string.upper_case(c));\n} else {\nreturn cljs.core._write(self__.writer,clojure.string.lower_case(c));\n}\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__42392)].join(\x27\x27)));\n}\n}\n}));\n\n(cljs.pprint.t_cljs$pprint42384.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22writer\x22,\x22writer\x22,1362963291,null),new cljs.core.Symbol(null,\x22capped\x22,\x22capped\x22,-1650988402,null),new cljs.core.Symbol(null,\x22meta42385\x22,\x22meta42385\x22,-1674037059,null)], null);\n}));\n\n(cljs.pprint.t_cljs$pprint42384.cljs$lang$type \x3d true);\n\n(cljs.pprint.t_cljs$pprint42384.cljs$lang$ctorStr \x3d \x22cljs.pprint/t_cljs$pprint42384\x22);\n\n(cljs.pprint.t_cljs$pprint42384.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.pprint/t_cljs$pprint42384\x22);\n}));\n\n/**\n * Positional factory function for cljs.pprint/t_cljs$pprint42384.\n */\ncljs.pprint.__GT_t_cljs$pprint42384 \x3d (function cljs$pprint$init_cap_writer_$___GT_t_cljs$pprint42384(writer__$1,capped__$1,meta42385){\nreturn (new cljs.pprint.t_cljs$pprint42384(writer__$1,capped__$1,meta42385));\n});\n\n}\n\nreturn (new cljs.pprint.t_cljs$pprint42384(writer,capped,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.pprint.modify_case \x3d (function cljs$pprint$modify_case(make_writer,params,navigator,offsets){\nvar clause \x3d cljs.core.first(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params));\nvar _STAR_out_STAR__orig_val__42467 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__42468 \x3d (make_writer.cljs$core$IFn$_invoke$arity$1 ? make_writer.cljs$core$IFn$_invoke$arity$1(cljs.core._STAR_out_STAR_) : make_writer.call(null,cljs.core._STAR_out_STAR_));\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__42468);\n\ntry{return cljs.pprint.execute_sub_format(clause,navigator,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__42467);\n}});\n/**\n * Returns the IWriter passed in wrapped in a pretty writer proxy, unless it\x27s\n * already a pretty writer. Generally, it is unnecessary to call this function, since pprint,\n * write, and cl-format all call it if they need to. However if you want the state to be\n * preserved across calls, you will want to wrap them with this.\n * \n * For example, when you want to generate column-aware output with multiple calls to cl-format,\n * do it like in this example:\n * \n *  (defn print-table [aseq column-width]\n *    (binding [*out* (get-pretty-writer *out*)]\n *      (doseq [row aseq]\n *        (doseq [col row]\n *          (cl-format true \x22~4D~7,vT\x22 col column-width))\n *        (prn))))\n * \n * Now when you run:\n * \n *  user\x3e (print-table (map #(vector % (* % %) (* % % %)) (range 1 11)) 8)\n * \n * It prints a table of squares and cubes for the numbers from 1 to 10:\n * \n *     1      1       1\n *     2      4       8\n *     3      9      27\n *     4     16      64\n *     5     25     125\n *     6     36     216\n *     7     49     343\n *     8     64     512\n *     9     81     729\n *    10    100    1000\n */\ncljs.pprint.get_pretty_writer \x3d (function cljs$pprint$get_pretty_writer(writer){\nif(cljs.core.truth_(cljs.pprint.pretty_writer_QMARK_(writer))){\nreturn writer;\n} else {\nreturn cljs.pprint.pretty_writer(writer,cljs.pprint._STAR_print_right_margin_STAR_,cljs.pprint._STAR_print_miser_width_STAR_);\n}\n});\n/**\n * Make a newline if *out* is not already at the beginning of the line. If *out* is\n * not a pretty writer (which keeps track of columns), this function always outputs a newline.\n */\ncljs.pprint.fresh_line \x3d (function cljs$pprint$fresh_line(){\nif((((!((cljs.core._STAR_out_STAR_ \x3d\x3d null))))?(((((cljs.core._STAR_out_STAR_.cljs$lang$protocol_mask$partition0$ \x26 (32768))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d cljs.core._STAR_out_STAR_.cljs$core$IDeref$))))?true:(((!cljs.core._STAR_out_STAR_.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,cljs.core._STAR_out_STAR_):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,cljs.core._STAR_out_STAR_))){\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_)))))))){\nreturn cljs.pprint.prn();\n} else {\nreturn null;\n}\n} else {\nreturn cljs.pprint.prn();\n}\n});\ncljs.pprint.absolute_tabulation \x3d (function cljs$pprint$absolute_tabulation(params,navigator,offsets){\nvar colnum_45963 \x3d new cljs.core.Keyword(null,\x22colnum\x22,\x22colnum\x22,2023796854).cljs$core$IFn$_invoke$arity$1(params);\nvar colinc_45964 \x3d new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385).cljs$core$IFn$_invoke$arity$1(params);\nvar current_45965 \x3d cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_))));\nvar space_count_45966 \x3d (((current_45965 \x3c colnum_45963))?(colnum_45963 - current_45965):((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(colinc_45964,(0)))?(0):(colinc_45964 - cljs.core.rem((current_45965 - colnum_45963),colinc_45964))\n));\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(space_count_45966,\x22 \x22))], 0));\n\nreturn navigator;\n});\ncljs.pprint.relative_tabulation \x3d (function cljs$pprint$relative_tabulation(params,navigator,offsets){\nvar colrel_45969 \x3d new cljs.core.Keyword(null,\x22colnum\x22,\x22colnum\x22,2023796854).cljs$core$IFn$_invoke$arity$1(params);\nvar colinc_45970 \x3d new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385).cljs$core$IFn$_invoke$arity$1(params);\nvar start_col_45971 \x3d (colrel_45969 + cljs.pprint.get_column(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(cljs.core.deref(cljs.core._STAR_out_STAR_)))));\nvar offset_45972 \x3d (((colinc_45970 \x3e (0)))?cljs.core.rem(start_col_45971,colinc_45970):(0));\nvar space_count_45973 \x3d (colrel_45969 + ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),offset_45972))?(0):(colinc_45970 - offset_45972)));\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(space_count_45973,\x22 \x22))], 0));\n\nreturn navigator;\n});\ncljs.pprint.format_logical_block \x3d (function cljs$pprint$format_logical_block(params,navigator,offsets){\nvar clauses \x3d new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(params);\nvar clause_count \x3d cljs.core.count(clauses);\nvar prefix \x3d (((clause_count \x3e (1)))?new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(cljs.core.first(cljs.core.first(clauses)))):(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?\x22(\x22:null));\nvar body \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(clauses,(((clause_count \x3e (1)))?(1):(0)));\nvar suffix \x3d (((clause_count \x3e (2)))?new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(cljs.core.first(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(clauses,(2))))):(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?\x22)\x22:null));\nvar vec__42519 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42519,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42519,(1),null);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__42530_45989 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__42531_45991 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__42532_45992 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__42533_45993 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__42532_45992);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__42533_45993);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,prefix,null,suffix);\n\ncljs.pprint.execute_sub_format(body,cljs.pprint.init_navigator(arg),new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params));\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__42531_45991);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__42530_45989);\n}}\n\n\nreturn navigator__$1;\n});\ncljs.pprint.set_indent \x3d (function cljs$pprint$set_indent(params,navigator,offsets){\nvar relative_to \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603):new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210));\ncljs.pprint.pprint_indent(relative_to,new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025).cljs$core$IFn$_invoke$arity$1(params));\n\nreturn navigator;\n});\ncljs.pprint.conditional_newline \x3d (function cljs$pprint$conditional_newline(params,navigator,offsets){\nvar kind \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.Keyword(null,\x22mandatory\x22,\x22mandatory\x22,542802336):new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889)):(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.Keyword(null,\x22miser\x22,\x22miser\x22,-556060186):new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697)));\ncljs.pprint.pprint_newline(kind);\n\nreturn navigator;\n});\ncljs.pprint.directive_table \x3d cljs.core.PersistentHashMap.fromArrays([\x22A\x22,\x22S\x22,\x22D\x22,\x22B\x22,\x22O\x22,\x22X\x22,\x22R\x22,\x22P\x22,\x22C\x22,\x22F\x22,\x22E\x22,\x22G\x22,\x22$\x22,\x22%\x22,\x22\x26\x22,\x22|\x22,\x22~\x22,\x22\\n\x22,\x22T\x22,\x22*\x22,\x22?\x22,\x22(\x22,\x22)\x22,\x22[\x22,\x22;\x22,\x22]\x22,\x22{\x22,\x22}\x22,\x22\x3c\x22,\x22\x3e\x22,\x22^\x22,\x22W\x22,\x22_\x22,\x22I\x22],[new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22A\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22minpad\x22,\x22minpad\x22,323570901),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (p1__42556_SHARP_,p2__42557_SHARP_,p3__42558_SHARP_){\nreturn cljs.pprint.format_ascii(cljs.core.print_str,p1__42556_SHARP_,p2__42557_SHARP_,p3__42558_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22S\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22minpad\x22,\x22minpad\x22,323570901),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (p1__42559_SHARP_,p2__42560_SHARP_,p3__42561_SHARP_){\nreturn cljs.pprint.format_ascii(cljs.core.pr_str,p1__42559_SHARP_,p2__42560_SHARP_,p3__42561_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22D\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22,\x22,String], null),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (p1__42562_SHARP_,p2__42563_SHARP_,p3__42564_SHARP_){\nreturn cljs.pprint.format_integer((10),p1__42562_SHARP_,p2__42563_SHARP_,p3__42564_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22B\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22,\x22,String], null),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (p1__42566_SHARP_,p2__42567_SHARP_,p3__42568_SHARP_){\nreturn cljs.pprint.format_integer((2),p1__42566_SHARP_,p2__42567_SHARP_,p3__42568_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22O\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22,\x22,String], null),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (p1__42569_SHARP_,p2__42570_SHARP_,p3__42571_SHARP_){\nreturn cljs.pprint.format_integer((8),p1__42569_SHARP_,p2__42570_SHARP_,p3__42571_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22X\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22,\x22,String], null),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (p1__42572_SHARP_,p2__42573_SHARP_,p3__42574_SHARP_){\nreturn cljs.pprint.format_integer((16),p1__42572_SHARP_,p2__42573_SHARP_,p3__42574_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22R\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(5),[new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22commachar\x22,\x22commachar\x22,652859327),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22,\x22,String], null),new cljs.core.Keyword(null,\x22commainterval\x22,\x22commainterval\x22,-1980061083),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(3),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_(cljs.core.first(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(params)))){\nreturn (function (p1__42576_SHARP_,p2__42577_SHARP_,p3__42579_SHARP_){\nreturn cljs.pprint.format_integer(new cljs.core.Keyword(null,\x22base\x22,\x22base\x22,185279322).cljs$core$IFn$_invoke$arity$1(p1__42576_SHARP_),p1__42576_SHARP_,p2__42577_SHARP_,p3__42579_SHARP_);\n});\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn (function (p1__42580_SHARP_,p2__42581_SHARP_,p3__42582_SHARP_){\nreturn cljs.pprint.format_old_roman(p1__42580_SHARP_,p2__42581_SHARP_,p3__42582_SHARP_);\n});\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\nreturn (function (p1__42583_SHARP_,p2__42584_SHARP_,p3__42585_SHARP_){\nreturn cljs.pprint.format_new_roman(p1__42583_SHARP_,p2__42584_SHARP_,p3__42585_SHARP_);\n});\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))){\nreturn (function (p1__42586_SHARP_,p2__42587_SHARP_,p3__42588_SHARP_){\nreturn cljs.pprint.format_ordinal_english(p1__42586_SHARP_,p2__42587_SHARP_,p3__42588_SHARP_);\n});\n} else {\nreturn (function (p1__42589_SHARP_,p2__42590_SHARP_,p3__42592_SHARP_){\nreturn cljs.pprint.format_cardinal_english(p1__42589_SHARP_,p2__42590_SHARP_,p3__42592_SHARP_);\n});\n\n}\n}\n}\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22P\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,navigator,offsets){\nvar navigator__$1 \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params__$1))?cljs.pprint.relative_reposition(navigator,(-1)):navigator);\nvar strs \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params__$1))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22y\x22,\x22ies\x22], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22\x22,\x22s\x22], null));\nvar vec__42648 \x3d cljs.pprint.next_arg(navigator__$1);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42648,(0),null);\nvar navigator__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42648,(1),null);\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg,(1)))?cljs.core.first(strs):cljs.core.second(strs))], 0));\n\nreturn navigator__$2;\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22C\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22char-format\x22,\x22char-format\x22,-1016499218),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))){\nreturn cljs.pprint.pretty_character;\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\nreturn cljs.pprint.readable_character;\n} else {\nreturn cljs.pprint.plain_character;\n\n}\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22F\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(5),[new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22k\x22,\x22k\x22,-2146297393),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.fixed_float;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22E\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(7),[new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22e\x22,\x22e\x22,1381269198),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22k\x22,\x22k\x22,-2146297393),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22exponentchar\x22,\x22exponentchar\x22,1986664222),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.exponential_float;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22G\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(7),[new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22e\x22,\x22e\x22,1381269198),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22k\x22,\x22k\x22,-2146297393),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22overflowchar\x22,\x22overflowchar\x22,-1620088106),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null),new cljs.core.Keyword(null,\x22exponentchar\x22,\x22exponentchar\x22,1986664222),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.general_float;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22$\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(2),Number], null),new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.dollar_float;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22%\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,arg_navigator,offsets){\nvar n__4648__auto___46078 \x3d new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085).cljs$core$IFn$_invoke$arity$1(params__$1);\nvar i_46080 \x3d (0);\nwhile(true){\nif((i_46080 \x3c n__4648__auto___46078)){\ncljs.pprint.prn();\n\nvar G__46082 \x3d (i_46080 + (1));\ni_46080 \x3d G__46082;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn arg_navigator;\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22\x26\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,arg_navigator,offsets){\nvar cnt_46106 \x3d new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085).cljs$core$IFn$_invoke$arity$1(params__$1);\nif((cnt_46106 \x3e (0))){\ncljs.pprint.fresh_line();\n} else {\n}\n\nvar n__4648__auto___46107 \x3d (cnt_46106 - (1));\nvar i_46108 \x3d (0);\nwhile(true){\nif((i_46108 \x3c n__4648__auto___46107)){\ncljs.pprint.prn();\n\nvar G__46109 \x3d (i_46108 + (1));\ni_46108 \x3d G__46109;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn arg_navigator;\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22|\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,arg_navigator,offsets){\nvar n__4648__auto___46111 \x3d new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085).cljs$core$IFn$_invoke$arity$1(params__$1);\nvar i_46112 \x3d (0);\nwhile(true){\nif((i_46112 \x3c n__4648__auto___46111)){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\f\x22], 0));\n\nvar G__46121 \x3d (i_46112 + (1));\ni_46112 \x3d G__46121;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn arg_navigator;\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22~\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,arg_navigator,offsets){\nvar n \x3d new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025).cljs$core$IFn$_invoke$arity$1(params__$1);\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(n,\x22~\x22))], 0));\n\nreturn arg_navigator;\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22\\n\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,arg_navigator,offsets){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params__$1))){\ncljs.pprint.prn();\n} else {\n}\n\nreturn arg_navigator;\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22T\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(2),[new cljs.core.Keyword(null,\x22colnum\x22,\x22colnum\x22,2023796854),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\nreturn (function (p1__42594_SHARP_,p2__42595_SHARP_,p3__42596_SHARP_){\nreturn cljs.pprint.relative_tabulation(p1__42594_SHARP_,p2__42595_SHARP_,p3__42596_SHARP_);\n});\n} else {\nreturn (function (p1__42597_SHARP_,p2__42598_SHARP_,p3__42599_SHARP_){\nreturn cljs.pprint.absolute_tabulation(p1__42597_SHARP_,p2__42598_SHARP_,p3__42599_SHARP_);\n});\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22*\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,navigator,offsets){\nvar n \x3d new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025).cljs$core$IFn$_invoke$arity$1(params__$1);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params__$1))){\nreturn cljs.pprint.absolute_reposition(navigator,n);\n} else {\nreturn cljs.pprint.relative_reposition(navigator,(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params__$1))?(- n):n));\n}\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22?\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\nreturn (function (params__$1,navigator,offsets){\nvar vec__42710 \x3d cljs.pprint.get_format_arg(navigator);\nvar subformat \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42710,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42710,(1),null);\nreturn cljs.pprint.execute_sub_format(subformat,navigator__$1,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params__$1));\n});\n} else {\nreturn (function (params__$1,navigator,offsets){\nvar vec__42719 \x3d cljs.pprint.get_format_arg(navigator);\nvar subformat \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42719,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42719,(1),null);\nvar vec__42722 \x3d cljs.pprint.next_arg(navigator__$1);\nvar subargs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42722,(0),null);\nvar navigator__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42722,(1),null);\nvar sub_navigator \x3d cljs.pprint.init_navigator(subargs);\ncljs.pprint.execute_sub_format(subformat,sub_navigator,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params__$1));\n\nreturn navigator__$2;\n});\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22(\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833),\x22)\x22,new cljs.core.Keyword(null,\x22allows-separator\x22,\x22allows-separator\x22,-818967742),null,new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146),null], null),new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nvar mod_case_writer \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params);\n} else {\nreturn and__4149__auto__;\n}\n})())?cljs.pprint.upcase_writer:(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?cljs.pprint.capitalize_word_writer:(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))?cljs.pprint.init_cap_writer:cljs.pprint.downcase_writer\n)));\nreturn (function (p1__42602_SHARP_,p2__42603_SHARP_,p3__42604_SHARP_){\nreturn cljs.pprint.modify_case(mod_case_writer,p1__42602_SHARP_,p2__42603_SHARP_,p3__42604_SHARP_);\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22)\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn null;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22[\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22selector\x22,\x22selector\x22,762528866),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833),\x22]\x22,new cljs.core.Keyword(null,\x22allows-separator\x22,\x22allows-separator\x22,-818967742),true,new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146),new cljs.core.Keyword(null,\x22last\x22,\x22last\x22,1105735132)], null),new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))){\nreturn cljs.pprint.boolean_conditional;\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\nreturn cljs.pprint.check_arg_conditional;\n} else {\nreturn cljs.pprint.choice_conditional;\n\n}\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22;\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(2),[new cljs.core.Keyword(null,\x22min-remaining\x22,\x22min-remaining\x22,962687677),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22max-columns\x22,\x22max-columns\x22,1742323262),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22separator\x22,\x22separator\x22,-1628749125),true], null),new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn null;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22]\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn null;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22{\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22max-iterations\x22,\x22max-iterations\x22,2021275563),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833),\x22}\x22,new cljs.core.Keyword(null,\x22allows-separator\x22,\x22allows-separator\x22,-818967742),false], null),new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.pprint.iterate_main_sublists;\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))){\nreturn cljs.pprint.iterate_list_of_sublists;\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))){\nreturn cljs.pprint.iterate_main_list;\n} else {\nreturn cljs.pprint.iterate_sublist;\n\n}\n}\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22}\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn null;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22\x3c\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(4),[new cljs.core.Keyword(null,\x22mincol\x22,\x22mincol\x22,1230695445),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22colinc\x22,\x22colinc\x22,-584873385),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),Number], null),new cljs.core.Keyword(null,\x22minpad\x22,\x22minpad\x22,323570901),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null),new cljs.core.Keyword(null,\x22padchar\x22,\x22padchar\x22,2018584530),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,String], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null,new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833),\x22\x3e\x22,new cljs.core.Keyword(null,\x22allows-separator\x22,\x22allows-separator\x22,-818967742),true,new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146),new cljs.core.Keyword(null,\x22first\x22,\x22first\x22,-644103046)], null),new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.logical_block_or_justify;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22\x3e\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn null;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22^\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(3),[new cljs.core.Keyword(null,\x22arg1\x22,\x22arg1\x22,951899358),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22arg2\x22,\x22arg2\x22,1729550917),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null),new cljs.core.Keyword(null,\x22arg3\x22,\x22arg3\x22,-1486822496),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn (function (params__$1,navigator,offsets){\nvar arg1 \x3d new cljs.core.Keyword(null,\x22arg1\x22,\x22arg1\x22,951899358).cljs$core$IFn$_invoke$arity$1(params__$1);\nvar arg2 \x3d new cljs.core.Keyword(null,\x22arg2\x22,\x22arg2\x22,1729550917).cljs$core$IFn$_invoke$arity$1(params__$1);\nvar arg3 \x3d new cljs.core.Keyword(null,\x22arg3\x22,\x22arg3\x22,-1486822496).cljs$core$IFn$_invoke$arity$1(params__$1);\nvar exit \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params__$1))?new cljs.core.Keyword(null,\x22colon-up-arrow\x22,\x22colon-up-arrow\x22,244853007):new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d arg1;\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d arg2;\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn arg3;\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})())){\nif((((arg1 \x3c\x3d arg2)) \x26\x26 ((arg2 \x3c\x3d arg3)))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);\n} else {\nreturn navigator;\n}\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d arg1;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn arg2;\n} else {\nreturn and__4149__auto__;\n}\n})())){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg1,arg2)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);\n} else {\nreturn navigator;\n}\n} else {\nif(cljs.core.truth_(arg1)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(arg1,(0))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);\n} else {\nreturn navigator;\n}\n} else {\nif((cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params__$1))?cljs.core.empty_QMARK_(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822).cljs$core$IFn$_invoke$arity$1(params__$1))):cljs.core.empty_QMARK_(new cljs.core.Keyword(null,\x22rest\x22,\x22rest\x22,-1241696419).cljs$core$IFn$_invoke$arity$1(navigator)))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [exit,navigator], null);\n} else {\nreturn navigator;\n}\n\n}\n}\n}\n});\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22W\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null,new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params);\n}\n})())){\nvar bindings \x3d cljs.core.concat.cljs$core$IFn$_invoke$arity$2((cljs.core.truth_(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22level\x22,\x22level\x22,1290497552),null,new cljs.core.Keyword(null,\x22length\x22,\x22length\x22,588987862),null], null):cljs.core.PersistentVector.EMPTY),(cljs.core.truth_(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486),true], null):cljs.core.PersistentVector.EMPTY));\nreturn (function (params__$1,navigator,offsets){\nvar vec__42751 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42751,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42751,(1),null);\nif(cljs.core.truth_(cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.pprint.write,arg,bindings))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333),navigator__$1], null);\n} else {\nreturn navigator__$1;\n}\n});\n} else {\nreturn (function (params__$1,navigator,offsets){\nvar vec__42760 \x3d cljs.pprint.next_arg(navigator);\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42760,(0),null);\nvar navigator__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42760,(1),null);\nif(cljs.core.truth_(cljs.pprint.write_out(arg))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22up-arrow\x22,\x22up-arrow\x22,1705310333),navigator__$1], null);\n} else {\nreturn navigator__$1;\n}\n});\n}\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22_\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349),null,new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.conditional_newline;\n})], null),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132),\x22I\x22,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),(new cljs.core.PersistentArrayMap(null,(1),[new cljs.core.Keyword(null,\x22n\x22,\x22n\x22,562130025),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(0),Number], null)],null)),new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),null], null), null),new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656),(function (params,offset){\nreturn cljs.pprint.set_indent;\n})], null)]);\ncljs.pprint.param_pattern \x3d /^([vV]|#|(\x27.)|([+-]?\\d+)|(?\x3d,))/;\ncljs.pprint.special_params \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22remaining-arg-count\x22,\x22remaining-arg-count\x22,-1216589335),null,new cljs.core.Keyword(null,\x22parameter-from-args\x22,\x22parameter-from-args\x22,-758446196),null], null), null);\ncljs.pprint.extract_param \x3d (function cljs$pprint$extract_param(p__42799){\nvar vec__42802 \x3d p__42799;\nvar s \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42802,(0),null);\nvar offset \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42802,(1),null);\nvar saw_comma \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42802,(2),null);\nvar m \x3d (new RegExp(cljs.pprint.param_pattern.source,\x22g\x22));\nvar param \x3d m.exec(s);\nif(cljs.core.truth_(param)){\nvar token_str \x3d cljs.core.first(param);\nvar remainder \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,m.lastIndex);\nvar new_offset \x3d (offset + m.lastIndex);\nif((!(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22,\x22,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(remainder,(0)))))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [token_str,offset], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [remainder,new_offset,false], null)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [token_str,offset], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$2(remainder,(1)),(new_offset + (1)),true], null)], null);\n}\n} else {\nif(cljs.core.truth_(saw_comma)){\nreturn cljs.pprint.format_error(\x22Badly formed parameters in format directive\x22,offset);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,offset], null)], null);\n}\n}\n});\ncljs.pprint.extract_params \x3d (function cljs$pprint$extract_params(s,offset){\nreturn cljs.pprint.consume(cljs.pprint.extract_param,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,offset,false], null));\n});\n/**\n * Translate the string representation of a param to the internalized\n *                                    representation\n */\ncljs.pprint.translate_param \x3d (function cljs$pprint$translate_param(p__42827){\nvar vec__42830 \x3d p__42827;\nvar p \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42830,(0),null);\nvar offset \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42830,(1),null);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(0)))?null:((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(1))) \x26\x26 (cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [\x22V\x22,null,\x22v\x22,null], null), null),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(0))))))?new cljs.core.Keyword(null,\x22parameter-from-args\x22,\x22parameter-from-args\x22,-758446196):((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(1))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22#\x22,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(0))))))?new cljs.core.Keyword(null,\x22remaining-arg-count\x22,\x22remaining-arg-count\x22,-1216589335):((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(p.length,(2))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\x27\x22,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(0))))))?cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p,(1)):parseInt(p,(10))\n)))),offset], null);\n});\ncljs.pprint.flag_defs \x3d new cljs.core.PersistentArrayMap(null, 2, [\x22:\x22,new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945),\x22@\x22,new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349)], null);\ncljs.pprint.extract_flags \x3d (function cljs$pprint$extract_flags(s,offset){\nreturn cljs.pprint.consume((function (p__42845){\nvar vec__42846 \x3d p__42845;\nvar s__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42846,(0),null);\nvar offset__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42846,(1),null);\nvar flags \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42846,(2),null);\nif(cljs.core.empty_QMARK_(s__$1)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s__$1,offset__$1,flags], null)], null);\n} else {\nvar flag \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.flag_defs,cljs.core.first(s__$1));\nif(cljs.core.truth_(flag)){\nif(cljs.core.contains_QMARK_(flags,flag)){\nreturn cljs.pprint.format_error([\x22Flag \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.first(s__$1)),\x22\\\x22 appears more than once in a directive\x22].join(\x27\x27),offset__$1);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s__$1,(1)),(offset__$1 + (1)),cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(flags,flag,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,offset__$1], null))], null)], null);\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s__$1,offset__$1,flags], null)], null);\n}\n}\n}),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [s,offset,cljs.core.PersistentArrayMap.EMPTY], null));\n});\ncljs.pprint.check_flags \x3d (function cljs$pprint$check_flags(def,flags){\nvar allowed \x3d new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075).cljs$core$IFn$_invoke$arity$1(def);\nif(cljs.core.truth_(((cljs.core.not(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(allowed)))?new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(flags):false))){\ncljs.pprint.format_error([\x22\\\x22@\\\x22 is an illegal flag for format directive \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(def)),\x22\\\x22\x22].join(\x27\x27),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(flags),(1)));\n} else {\n}\n\nif(cljs.core.truth_(((cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(allowed)))?new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(flags):false))){\ncljs.pprint.format_error([\x22\\\x22:\\\x22 is an illegal flag for format directive \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(def)),\x22\\\x22\x22].join(\x27\x27),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(flags),(1)));\n} else {\n}\n\nif(cljs.core.truth_(((cljs.core.not(new cljs.core.Keyword(null,\x22both\x22,\x22both\x22,-393648840).cljs$core$IFn$_invoke$arity$1(allowed)))?(function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(flags);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(flags);\n} else {\nreturn and__4149__auto__;\n}\n})():false))){\nreturn cljs.pprint.format_error([\x22Cannot combine \\\x22@\\\x22 and \\\x22:\\\x22 flags for format directive \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(def)),\x22\\\x22\x22].join(\x27\x27),(function (){var x__4252__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(flags),(1));\nvar y__4253__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22at\x22,\x22at\x22,1476951349).cljs$core$IFn$_invoke$arity$1(flags),(1));\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})());\n} else {\nreturn null;\n}\n});\n/**\n * Takes a directive definition and the list of actual parameters and\n * a map of flags and returns a map of the parameters and flags with defaults\n * filled in. We check to make sure that there are the right types and number\n * of parameters as well.\n */\ncljs.pprint.map_params \x3d (function cljs$pprint$map_params(def,params,flags,offset){\ncljs.pprint.check_flags(def,flags);\n\nif((cljs.core.count(params) \x3e cljs.core.count(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(def)))){\ncljs.pprint.format_error(cljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(null,\x22Too many parameters for directive \\\x22~C\\\x22: ~D~:* ~[were~;was~:;were~] specified but only ~D~:* ~[are~;is~:;are~] allowed\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(def),cljs.core.count(params),cljs.core.count(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(def))], 0)),cljs.core.second(cljs.core.first(params)));\n} else {\n}\n\ncljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__42872_SHARP_,p2__42873_SHARP_){\nvar val \x3d cljs.core.first(p1__42872_SHARP_);\nif((!((((val \x3d\x3d null)) || (cljs.core.contains_QMARK_(cljs.pprint.special_params,val)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.second(cljs.core.second(p2__42873_SHARP_)),cljs.core.type(val))))))){\nreturn cljs.pprint.format_error([\x22Parameter \x22,cljs.core.name(cljs.core.first(p2__42873_SHARP_)),\x22 has bad type in directive \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(def)),\x22\\\x22: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type(val))].join(\x27\x27),cljs.core.second(p1__42872_SHARP_));\n} else {\nreturn null;\n}\n}),params,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(def)));\n\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.reverse((function (){var iter__4564__auto__ \x3d (function cljs$pprint$map_params_$_iter__42882(s__42883){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__42883__$1 \x3d s__42883;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__42883__$1);\nif(temp__5753__auto__){\nvar s__42883__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__42883__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__42883__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__42885 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__42884 \x3d (0);\nwhile(true){\nif((i__42884 \x3c size__4563__auto__)){\nvar vec__42890 \x3d cljs.core._nth(c__4562__auto__,i__42884);\nvar name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42890,(0),null);\nvar vec__42893 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42890,(1),null);\nvar default$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42893,(0),null);\ncljs.core.chunk_append(b__42885,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [name,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [default$,offset], null)], null));\n\nvar G__46300 \x3d (i__42884 + (1));\ni__42884 \x3d G__46300;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__42885),cljs$pprint$map_params_$_iter__42882(cljs.core.chunk_rest(s__42883__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__42885),null);\n}\n} else {\nvar vec__42897 \x3d cljs.core.first(s__42883__$2);\nvar name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42897,(0),null);\nvar vec__42900 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42897,(1),null);\nvar default$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42900,(0),null);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [name,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [default$,offset], null)], null),cljs$pprint$map_params_$_iter__42882(cljs.core.rest(s__42883__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(def));\n})())),cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__42874_SHARP_,p2__42875_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc,p1__42874_SHARP_,p2__42875_SHARP_);\n}),cljs.core.PersistentArrayMap.EMPTY,cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__42876_SHARP_){\nreturn cljs.core.first(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p1__42876_SHARP_,(1)));\n}),cljs.core.zipmap(cljs.core.keys(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(def)),params))),flags], 0));\n});\ncljs.pprint.compile_directive \x3d (function cljs$pprint$compile_directive(s,offset){\nvar vec__42905 \x3d cljs.pprint.extract_params(s,offset);\nvar raw_params \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42905,(0),null);\nvar vec__42908 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42905,(1),null);\nvar rest \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42908,(0),null);\nvar offset__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42908,(1),null);\nvar vec__42911 \x3d cljs.pprint.extract_flags(rest,offset__$1);\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42911,(0),null);\nvar vec__42914 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42911,(1),null);\nvar rest__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42914,(0),null);\nvar offset__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42914,(1),null);\nvar flags \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42914,(2),null);\nvar directive \x3d cljs.core.first(rest__$1);\nvar def \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.pprint.directive_table,clojure.string.upper_case(directive));\nvar params \x3d (cljs.core.truth_(def)?cljs.pprint.map_params(def,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.pprint.translate_param,raw_params),flags,offset__$2):null);\nif(cljs.core.not(directive)){\ncljs.pprint.format_error(\x22Format string ended in the middle of a directive\x22,offset__$2);\n} else {\n}\n\nif(cljs.core.not(def)){\ncljs.pprint.format_error([\x22Directive \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(directive),\x22\\\x22 is undefined\x22].join(\x27\x27),offset__$2);\n} else {\n}\n\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.pprint.compiled_directive((function (){var fexpr__42923 \x3d new cljs.core.Keyword(null,\x22generator-fn\x22,\x22generator-fn\x22,811851656).cljs$core$IFn$_invoke$arity$1(def);\nreturn (fexpr__42923.cljs$core$IFn$_invoke$arity$2 ? fexpr__42923.cljs$core$IFn$_invoke$arity$2(params,offset__$2) : fexpr__42923.call(null,params,offset__$2));\n})(),def,params,offset__$2,null,null,null)),(function (){var remainder \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(rest__$1,(1));\nvar offset__$3 \x3d (offset__$2 + (1));\nvar trim_QMARK_ \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\\n\x22,new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(def))) \x26\x26 (cljs.core.not(new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(params))));\nvar trim_count \x3d ((trim_QMARK_)?cljs.pprint.prefix_count(remainder,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22 \x22,\x22\\t\x22], null)):(0));\nvar remainder__$1 \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(remainder,trim_count);\nvar offset__$4 \x3d (offset__$3 + trim_count);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [remainder__$1,offset__$4], null);\n})()], null);\n});\ncljs.pprint.compile_raw_string \x3d (function cljs$pprint$compile_raw_string(s,offset){\nreturn (new cljs.pprint.compiled_directive((function (_,a,___$1){\ncljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([s], 0));\n\nreturn a;\n}),null,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586),s], null),offset,null,null,null));\n});\ncljs.pprint.right_bracket \x3d (function cljs$pprint$right_bracket(this$){\nreturn new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$)));\n});\ncljs.pprint.separator_QMARK_ \x3d (function cljs$pprint$separator_QMARK_(this$){\nreturn new cljs.core.Keyword(null,\x22separator\x22,\x22separator\x22,-1628749125).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$)));\n});\ncljs.pprint.else_separator_QMARK_ \x3d (function cljs$pprint$else_separator_QMARK_(this$){\nvar and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22separator\x22,\x22separator\x22,-1628749125).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$)));\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22colon\x22,\x22colon\x22,-965200945).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(this$));\n} else {\nreturn and__4149__auto__;\n}\n});\ncljs.pprint.process_bracket \x3d (function cljs$pprint$process_bracket(this$,remainder){\nvar vec__42958 \x3d cljs.pprint.collect_clauses(new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$)),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(this$),remainder);\nvar subex \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42958,(0),null);\nvar remainder__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42958,(1),null);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.pprint.compiled_directive(new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040).cljs$core$IFn$_invoke$arity$1(this$),new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$),cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(this$),cljs.pprint.tuple_map(subex,new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(this$))], 0)),new cljs.core.Keyword(null,\x22offset\x22,\x22offset\x22,296498311).cljs$core$IFn$_invoke$arity$1(this$),null,null,null)),remainder__$1], null);\n});\ncljs.pprint.process_clause \x3d (function cljs$pprint$process_clause(bracket_info,offset,remainder){\nreturn cljs.pprint.consume((function (remainder__$1){\nif(cljs.core.empty_QMARK_(remainder__$1)){\nreturn cljs.pprint.format_error(\x22No closing bracket found.\x22,offset);\n} else {\nvar this$ \x3d cljs.core.first(remainder__$1);\nvar remainder__$2 \x3d cljs.core.next(remainder__$1);\nif(cljs.core.truth_(cljs.pprint.right_bracket(this$))){\nreturn cljs.pprint.process_bracket(this$,remainder__$2);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833).cljs$core$IFn$_invoke$arity$1(bracket_info),new cljs.core.Keyword(null,\x22directive\x22,\x22directive\x22,793559132).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$)))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22right-bracket\x22,\x22right-bracket\x22,951856080),new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(this$),null,remainder__$2], null)], null);\n} else {\nif(cljs.core.truth_(cljs.pprint.else_separator_QMARK_(this$))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146),null,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(this$),remainder__$2], null)], null);\n} else {\nif(cljs.core.truth_(cljs.pprint.separator_QMARK_(this$))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22separator\x22,\x22separator\x22,-1628749125),null,null,remainder__$2], null)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$,remainder__$2], null);\n\n}\n}\n}\n}\n}\n}),remainder);\n});\ncljs.pprint.collect_clauses \x3d (function cljs$pprint$collect_clauses(bracket_info,offset,remainder){\nreturn cljs.core.second(cljs.pprint.consume((function (p__43019){\nvar vec__43021 \x3d p__43019;\nvar clause_map \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43021,(0),null);\nvar saw_else \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43021,(1),null);\nvar remainder__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43021,(2),null);\nvar vec__43026 \x3d cljs.pprint.process_clause(bracket_info,offset,remainder__$1);\nvar clause \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43026,(0),null);\nvar vec__43029 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43026,(1),null);\nvar type \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43029,(0),null);\nvar right_params \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43029,(1),null);\nvar else_params \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43029,(2),null);\nvar remainder__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43029,(3),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type,new cljs.core.Keyword(null,\x22right-bracket\x22,\x22right-bracket\x22,951856080))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,cljs.core.PersistentArrayMap.createAsIfByAssoc([(cljs.core.truth_(saw_else)?new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146):new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241)),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null),new cljs.core.Keyword(null,\x22right-params\x22,\x22right-params\x22,-1790676237),right_params])], 0)),remainder__$2], null)], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type,new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146))){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(clause_map))){\nreturn cljs.pprint.format_error(\x22Two else clauses (\\\x22~:;\\\x22) inside bracket construction.\x22,offset);\n} else {\nif(cljs.core.not(new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(bracket_info))){\nreturn cljs.pprint.format_error(\x22An else clause (\\\x22~:;\\\x22) is in a bracket type that doesn\x27t support it.\x22,offset);\n} else {\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22first\x22,\x22first\x22,-644103046),new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(bracket_info))) \x26\x26 (cljs.core.seq(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(clause_map))))){\nreturn cljs.pprint.format_error(\x22The else clause (\\\x22~:;\\\x22) is only allowed in the first position for this directive.\x22,offset);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22first\x22,\x22first\x22,-644103046),new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(bracket_info))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null),new cljs.core.Keyword(null,\x22else-params\x22,\x22else-params\x22,-832171646),else_params], null)], 0)),false,remainder__$2], null)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null)], null)], 0)),true,remainder__$2], null)], null);\n}\n\n}\n}\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type,new cljs.core.Keyword(null,\x22separator\x22,\x22separator\x22,-1628749125))){\nif(cljs.core.truth_(saw_else)){\nreturn cljs.pprint.format_error(\x22A plain clause (with \\\x22~;\\\x22) follows an else clause (\\\x22~:;\\\x22) inside bracket construction.\x22,offset);\n} else {\nif(cljs.core.not(new cljs.core.Keyword(null,\x22allows-separator\x22,\x22allows-separator\x22,-818967742).cljs$core$IFn$_invoke$arity$1(bracket_info))){\nreturn cljs.pprint.format_error(\x22A separator (\\\x22~;\\\x22) is in a bracket type that doesn\x27t support it.\x22,offset);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.concat,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clause_map,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [clause], null)], null)], 0)),false,remainder__$2], null)], null);\n\n}\n}\n} else {\nreturn null;\n}\n}\n}\n}),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241),cljs.core.PersistentVector.EMPTY], null),false,remainder], null)));\n});\n/**\n * Take a linearly compiled format and process the bracket directives to give it\n * the appropriate tree structure\n */\ncljs.pprint.process_nesting \x3d (function cljs$pprint$process_nesting(format){\nreturn cljs.core.first(cljs.pprint.consume((function (remainder){\nvar this$ \x3d cljs.core.first(remainder);\nvar remainder__$1 \x3d cljs.core.next(remainder);\nvar bracket \x3d new cljs.core.Keyword(null,\x22bracket-info\x22,\x22bracket-info\x22,-1600092774).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(this$));\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833).cljs$core$IFn$_invoke$arity$1(bracket))){\nreturn cljs.pprint.process_bracket(this$,remainder__$1);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$,remainder__$1], null);\n}\n}),format));\n});\n/**\n * Compiles format-str into a compiled format which can be used as an argument\n * to cl-format just like a plain format string. Use this function for improved\n * performance when you\x27re using the same format string repeatedly\n */\ncljs.pprint.compile_format \x3d (function cljs$pprint$compile_format(format_str){\nvar _STAR_format_str_STAR__orig_val__43052 \x3d cljs.pprint._STAR_format_str_STAR_;\nvar _STAR_format_str_STAR__temp_val__43053 \x3d format_str;\n(cljs.pprint._STAR_format_str_STAR_ \x3d _STAR_format_str_STAR__temp_val__43053);\n\ntry{return cljs.pprint.process_nesting(cljs.core.first(cljs.pprint.consume((function (p__43057){\nvar vec__43060 \x3d p__43057;\nvar s \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43060,(0),null);\nvar offset \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43060,(1),null);\nif(cljs.core.empty_QMARK_(s)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,s], null);\n} else {\nvar tilde \x3d s.indexOf(\x22~\x22);\nif((tilde \x3c (0))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.pprint.compile_raw_string(s,offset),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22\x22,(offset + s.length)], null)], null);\n} else {\nif((tilde \x3d\x3d\x3d (0))){\nreturn cljs.pprint.compile_directive(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,(1)),(offset + (1)));\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.pprint.compile_raw_string(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),tilde),offset),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subs.cljs$core$IFn$_invoke$arity$2(s,tilde),(tilde + offset)], null)], null);\n\n}\n}\n}\n}),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [format_str,(0)], null))));\n}finally {(cljs.pprint._STAR_format_str_STAR_ \x3d _STAR_format_str_STAR__orig_val__43052);\n}});\n/**\n * determine whether a given compiled format has any directives that depend on the\n * column number or pretty printing\n */\ncljs.pprint.needs_pretty \x3d (function cljs$pprint$needs_pretty(format){\nvar format__$1 \x3d format;\nwhile(true){\nif(cljs.core.empty_QMARK_(format__$1)){\nreturn false;\n} else {\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22pretty\x22,\x22pretty\x22,-1916372486).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22flags\x22,\x22flags\x22,1775418075).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22def\x22,\x22def\x22,-1043430536).cljs$core$IFn$_invoke$arity$1(cljs.core.first(format__$1))));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.core.some(cljs.pprint.needs_pretty,cljs.core.first(new cljs.core.Keyword(null,\x22clauses\x22,\x22clauses\x22,1454841241).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(cljs.core.first(format__$1)))));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn cljs.core.some(cljs.pprint.needs_pretty,cljs.core.first(new cljs.core.Keyword(null,\x22else\x22,\x22else\x22,-1508377146).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(cljs.core.first(format__$1)))));\n}\n}\n})())){\nreturn true;\n} else {\nvar G__46395 \x3d cljs.core.next(format__$1);\nformat__$1 \x3d G__46395;\ncontinue;\n}\n}\nbreak;\n}\n});\n/**\n * Executes the format with the arguments.\n */\ncljs.pprint.execute_format \x3d (function cljs$pprint$execute_format(var_args){\nvar G__43076 \x3d arguments.length;\nswitch (G__43076) {\ncase 3:\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 2:\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$3 \x3d (function (stream,format,args){\nvar sb \x3d (new goog.string.StringBuffer());\nvar real_stream \x3d ((((cljs.core.not(stream)) || (stream \x3d\x3d\x3d true)))?(new cljs.core.StringBufferWriter(sb)):stream);\nvar wrapped_stream \x3d ((((cljs.pprint.needs_pretty(format)) \x26\x26 (cljs.core.not(cljs.pprint.pretty_writer_QMARK_(real_stream)))))?cljs.pprint.get_pretty_writer(real_stream):real_stream);\nvar _STAR_out_STAR__orig_val__43083 \x3d cljs.core._STAR_out_STAR_;\nvar _STAR_out_STAR__temp_val__43084 \x3d wrapped_stream;\n(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__temp_val__43084);\n\ntry{try{cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(format,args);\n}finally {if((!((real_stream \x3d\x3d\x3d wrapped_stream)))){\ncljs.core._flush(wrapped_stream);\n} else {\n}\n}\nif(cljs.core.not(stream)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n} else {\nif(stream \x3d\x3d\x3d true){\nreturn cljs.core.string_print(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb));\n} else {\nreturn null;\n\n}\n}\n}finally {(cljs.core._STAR_out_STAR_ \x3d _STAR_out_STAR__orig_val__43083);\n}}));\n\n(cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2 \x3d (function (format,args){\ncljs.pprint.map_passing_context((function (element,context){\nif(cljs.pprint.abort_QMARK_(context)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,context], null);\n} else {\nvar vec__43091 \x3d cljs.pprint.realize_parameter_list(new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(element),context);\nvar params \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43091,(0),null);\nvar args__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43091,(1),null);\nvar vec__43094 \x3d cljs.pprint.unzip_map(params);\nvar params__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43094,(0),null);\nvar offsets \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43094,(1),null);\nvar params__$2 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(params__$1,new cljs.core.Keyword(null,\x22base-args\x22,\x22base-args\x22,-1268706822),args__$1);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22func\x22,\x22func\x22,-238706040).cljs$core$IFn$_invoke$arity$1(element),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [params__$2,args__$1,offsets], null))], null);\n}\n}),args,format);\n\nreturn null;\n}));\n\n(cljs.pprint.execute_format.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.pprint.cached_compile \x3d cljs.core.memoize(cljs.pprint.compile_format);\n/**\n * Installs a function as a new method of multimethod associated with dispatch-value. \n */\ncljs.pprint.use_method \x3d (function cljs$pprint$use_method(multifn,dispatch_val,func){\nreturn cljs.core._add_method(multifn,dispatch_val,func);\n});\ncljs.pprint.reader_macros \x3d new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),\x22\x27\x22,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),\x22#\x27\x22,new cljs.core.Symbol(\x22clojure.core\x22,\x22deref\x22,\x22clojure.core/deref\x22,188719157,null),\x22@\x22,new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote\x22,\x22clojure.core/unquote\x22,843087510,null),\x22~\x22,new cljs.core.Symbol(\x22cljs.core\x22,\x22deref\x22,\x22cljs.core/deref\x22,1901963335,null),\x22@\x22,new cljs.core.Symbol(\x22cljs.core\x22,\x22unquote\x22,\x22cljs.core/unquote\x22,1013085760,null),\x22~\x22], null);\ncljs.pprint.pprint_reader_macro \x3d (function cljs$pprint$pprint_reader_macro(alis){\nvar macro_char \x3d (function (){var G__43102 \x3d cljs.core.first(alis);\nreturn (cljs.pprint.reader_macros.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.reader_macros.cljs$core$IFn$_invoke$arity$1(G__43102) : cljs.pprint.reader_macros.call(null,G__43102));\n})();\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d macro_char;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),cljs.core.count(alis));\n} else {\nreturn and__4149__auto__;\n}\n})())){\ncljs.core._write(cljs.core._STAR_out_STAR_,macro_char);\n\ncljs.pprint.write_out(cljs.core.second(alis));\n\nreturn true;\n} else {\nreturn null;\n}\n});\ncljs.pprint.pprint_simple_list \x3d (function cljs$pprint$pprint_simple_list(alis){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43113_46405 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43114_46406 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43118_46407 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43119_46408 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43118_46407);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43119_46408);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\nvar length_count43126_46415 \x3d (0);\nvar alis_46416__$1 \x3d cljs.core.seq(alis);\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43126_46415 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(alis_46416__$1){\ncljs.pprint.write_out(cljs.core.first(alis_46416__$1));\n\nif(cljs.core.next(alis_46416__$1)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46419 \x3d (length_count43126_46415 + (1));\nvar G__46420 \x3d cljs.core.next(alis_46416__$1);\nlength_count43126_46415 \x3d G__46419;\nalis_46416__$1 \x3d G__46420;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43114_46406);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43113_46405);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_list \x3d (function cljs$pprint$pprint_list(alis){\nif(cljs.core.not(cljs.pprint.pprint_reader_macro(alis))){\nreturn cljs.pprint.pprint_simple_list(alis);\n} else {\nreturn null;\n}\n});\ncljs.pprint.pprint_vector \x3d (function cljs$pprint$pprint_vector(avec){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43134_46423 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43135_46424 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43136_46425 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43137_46426 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43136_46425);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43137_46426);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22[\x22,null,\x22]\x22);\n\nvar length_count43139_46431 \x3d (0);\nvar aseq_46432 \x3d cljs.core.seq(avec);\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43139_46431 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(aseq_46432){\ncljs.pprint.write_out(cljs.core.first(aseq_46432));\n\nif(cljs.core.next(aseq_46432)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46433 \x3d (length_count43139_46431 + (1));\nvar G__46434 \x3d cljs.core.next(aseq_46432);\nlength_count43139_46431 \x3d G__46433;\naseq_46432 \x3d G__46434;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43135_46424);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43134_46423);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_array \x3d (function (){var format_in__39988__auto__ \x3d \x22~\x3c[~;~@{~w~^, ~:_~}~;]~:\x3e\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46440__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46440 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46442__i \x3d 0, G__46442__a \x3d new Array(arguments.length -  0);\nwhile (G__46442__i \x3c G__46442__a.length) {G__46442__a[G__46442__i] \x3d arguments[G__46442__i + 0]; ++G__46442__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46442__a,0,null);\n} \nreturn G__46440__delegate.call(this,args__39990__auto__);};\nG__46440.cljs$lang$maxFixedArity \x3d 0;\nG__46440.cljs$lang$applyTo \x3d (function (arglist__46443){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46443);\nreturn G__46440__delegate(args__39990__auto__);\n});\nG__46440.cljs$core$IFn$_invoke$arity$variadic \x3d G__46440__delegate;\nreturn G__46440;\n})()\n;\n})();\ncljs.pprint.pprint_map \x3d (function cljs$pprint$pprint_map(amap){\nvar vec__43149 \x3d (((!(cljs.core.record_QMARK_(amap))))?(function (){var fexpr__43159 \x3d new cljs.core.Var(function(){return cljs.core.lift_ns;},new cljs.core.Symbol(\x22cljs.core\x22,\x22lift-ns\x22,\x22cljs.core/lift-ns\x22,463499081,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22private\x22,\x22private\x22,-558947994),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[true,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22lift-ns\x22,\x22lift-ns\x22,602311926,null),\x22cljs/core.cljs\x22,15,1,10425,10425,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null)], null)),\x22Returns [lifted-ns lifted-map] or nil if m can\x27t be lifted.\x22,(cljs.core.truth_(cljs.core.lift_ns)?cljs.core.lift_ns.cljs$lang$test:null)]));\nreturn (fexpr__43159.cljs$core$IFn$_invoke$arity$1 ? fexpr__43159.cljs$core$IFn$_invoke$arity$1(amap) : fexpr__43159.call(null,amap));\n})():null);\nvar ns \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43149,(0),null);\nvar lift_map \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43149,(1),null);\nvar amap__$1 \x3d (function (){var or__4160__auto__ \x3d lift_map;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn amap;\n}\n})();\nvar prefix \x3d (cljs.core.truth_(ns)?[\x22#:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),\x22{\x22].join(\x27\x27):\x22{\x22);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43160_46451 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43161_46452 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43162_46453 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43163_46454 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43162_46453);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43163_46454);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,prefix,null,\x22}\x22);\n\nvar length_count43165_46458 \x3d (0);\nvar aseq_46459 \x3d cljs.core.seq(amap__$1);\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43165_46458 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(aseq_46459){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43166_46460 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43167_46461 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43168_46462 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43169_46463 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43168_46462);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43169_46463);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);\n\ncljs.pprint.write_out(cljs.core.ffirst(aseq_46459));\n\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d (0));\n\ncljs.pprint.write_out(cljs.core.fnext(cljs.core.first(aseq_46459)));\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43167_46461);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43166_46460);\n}}\n\n\nif(cljs.core.next(aseq_46459)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22, \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46473 \x3d (length_count43165_46458 + (1));\nvar G__46474 \x3d cljs.core.next(aseq_46459);\nlength_count43165_46458 \x3d G__46473;\naseq_46459 \x3d G__46474;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43161_46452);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43160_46451);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_simple_default \x3d (function cljs$pprint$pprint_simple_default(obj){\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([obj], 0)));\n});\ncljs.pprint.pprint_set \x3d (function (){var format_in__39988__auto__ \x3d \x22~\x3c#{~;~@{~w~^ ~:_~}~;}~:\x3e\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46475__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46475 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46476__i \x3d 0, G__46476__a \x3d new Array(arguments.length -  0);\nwhile (G__46476__i \x3c G__46476__a.length) {G__46476__a[G__46476__i] \x3d arguments[G__46476__i + 0]; ++G__46476__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46476__a,0,null);\n} \nreturn G__46475__delegate.call(this,args__39990__auto__);};\nG__46475.cljs$lang$maxFixedArity \x3d 0;\nG__46475.cljs$lang$applyTo \x3d (function (arglist__46477){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46477);\nreturn G__46475__delegate(args__39990__auto__);\n});\nG__46475.cljs$core$IFn$_invoke$arity$variadic \x3d G__46475__delegate;\nreturn G__46475;\n})()\n;\n})();\ncljs.pprint.type_map \x3d new cljs.core.PersistentArrayMap(null, 2, [\x22core$future_call\x22,\x22Future\x22,\x22core$promise\x22,\x22Promise\x22], null);\n/**\n * Map ugly type names to something simpler\n */\ncljs.pprint.map_ref_type \x3d (function cljs$pprint$map_ref_type(name){\nvar or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d cljs.core.re_find(/^[^$]+\\$[^$]+/,name);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar match \x3d temp__5753__auto__;\nreturn (cljs.pprint.type_map.cljs$core$IFn$_invoke$arity$1 ? cljs.pprint.type_map.cljs$core$IFn$_invoke$arity$1(match) : cljs.pprint.type_map.call(null,match));\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn name;\n}\n});\ncljs.pprint.pprint_ideref \x3d (function cljs$pprint$pprint_ideref(o){\nvar prefix \x3d [\x22#\x3c\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.pprint.map_ref_type(cljs.core.type(o).name)),\x22@\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(goog.getUid(o)),\x22: \x22].join(\x27\x27);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43179_46486 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43180_46487 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43181_46488 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43182_46489 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43181_46488);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43182_46489);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,prefix,null,\x22\x3e\x22);\n\ncljs.pprint.pprint_indent(new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),(- (((prefix).length) - (2))));\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\ncljs.pprint.write_out((((((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition1$ \x26 (1))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IPending$))))?true:(((!o.cljs$lang$protocol_mask$partition1$))?cljs.core.native_satisfies_QMARK_(cljs.core.IPending,o):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IPending,o)))?(!(cljs.core._realized_QMARK_(o))):false))?new cljs.core.Keyword(null,\x22not-delivered\x22,\x22not-delivered\x22,1599158697):cljs.core.deref(o)));\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43180_46487);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43179_46486);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_pqueue \x3d (function (){var format_in__39988__auto__ \x3d \x22~\x3c\x3c-(~;~@{~w~^ ~_~}~;)-\x3c~:\x3e\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46494__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46494 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46496__i \x3d 0, G__46496__a \x3d new Array(arguments.length -  0);\nwhile (G__46496__i \x3c G__46496__a.length) {G__46496__a[G__46496__i] \x3d arguments[G__46496__i + 0]; ++G__46496__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46496__a,0,null);\n} \nreturn G__46494__delegate.call(this,args__39990__auto__);};\nG__46494.cljs$lang$maxFixedArity \x3d 0;\nG__46494.cljs$lang$applyTo \x3d (function (arglist__46498){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46498);\nreturn G__46494__delegate(args__39990__auto__);\n});\nG__46494.cljs$core$IFn$_invoke$arity$variadic \x3d G__46494__delegate;\nreturn G__46494;\n})()\n;\n})();\ncljs.pprint.type_dispatcher \x3d (function cljs$pprint$type_dispatcher(obj){\nif((obj instanceof cljs.core.PersistentQueue)){\nreturn new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879);\n} else {\nif((((!((obj \x3d\x3d null))))?(((((obj.cljs$lang$protocol_mask$partition0$ \x26 (32768))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IDeref$))))?true:(((!obj.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,obj):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,obj))){\nreturn new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795);\n} else {\nif((obj instanceof cljs.core.Symbol)){\nreturn new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696);\n} else {\nif(cljs.core.seq_QMARK_(obj)){\nreturn new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683);\n} else {\nif(cljs.core.map_QMARK_(obj)){\nreturn new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461);\n} else {\nif(cljs.core.vector_QMARK_(obj)){\nreturn new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158);\n} else {\nif(cljs.core.set_QMARK_(obj)){\nreturn new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554);\n} else {\nif((obj \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328);\n\n}\n}\n}\n}\n}\n}\n}\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.simple_dispatch !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * The pretty print dispatch function for simple data structure format.\n */\ncljs.pprint.simple_dispatch \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__43195 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__43195.cljs$core$IFn$_invoke$arity$0 ? fexpr__43195.cljs$core$IFn$_invoke$arity$0() : fexpr__43195.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22cljs.pprint\x22,\x22simple-dispatch\x22),cljs.pprint.type_dispatcher,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\ncljs.pprint.use_method(cljs.pprint.simple_dispatch,new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683),cljs.pprint.pprint_list);\ncljs.pprint.use_method(cljs.pprint.simple_dispatch,new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158),cljs.pprint.pprint_vector);\ncljs.pprint.use_method(cljs.pprint.simple_dispatch,new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),cljs.pprint.pprint_map);\ncljs.pprint.use_method(cljs.pprint.simple_dispatch,new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),cljs.pprint.pprint_set);\ncljs.pprint.use_method(cljs.pprint.simple_dispatch,null,(function (){\nreturn cljs.core._write(cljs.core._STAR_out_STAR_,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0)));\n}));\ncljs.pprint.use_method(cljs.pprint.simple_dispatch,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.pprint.pprint_simple_default);\ncljs.pprint.set_pprint_dispatch(cljs.pprint.simple_dispatch);\n/**\n * Figure out which kind of brackets to use\n */\ncljs.pprint.brackets \x3d (function cljs$pprint$brackets(form){\nif(cljs.core.vector_QMARK_(form)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22[\x22,\x22]\x22], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22(\x22,\x22)\x22], null);\n}\n});\n/**\n * Pretty print a single reference (import, use, etc.) from a namespace decl\n */\ncljs.pprint.pprint_ns_reference \x3d (function cljs$pprint$pprint_ns_reference(reference){\nif(cljs.core.sequential_QMARK_(reference)){\nvar vec__43202 \x3d cljs.pprint.brackets(reference);\nvar start \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43202,(0),null);\nvar end \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43202,(1),null);\nvar vec__43205 \x3d reference;\nvar seq__43206 \x3d cljs.core.seq(vec__43205);\nvar first__43207 \x3d cljs.core.first(seq__43206);\nvar seq__43206__$1 \x3d cljs.core.next(seq__43206);\nvar keyw \x3d first__43207;\nvar args \x3d seq__43206__$1;\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43208_46515 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43209_46516 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43210_46517 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43211_46518 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43210_46517);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43211_46518);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,start,null,end);\n\n(function (){var format_in__39988__auto__ \x3d \x22~w~:i\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46522__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46522 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46523__i \x3d 0, G__46523__a \x3d new Array(arguments.length -  0);\nwhile (G__46523__i \x3c G__46523__a.length) {G__46523__a[G__46523__i] \x3d arguments[G__46523__i + 0]; ++G__46523__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46523__a,0,null);\n} \nreturn G__46522__delegate.call(this,args__39990__auto__);};\nG__46522.cljs$lang$maxFixedArity \x3d 0;\nG__46522.cljs$lang$applyTo \x3d (function (arglist__46527){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46527);\nreturn G__46522__delegate(args__39990__auto__);\n});\nG__46522.cljs$core$IFn$_invoke$arity$variadic \x3d G__46522__delegate;\nreturn G__46522;\n})()\n;\n})()(keyw);\n\nvar args_46528__$1 \x3d args;\nwhile(true){\nif(cljs.core.seq(args_46528__$1)){\n(function (){var format_in__39988__auto__ \x3d \x22 \x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn ((function (args_46528__$1,format_in__39988__auto__,cf__39989__auto__,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args){\nreturn (function() { \nvar G__46530__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46530 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46533__i \x3d 0, G__46533__a \x3d new Array(arguments.length -  0);\nwhile (G__46533__i \x3c G__46533__a.length) {G__46533__a[G__46533__i] \x3d arguments[G__46533__i + 0]; ++G__46533__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46533__a,0,null);\n} \nreturn G__46530__delegate.call(this,args__39990__auto__);};\nG__46530.cljs$lang$maxFixedArity \x3d 0;\nG__46530.cljs$lang$applyTo \x3d (function (arglist__46536){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46536);\nreturn G__46530__delegate(args__39990__auto__);\n});\nG__46530.cljs$core$IFn$_invoke$arity$variadic \x3d G__46530__delegate;\nreturn G__46530;\n})()\n;\n;})(args_46528__$1,format_in__39988__auto__,cf__39989__auto__,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args))\n})()();\n\nvar arg_46539 \x3d cljs.core.first(args_46528__$1);\nif(cljs.core.sequential_QMARK_(arg_46539)){\nvar vec__43243_46540 \x3d cljs.pprint.brackets(arg_46539);\nvar start_46541__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43243_46540,(0),null);\nvar end_46542__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43243_46540,(1),null);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43247_46545 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43248_46546 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43249_46547 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43250_46548 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43249_46547);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43250_46548);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,start_46541__$1,null,end_46542__$1);\n\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(arg_46539),(3))) \x26\x26 ((cljs.core.second(arg_46539) instanceof cljs.core.Keyword)))){\nvar vec__43252_46551 \x3d arg_46539;\nvar ns_46552 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43252_46551,(0),null);\nvar kw_46553 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43252_46551,(1),null);\nvar lis_46554 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43252_46551,(2),null);\n(function (){var format_in__39988__auto__ \x3d \x22~w ~w \x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn ((function (args_46528__$1,format_in__39988__auto__,cf__39989__auto__,vec__43252_46551,ns_46552,kw_46553,lis_46554,_STAR_current_level_STAR__orig_val__43247_46545,_STAR_current_length_STAR__orig_val__43248_46546,_STAR_current_level_STAR__temp_val__43249_46547,_STAR_current_length_STAR__temp_val__43250_46548,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args){\nreturn (function() { \nvar G__46562__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46562 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46564__i \x3d 0, G__46564__a \x3d new Array(arguments.length -  0);\nwhile (G__46564__i \x3c G__46564__a.length) {G__46564__a[G__46564__i] \x3d arguments[G__46564__i + 0]; ++G__46564__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46564__a,0,null);\n} \nreturn G__46562__delegate.call(this,args__39990__auto__);};\nG__46562.cljs$lang$maxFixedArity \x3d 0;\nG__46562.cljs$lang$applyTo \x3d (function (arglist__46566){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46566);\nreturn G__46562__delegate(args__39990__auto__);\n});\nG__46562.cljs$core$IFn$_invoke$arity$variadic \x3d G__46562__delegate;\nreturn G__46562;\n})()\n;\n;})(args_46528__$1,format_in__39988__auto__,cf__39989__auto__,vec__43252_46551,ns_46552,kw_46553,lis_46554,_STAR_current_level_STAR__orig_val__43247_46545,_STAR_current_length_STAR__orig_val__43248_46546,_STAR_current_level_STAR__temp_val__43249_46547,_STAR_current_length_STAR__temp_val__43250_46548,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args))\n})()(ns_46552,kw_46553);\n\nif(cljs.core.sequential_QMARK_(lis_46554)){\n(function (){var format_in__39988__auto__ \x3d ((cljs.core.vector_QMARK_(lis_46554))?\x22~\x3c[~;~@{~w~^ ~:_~}~;]~:\x3e\x22:\x22~\x3c(~;~@{~w~^ ~:_~}~;)~:\x3e\x22);\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn ((function (args_46528__$1,format_in__39988__auto__,cf__39989__auto__,vec__43252_46551,ns_46552,kw_46553,lis_46554,_STAR_current_level_STAR__orig_val__43247_46545,_STAR_current_length_STAR__orig_val__43248_46546,_STAR_current_level_STAR__temp_val__43249_46547,_STAR_current_length_STAR__temp_val__43250_46548,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args){\nreturn (function() { \nvar G__46570__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46570 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46571__i \x3d 0, G__46571__a \x3d new Array(arguments.length -  0);\nwhile (G__46571__i \x3c G__46571__a.length) {G__46571__a[G__46571__i] \x3d arguments[G__46571__i + 0]; ++G__46571__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46571__a,0,null);\n} \nreturn G__46570__delegate.call(this,args__39990__auto__);};\nG__46570.cljs$lang$maxFixedArity \x3d 0;\nG__46570.cljs$lang$applyTo \x3d (function (arglist__46574){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46574);\nreturn G__46570__delegate(args__39990__auto__);\n});\nG__46570.cljs$core$IFn$_invoke$arity$variadic \x3d G__46570__delegate;\nreturn G__46570;\n})()\n;\n;})(args_46528__$1,format_in__39988__auto__,cf__39989__auto__,vec__43252_46551,ns_46552,kw_46553,lis_46554,_STAR_current_level_STAR__orig_val__43247_46545,_STAR_current_length_STAR__orig_val__43248_46546,_STAR_current_level_STAR__temp_val__43249_46547,_STAR_current_length_STAR__temp_val__43250_46548,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args))\n})()(lis_46554);\n} else {\ncljs.pprint.write_out(lis_46554);\n}\n} else {\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2((function (){var format_in__39988__auto__ \x3d \x22~w ~:i~@{~w~^ ~:_~}\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn ((function (args_46528__$1,format_in__39988__auto__,cf__39989__auto__,_STAR_current_level_STAR__orig_val__43247_46545,_STAR_current_length_STAR__orig_val__43248_46546,_STAR_current_level_STAR__temp_val__43249_46547,_STAR_current_length_STAR__temp_val__43250_46548,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args){\nreturn (function() { \nvar G__46578__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46578 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46580__i \x3d 0, G__46580__a \x3d new Array(arguments.length -  0);\nwhile (G__46580__i \x3c G__46580__a.length) {G__46580__a[G__46580__i] \x3d arguments[G__46580__i + 0]; ++G__46580__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46580__a,0,null);\n} \nreturn G__46578__delegate.call(this,args__39990__auto__);};\nG__46578.cljs$lang$maxFixedArity \x3d 0;\nG__46578.cljs$lang$applyTo \x3d (function (arglist__46581){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46581);\nreturn G__46578__delegate(args__39990__auto__);\n});\nG__46578.cljs$core$IFn$_invoke$arity$variadic \x3d G__46578__delegate;\nreturn G__46578;\n})()\n;\n;})(args_46528__$1,format_in__39988__auto__,cf__39989__auto__,_STAR_current_level_STAR__orig_val__43247_46545,_STAR_current_length_STAR__orig_val__43248_46546,_STAR_current_level_STAR__temp_val__43249_46547,_STAR_current_length_STAR__temp_val__43250_46548,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args))\n})(),arg_46539);\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43248_46546);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43247_46545);\n}}\n\n\nif(cljs.core.next(args_46528__$1)){\n(function (){var format_in__39988__auto__ \x3d \x22~_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn ((function (args_46528__$1,format_in__39988__auto__,cf__39989__auto__,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args){\nreturn (function() { \nvar G__46587__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46587 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46590__i \x3d 0, G__46590__a \x3d new Array(arguments.length -  0);\nwhile (G__46590__i \x3c G__46590__a.length) {G__46590__a[G__46590__i] \x3d arguments[G__46590__i + 0]; ++G__46590__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46590__a,0,null);\n} \nreturn G__46587__delegate.call(this,args__39990__auto__);};\nG__46587.cljs$lang$maxFixedArity \x3d 0;\nG__46587.cljs$lang$applyTo \x3d (function (arglist__46591){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46591);\nreturn G__46587__delegate(args__39990__auto__);\n});\nG__46587.cljs$core$IFn$_invoke$arity$variadic \x3d G__46587__delegate;\nreturn G__46587;\n})()\n;\n;})(args_46528__$1,format_in__39988__auto__,cf__39989__auto__,vec__43243_46540,start_46541__$1,end_46542__$1,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args))\n})()();\n} else {\n}\n} else {\ncljs.pprint.write_out(arg_46539);\n\nif(cljs.core.next(args_46528__$1)){\n(function (){var format_in__39988__auto__ \x3d \x22~:_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn ((function (args_46528__$1,format_in__39988__auto__,cf__39989__auto__,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args){\nreturn (function() { \nvar G__46596__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46596 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46598__i \x3d 0, G__46598__a \x3d new Array(arguments.length -  0);\nwhile (G__46598__i \x3c G__46598__a.length) {G__46598__a[G__46598__i] \x3d arguments[G__46598__i + 0]; ++G__46598__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46598__a,0,null);\n} \nreturn G__46596__delegate.call(this,args__39990__auto__);};\nG__46596.cljs$lang$maxFixedArity \x3d 0;\nG__46596.cljs$lang$applyTo \x3d (function (arglist__46600){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46600);\nreturn G__46596__delegate(args__39990__auto__);\n});\nG__46596.cljs$core$IFn$_invoke$arity$variadic \x3d G__46596__delegate;\nreturn G__46596;\n})()\n;\n;})(args_46528__$1,format_in__39988__auto__,cf__39989__auto__,arg_46539,_STAR_current_level_STAR__orig_val__43208_46515,_STAR_current_length_STAR__orig_val__43209_46516,_STAR_current_level_STAR__temp_val__43210_46517,_STAR_current_length_STAR__temp_val__43211_46518,vec__43202,start,end,vec__43205,seq__43206,first__43207,seq__43206__$1,keyw,args))\n})()();\n} else {\n}\n}\n\nvar G__46602 \x3d cljs.core.next(args_46528__$1);\nargs_46528__$1 \x3d G__46602;\ncontinue;\n} else {\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43209_46516);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43208_46515);\n}}\n\nreturn null;\n} else {\nreturn cljs.pprint.write_out(reference);\n}\n});\n/**\n * The pretty print dispatch chunk for the ns macro\n */\ncljs.pprint.pprint_ns \x3d (function cljs$pprint$pprint_ns(alis){\nif(cljs.core.next(alis)){\nvar vec__43265 \x3d alis;\nvar seq__43266 \x3d cljs.core.seq(vec__43265);\nvar first__43267 \x3d cljs.core.first(seq__43266);\nvar seq__43266__$1 \x3d cljs.core.next(seq__43266);\nvar ns_sym \x3d first__43267;\nvar first__43267__$1 \x3d cljs.core.first(seq__43266__$1);\nvar seq__43266__$2 \x3d cljs.core.next(seq__43266__$1);\nvar ns_name \x3d first__43267__$1;\nvar stuff \x3d seq__43266__$2;\nvar vec__43268 \x3d ((typeof cljs.core.first(stuff) \x3d\x3d\x3d \x27string\x27)?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff),cljs.core.next(stuff)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff], null));\nvar doc_str \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43268,(0),null);\nvar stuff__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43268,(1),null);\nvar vec__43271 \x3d ((cljs.core.map_QMARK_(cljs.core.first(stuff__$1)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff__$1),cljs.core.next(stuff__$1)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff__$1], null));\nvar attr_map \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43271,(0),null);\nvar references \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43271,(1),null);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43280_46611 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43281_46612 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43282_46613 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43283_46614 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43282_46613);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43283_46614);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\n(function (){var format_in__39988__auto__ \x3d \x22~w ~1I~@_~w\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46617__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46617 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46619__i \x3d 0, G__46619__a \x3d new Array(arguments.length -  0);\nwhile (G__46619__i \x3c G__46619__a.length) {G__46619__a[G__46619__i] \x3d arguments[G__46619__i + 0]; ++G__46619__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46619__a,0,null);\n} \nreturn G__46617__delegate.call(this,args__39990__auto__);};\nG__46617.cljs$lang$maxFixedArity \x3d 0;\nG__46617.cljs$lang$applyTo \x3d (function (arglist__46620){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46620);\nreturn G__46617__delegate(args__39990__auto__);\n});\nG__46617.cljs$core$IFn$_invoke$arity$variadic \x3d G__46617__delegate;\nreturn G__46617;\n})()\n;\n})()(ns_sym,ns_name);\n\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d doc_str;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d attr_map;\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn cljs.core.seq(references);\n}\n}\n})())){\n(function (){var format_in__39988__auto__ \x3d \x22~@:_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46627__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46627 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46629__i \x3d 0, G__46629__a \x3d new Array(arguments.length -  0);\nwhile (G__46629__i \x3c G__46629__a.length) {G__46629__a[G__46629__i] \x3d arguments[G__46629__i + 0]; ++G__46629__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46629__a,0,null);\n} \nreturn G__46627__delegate.call(this,args__39990__auto__);};\nG__46627.cljs$lang$maxFixedArity \x3d 0;\nG__46627.cljs$lang$applyTo \x3d (function (arglist__46630){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46630);\nreturn G__46627__delegate(args__39990__auto__);\n});\nG__46627.cljs$core$IFn$_invoke$arity$variadic \x3d G__46627__delegate;\nreturn G__46627;\n})()\n;\n})()();\n} else {\n}\n\nif(cljs.core.truth_(doc_str)){\ncljs.pprint.cl_format.cljs$core$IFn$_invoke$arity$variadic(true,\x22\\\x22~a\\\x22~:[~;~:@_~]\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([doc_str,(function (){var or__4160__auto__ \x3d attr_map;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.seq(references);\n}\n})()], 0));\n} else {\n}\n\nif(cljs.core.truth_(attr_map)){\n(function (){var format_in__39988__auto__ \x3d \x22~w~:[~;~:@_~]\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46632__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46632 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46633__i \x3d 0, G__46633__a \x3d new Array(arguments.length -  0);\nwhile (G__46633__i \x3c G__46633__a.length) {G__46633__a[G__46633__i] \x3d arguments[G__46633__i + 0]; ++G__46633__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46633__a,0,null);\n} \nreturn G__46632__delegate.call(this,args__39990__auto__);};\nG__46632.cljs$lang$maxFixedArity \x3d 0;\nG__46632.cljs$lang$applyTo \x3d (function (arglist__46634){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46634);\nreturn G__46632__delegate(args__39990__auto__);\n});\nG__46632.cljs$core$IFn$_invoke$arity$variadic \x3d G__46632__delegate;\nreturn G__46632;\n})()\n;\n})()(attr_map,cljs.core.seq(references));\n} else {\n}\n\nvar references_46635__$1 \x3d references;\nwhile(true){\ncljs.pprint.pprint_ns_reference(cljs.core.first(references_46635__$1));\n\nvar temp__5753__auto___46636 \x3d cljs.core.next(references_46635__$1);\nif(temp__5753__auto___46636){\nvar references_46638__$2 \x3d temp__5753__auto___46636;\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46640 \x3d references_46638__$2;\nreferences_46635__$1 \x3d G__46640;\ncontinue;\n} else {\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43281_46612);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43280_46611);\n}}\n\nreturn null;\n} else {\nreturn cljs.pprint.write_out(alis);\n}\n});\ncljs.pprint.pprint_hold_first \x3d (function (){var format_in__39988__auto__ \x3d \x22~:\x3c~w~^ ~@_~w~^ ~_~@{~w~^ ~_~}~:\x3e\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46643__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46643 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46645__i \x3d 0, G__46645__a \x3d new Array(arguments.length -  0);\nwhile (G__46645__i \x3c G__46645__a.length) {G__46645__a[G__46645__i] \x3d arguments[G__46645__i + 0]; ++G__46645__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46645__a,0,null);\n} \nreturn G__46643__delegate.call(this,args__39990__auto__);};\nG__46643.cljs$lang$maxFixedArity \x3d 0;\nG__46643.cljs$lang$applyTo \x3d (function (arglist__46646){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46646);\nreturn G__46643__delegate(args__39990__auto__);\n});\nG__46643.cljs$core$IFn$_invoke$arity$variadic \x3d G__46643__delegate;\nreturn G__46643;\n})()\n;\n})();\ncljs.pprint.single_defn \x3d (function cljs$pprint$single_defn(alis,has_doc_str_QMARK_){\nif(cljs.core.seq(alis)){\nif(cljs.core.truth_(has_doc_str_QMARK_)){\n(function (){var format_in__39988__auto__ \x3d \x22 ~_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46650__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46650 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46651__i \x3d 0, G__46651__a \x3d new Array(arguments.length -  0);\nwhile (G__46651__i \x3c G__46651__a.length) {G__46651__a[G__46651__i] \x3d arguments[G__46651__i + 0]; ++G__46651__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46651__a,0,null);\n} \nreturn G__46650__delegate.call(this,args__39990__auto__);};\nG__46650.cljs$lang$maxFixedArity \x3d 0;\nG__46650.cljs$lang$applyTo \x3d (function (arglist__46652){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46652);\nreturn G__46650__delegate(args__39990__auto__);\n});\nG__46650.cljs$core$IFn$_invoke$arity$variadic \x3d G__46650__delegate;\nreturn G__46650;\n})()\n;\n})()();\n} else {\n(function (){var format_in__39988__auto__ \x3d \x22 ~@_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46655__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46655 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46657__i \x3d 0, G__46657__a \x3d new Array(arguments.length -  0);\nwhile (G__46657__i \x3c G__46657__a.length) {G__46657__a[G__46657__i] \x3d arguments[G__46657__i + 0]; ++G__46657__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46657__a,0,null);\n} \nreturn G__46655__delegate.call(this,args__39990__auto__);};\nG__46655.cljs$lang$maxFixedArity \x3d 0;\nG__46655.cljs$lang$applyTo \x3d (function (arglist__46658){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46658);\nreturn G__46655__delegate(args__39990__auto__);\n});\nG__46655.cljs$core$IFn$_invoke$arity$variadic \x3d G__46655__delegate;\nreturn G__46655;\n})()\n;\n})()();\n}\n\nreturn (function (){var format_in__39988__auto__ \x3d \x22~{~w~^ ~_~}\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46660__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46660 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46661__i \x3d 0, G__46661__a \x3d new Array(arguments.length -  0);\nwhile (G__46661__i \x3c G__46661__a.length) {G__46661__a[G__46661__i] \x3d arguments[G__46661__i + 0]; ++G__46661__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46661__a,0,null);\n} \nreturn G__46660__delegate.call(this,args__39990__auto__);};\nG__46660.cljs$lang$maxFixedArity \x3d 0;\nG__46660.cljs$lang$applyTo \x3d (function (arglist__46663){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46663);\nreturn G__46660__delegate(args__39990__auto__);\n});\nG__46660.cljs$core$IFn$_invoke$arity$variadic \x3d G__46660__delegate;\nreturn G__46660;\n})()\n;\n})()(alis);\n} else {\nreturn null;\n}\n});\ncljs.pprint.multi_defn \x3d (function cljs$pprint$multi_defn(alis,has_doc_str_QMARK_){\nif(cljs.core.seq(alis)){\nreturn (function (){var format_in__39988__auto__ \x3d \x22 ~_~{~w~^ ~_~}\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46664__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46664 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46665__i \x3d 0, G__46665__a \x3d new Array(arguments.length -  0);\nwhile (G__46665__i \x3c G__46665__a.length) {G__46665__a[G__46665__i] \x3d arguments[G__46665__i + 0]; ++G__46665__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46665__a,0,null);\n} \nreturn G__46664__delegate.call(this,args__39990__auto__);};\nG__46664.cljs$lang$maxFixedArity \x3d 0;\nG__46664.cljs$lang$applyTo \x3d (function (arglist__46666){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46666);\nreturn G__46664__delegate(args__39990__auto__);\n});\nG__46664.cljs$core$IFn$_invoke$arity$variadic \x3d G__46664__delegate;\nreturn G__46664;\n})()\n;\n})()(alis);\n} else {\nreturn null;\n}\n});\ncljs.pprint.pprint_defn \x3d (function cljs$pprint$pprint_defn(alis){\nif(cljs.core.next(alis)){\nvar vec__43400 \x3d alis;\nvar seq__43401 \x3d cljs.core.seq(vec__43400);\nvar first__43402 \x3d cljs.core.first(seq__43401);\nvar seq__43401__$1 \x3d cljs.core.next(seq__43401);\nvar defn_sym \x3d first__43402;\nvar first__43402__$1 \x3d cljs.core.first(seq__43401__$1);\nvar seq__43401__$2 \x3d cljs.core.next(seq__43401__$1);\nvar defn_name \x3d first__43402__$1;\nvar stuff \x3d seq__43401__$2;\nvar vec__43403 \x3d ((typeof cljs.core.first(stuff) \x3d\x3d\x3d \x27string\x27)?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff),cljs.core.next(stuff)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff], null));\nvar doc_str \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43403,(0),null);\nvar stuff__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43403,(1),null);\nvar vec__43406 \x3d ((cljs.core.map_QMARK_(cljs.core.first(stuff__$1)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.first(stuff__$1),cljs.core.next(stuff__$1)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,stuff__$1], null));\nvar attr_map \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43406,(0),null);\nvar stuff__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43406,(1),null);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43413_46674 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43414_46675 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43415_46676 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43416_46677 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43415_46676);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43416_46677);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\n(function (){var format_in__39988__auto__ \x3d \x22~w ~1I~@_~w\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46681__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46681 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46683__i \x3d 0, G__46683__a \x3d new Array(arguments.length -  0);\nwhile (G__46683__i \x3c G__46683__a.length) {G__46683__a[G__46683__i] \x3d arguments[G__46683__i + 0]; ++G__46683__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46683__a,0,null);\n} \nreturn G__46681__delegate.call(this,args__39990__auto__);};\nG__46681.cljs$lang$maxFixedArity \x3d 0;\nG__46681.cljs$lang$applyTo \x3d (function (arglist__46684){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46684);\nreturn G__46681__delegate(args__39990__auto__);\n});\nG__46681.cljs$core$IFn$_invoke$arity$variadic \x3d G__46681__delegate;\nreturn G__46681;\n})()\n;\n})()(defn_sym,defn_name);\n\nif(cljs.core.truth_(doc_str)){\n(function (){var format_in__39988__auto__ \x3d \x22 ~_~w\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46686__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46686 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46687__i \x3d 0, G__46687__a \x3d new Array(arguments.length -  0);\nwhile (G__46687__i \x3c G__46687__a.length) {G__46687__a[G__46687__i] \x3d arguments[G__46687__i + 0]; ++G__46687__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46687__a,0,null);\n} \nreturn G__46686__delegate.call(this,args__39990__auto__);};\nG__46686.cljs$lang$maxFixedArity \x3d 0;\nG__46686.cljs$lang$applyTo \x3d (function (arglist__46689){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46689);\nreturn G__46686__delegate(args__39990__auto__);\n});\nG__46686.cljs$core$IFn$_invoke$arity$variadic \x3d G__46686__delegate;\nreturn G__46686;\n})()\n;\n})()(doc_str);\n} else {\n}\n\nif(cljs.core.truth_(attr_map)){\n(function (){var format_in__39988__auto__ \x3d \x22 ~_~w\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46692__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46692 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46693__i \x3d 0, G__46693__a \x3d new Array(arguments.length -  0);\nwhile (G__46693__i \x3c G__46693__a.length) {G__46693__a[G__46693__i] \x3d arguments[G__46693__i + 0]; ++G__46693__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46693__a,0,null);\n} \nreturn G__46692__delegate.call(this,args__39990__auto__);};\nG__46692.cljs$lang$maxFixedArity \x3d 0;\nG__46692.cljs$lang$applyTo \x3d (function (arglist__46694){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46694);\nreturn G__46692__delegate(args__39990__auto__);\n});\nG__46692.cljs$core$IFn$_invoke$arity$variadic \x3d G__46692__delegate;\nreturn G__46692;\n})()\n;\n})()(attr_map);\n} else {\n}\n\nif(cljs.core.vector_QMARK_(cljs.core.first(stuff__$2))){\ncljs.pprint.single_defn(stuff__$2,(function (){var or__4160__auto__ \x3d doc_str;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn attr_map;\n}\n})());\n} else {\ncljs.pprint.multi_defn(stuff__$2,(function (){var or__4160__auto__ \x3d doc_str;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn attr_map;\n}\n})());\n\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43414_46675);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43413_46674);\n}}\n\nreturn null;\n} else {\nreturn cljs.pprint.pprint_simple_code_list(alis);\n}\n});\ncljs.pprint.pprint_binding_form \x3d (function cljs$pprint$pprint_binding_form(binding_vec){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43448_46697 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43449_46698 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43450_46699 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43451_46700 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43450_46699);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43451_46700);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22[\x22,null,\x22]\x22);\n\nvar length_count43457_46702 \x3d (0);\nvar binding_46703 \x3d binding_vec;\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43457_46702 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(cljs.core.seq(binding_46703)){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43458_46704 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43459_46705 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43460_46706 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43461_46707 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43460_46706);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43461_46707);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);\n\n\ncljs.pprint.write_out(cljs.core.first(binding_46703));\n\nif(cljs.core.next(binding_46703)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22miser\x22,\x22miser\x22,-556060186));\n\ncljs.pprint.write_out(cljs.core.second(binding_46703));\n} else {\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43459_46705);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43458_46704);\n}}\n\n\nif(cljs.core.next(cljs.core.rest(binding_46703))){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46709 \x3d (length_count43457_46702 + (1));\nvar G__46710 \x3d cljs.core.next(cljs.core.rest(binding_46703));\nlength_count43457_46702 \x3d G__46709;\nbinding_46703 \x3d G__46710;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43449_46698);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43448_46697);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_let \x3d (function cljs$pprint$pprint_let(alis){\nvar base_sym \x3d cljs.core.first(alis);\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43485_46717 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43486_46718 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43487_46719 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43488_46720 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43487_46719);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43488_46720);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\nif(((cljs.core.next(alis)) \x26\x26 (cljs.core.vector_QMARK_(cljs.core.second(alis))))){\n(function (){var format_in__39988__auto__ \x3d \x22~w ~1I~@_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46723__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46723 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46724__i \x3d 0, G__46724__a \x3d new Array(arguments.length -  0);\nwhile (G__46724__i \x3c G__46724__a.length) {G__46724__a[G__46724__i] \x3d arguments[G__46724__i + 0]; ++G__46724__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46724__a,0,null);\n} \nreturn G__46723__delegate.call(this,args__39990__auto__);};\nG__46723.cljs$lang$maxFixedArity \x3d 0;\nG__46723.cljs$lang$applyTo \x3d (function (arglist__46726){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46726);\nreturn G__46723__delegate(args__39990__auto__);\n});\nG__46723.cljs$core$IFn$_invoke$arity$variadic \x3d G__46723__delegate;\nreturn G__46723;\n})()\n;\n})()(base_sym);\n\ncljs.pprint.pprint_binding_form(cljs.core.second(alis));\n\n(function (){var format_in__39988__auto__ \x3d \x22 ~_~{~w~^ ~_~}\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46728__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46728 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46732__i \x3d 0, G__46732__a \x3d new Array(arguments.length -  0);\nwhile (G__46732__i \x3c G__46732__a.length) {G__46732__a[G__46732__i] \x3d arguments[G__46732__i + 0]; ++G__46732__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46732__a,0,null);\n} \nreturn G__46728__delegate.call(this,args__39990__auto__);};\nG__46728.cljs$lang$maxFixedArity \x3d 0;\nG__46728.cljs$lang$applyTo \x3d (function (arglist__46733){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46733);\nreturn G__46728__delegate(args__39990__auto__);\n});\nG__46728.cljs$core$IFn$_invoke$arity$variadic \x3d G__46728__delegate;\nreturn G__46728;\n})()\n;\n})()(cljs.core.next(cljs.core.rest(alis)));\n} else {\ncljs.pprint.pprint_simple_code_list(alis);\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43486_46718);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43485_46717);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_if \x3d (function (){var format_in__39988__auto__ \x3d \x22~:\x3c~1I~w~^ ~@_~w~@{ ~_~w~}~:\x3e\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46736__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46736 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46738__i \x3d 0, G__46738__a \x3d new Array(arguments.length -  0);\nwhile (G__46738__i \x3c G__46738__a.length) {G__46738__a[G__46738__i] \x3d arguments[G__46738__i + 0]; ++G__46738__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46738__a,0,null);\n} \nreturn G__46736__delegate.call(this,args__39990__auto__);};\nG__46736.cljs$lang$maxFixedArity \x3d 0;\nG__46736.cljs$lang$applyTo \x3d (function (arglist__46739){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46739);\nreturn G__46736__delegate(args__39990__auto__);\n});\nG__46736.cljs$core$IFn$_invoke$arity$variadic \x3d G__46736__delegate;\nreturn G__46736;\n})()\n;\n})();\ncljs.pprint.pprint_cond \x3d (function cljs$pprint$pprint_cond(alis){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43515_46741 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43516_46742 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43517_46743 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43518_46744 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43517_46743);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43518_46744);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\ncljs.pprint.pprint_indent(new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),(1));\n\ncljs.pprint.write_out(cljs.core.first(alis));\n\nif(cljs.core.next(alis)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar length_count43531_46746 \x3d (0);\nvar alis_46747__$1 \x3d cljs.core.next(alis);\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43531_46746 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(alis_46747__$1){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43536_46749 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43537_46750 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43538_46751 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43539_46752 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43538_46751);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43539_46752);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);\n\n\ncljs.pprint.write_out(cljs.core.first(alis_46747__$1));\n\nif(cljs.core.next(alis_46747__$1)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22miser\x22,\x22miser\x22,-556060186));\n\ncljs.pprint.write_out(cljs.core.second(alis_46747__$1));\n} else {\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43537_46750);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43536_46749);\n}}\n\n\nif(cljs.core.next(cljs.core.rest(alis_46747__$1))){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46759 \x3d (length_count43531_46746 + (1));\nvar G__46760 \x3d cljs.core.next(cljs.core.rest(alis_46747__$1));\nlength_count43531_46746 \x3d G__46759;\nalis_46747__$1 \x3d G__46760;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n} else {\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43516_46742);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43515_46741);\n}}\n\nreturn null;\n});\ncljs.pprint.pprint_condp \x3d (function cljs$pprint$pprint_condp(alis){\nif((cljs.core.count(alis) \x3e (3))){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43553_46764 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43554_46765 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43555_46766 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43556_46767 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43555_46766);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43556_46767);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\ncljs.pprint.pprint_indent(new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),(1));\n\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2((function (){var format_in__39988__auto__ \x3d \x22~w ~@_~w ~@_~w ~_\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46769__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46769 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46771__i \x3d 0, G__46771__a \x3d new Array(arguments.length -  0);\nwhile (G__46771__i \x3c G__46771__a.length) {G__46771__a[G__46771__i] \x3d arguments[G__46771__i + 0]; ++G__46771__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46771__a,0,null);\n} \nreturn G__46769__delegate.call(this,args__39990__auto__);};\nG__46769.cljs$lang$maxFixedArity \x3d 0;\nG__46769.cljs$lang$applyTo \x3d (function (arglist__46772){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46772);\nreturn G__46769__delegate(args__39990__auto__);\n});\nG__46769.cljs$core$IFn$_invoke$arity$variadic \x3d G__46769__delegate;\nreturn G__46769;\n})()\n;\n})(),alis);\n\nvar length_count43566_46773 \x3d (0);\nvar alis_46774__$1 \x3d cljs.core.seq(cljs.core.drop.cljs$core$IFn$_invoke$arity$2((3),alis));\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43566_46773 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(alis_46774__$1){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43569_46780 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43570_46781 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43571_46782 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43572_46783 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43571_46782);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43572_46783);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,null,null,null);\n\n\ncljs.pprint.write_out(cljs.core.first(alis_46774__$1));\n\nif(cljs.core.next(alis_46774__$1)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22miser\x22,\x22miser\x22,-556060186));\n\ncljs.pprint.write_out(cljs.core.second(alis_46774__$1));\n} else {\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43570_46781);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43569_46780);\n}}\n\n\nif(cljs.core.next(cljs.core.rest(alis_46774__$1))){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46799 \x3d (length_count43566_46773 + (1));\nvar G__46800 \x3d cljs.core.next(cljs.core.rest(alis_46774__$1));\nlength_count43566_46773 \x3d G__46799;\nalis_46774__$1 \x3d G__46800;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43554_46765);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43553_46764);\n}}\n\nreturn null;\n} else {\nreturn cljs.pprint.pprint_simple_code_list(alis);\n}\n});\ncljs.pprint._STAR_symbol_map_STAR_ \x3d cljs.core.PersistentArrayMap.EMPTY;\ncljs.pprint.pprint_anon_func \x3d (function cljs$pprint$pprint_anon_func(alis){\nvar args \x3d cljs.core.second(alis);\nvar nlis \x3d cljs.core.first(cljs.core.rest(cljs.core.rest(alis)));\nif(cljs.core.vector_QMARK_(args)){\nvar _STAR_symbol_map_STAR__orig_val__43599 \x3d cljs.pprint._STAR_symbol_map_STAR_;\nvar _STAR_symbol_map_STAR__temp_val__43600 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(args)))?cljs.core.PersistentArrayMap.createAsIfByAssoc([cljs.core.first(args),\x22%\x22]):cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__43594_SHARP_,p2__43595_SHARP_){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[p1__43594_SHARP_,[\x22%\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(p2__43595_SHARP_)].join(\x27\x27)],null));\n}),args,cljs.core.range.cljs$core$IFn$_invoke$arity$2((1),(cljs.core.count(args) + (1))))));\n(cljs.pprint._STAR_symbol_map_STAR_ \x3d _STAR_symbol_map_STAR__temp_val__43600);\n\ntry{return (function (){var format_in__39988__auto__ \x3d \x22~\x3c#(~;~@{~w~^ ~_~}~;)~:\x3e\x22;\nvar cf__39989__auto__ \x3d ((typeof format_in__39988__auto__ \x3d\x3d\x3d \x27string\x27)?cljs.pprint.cached_compile(format_in__39988__auto__):format_in__39988__auto__);\nreturn (function() { \nvar G__46810__delegate \x3d function (args__39990__auto__){\nvar navigator__39991__auto__ \x3d cljs.pprint.init_navigator(args__39990__auto__);\nreturn cljs.pprint.execute_format.cljs$core$IFn$_invoke$arity$2(cf__39989__auto__,navigator__39991__auto__);\n};\nvar G__46810 \x3d function (var_args){\nvar args__39990__auto__ \x3d null;\nif (arguments.length \x3e 0) {\nvar G__46815__i \x3d 0, G__46815__a \x3d new Array(arguments.length -  0);\nwhile (G__46815__i \x3c G__46815__a.length) {G__46815__a[G__46815__i] \x3d arguments[G__46815__i + 0]; ++G__46815__i;}\n  args__39990__auto__ \x3d new cljs.core.IndexedSeq(G__46815__a,0,null);\n} \nreturn G__46810__delegate.call(this,args__39990__auto__);};\nG__46810.cljs$lang$maxFixedArity \x3d 0;\nG__46810.cljs$lang$applyTo \x3d (function (arglist__46816){\nvar args__39990__auto__ \x3d cljs.core.seq(arglist__46816);\nreturn G__46810__delegate(args__39990__auto__);\n});\nG__46810.cljs$core$IFn$_invoke$arity$variadic \x3d G__46810__delegate;\nreturn G__46810;\n})()\n;\n})()(nlis);\n}finally {(cljs.pprint._STAR_symbol_map_STAR_ \x3d _STAR_symbol_map_STAR__orig_val__43599);\n}} else {\nreturn cljs.pprint.pprint_simple_code_list(alis);\n}\n});\ncljs.pprint.pprint_simple_code_list \x3d (function cljs$pprint$pprint_simple_code_list(alis){\nif(cljs.core.truth_(cljs.pprint.level_exceeded())){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22#\x22);\n} else {\nvar _STAR_current_level_STAR__orig_val__43617_46821 \x3d cljs.pprint._STAR_current_level_STAR_;\nvar _STAR_current_length_STAR__orig_val__43618_46822 \x3d cljs.pprint._STAR_current_length_STAR_;\nvar _STAR_current_level_STAR__temp_val__43619_46823 \x3d (cljs.pprint._STAR_current_level_STAR_ + (1));\nvar _STAR_current_length_STAR__temp_val__43620_46824 \x3d (0);\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__temp_val__43619_46823);\n\n(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__temp_val__43620_46824);\n\ntry{cljs.pprint.start_block(cljs.core._STAR_out_STAR_,\x22(\x22,null,\x22)\x22);\n\ncljs.pprint.pprint_indent(new cljs.core.Keyword(null,\x22block\x22,\x22block\x22,664686210),(1));\n\nvar length_count43622_46825 \x3d (0);\nvar alis_46826__$1 \x3d cljs.core.seq(alis);\nwhile(true){\nif(((cljs.core.not(cljs.core._STAR_print_length_STAR_)) || ((length_count43622_46825 \x3c cljs.core._STAR_print_length_STAR_)))){\nif(alis_46826__$1){\ncljs.pprint.write_out(cljs.core.first(alis_46826__$1));\n\nif(cljs.core.next(alis_46826__$1)){\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22 \x22);\n\ncljs.pprint.pprint_newline(new cljs.core.Keyword(null,\x22linear\x22,\x22linear\x22,872268697));\n\nvar G__46835 \x3d (length_count43622_46825 + (1));\nvar G__46836 \x3d cljs.core.next(alis_46826__$1);\nlength_count43622_46825 \x3d G__46835;\nalis_46826__$1 \x3d G__46836;\ncontinue;\n} else {\n}\n} else {\n}\n} else {\ncljs.core._write(cljs.core._STAR_out_STAR_,\x22...\x22);\n}\nbreak;\n}\n\ncljs.pprint.end_block(cljs.core._STAR_out_STAR_);\n}finally {(cljs.pprint._STAR_current_length_STAR_ \x3d _STAR_current_length_STAR__orig_val__43618_46822);\n\n(cljs.pprint._STAR_current_level_STAR_ \x3d _STAR_current_level_STAR__orig_val__43617_46821);\n}}\n\nreturn null;\n});\ncljs.pprint.two_forms \x3d (function cljs$pprint$two_forms(amap){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.identity,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var iter__4564__auto__ \x3d (function cljs$pprint$two_forms_$_iter__43651(s__43652){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__43652__$1 \x3d s__43652;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__43652__$1);\nif(temp__5753__auto__){\nvar s__43652__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__43652__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__43652__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__43654 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__43653 \x3d (0);\nwhile(true){\nif((i__43653 \x3c size__4563__auto__)){\nvar x \x3d cljs.core._nth(c__4562__auto__,i__43653);\ncljs.core.chunk_append(b__43654,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [x,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(cljs.core.first(x))),cljs.core.second(x)], null)], null));\n\nvar G__46847 \x3d (i__43653 + (1));\ni__43653 \x3d G__46847;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__43654),cljs$pprint$two_forms_$_iter__43651(cljs.core.chunk_rest(s__43652__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__43654),null);\n}\n} else {\nvar x \x3d cljs.core.first(s__43652__$2);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [x,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(cljs.core.first(x))),cljs.core.second(x)], null)], null),cljs$pprint$two_forms_$_iter__43651(cljs.core.rest(s__43652__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(amap);\n})()], 0)));\n});\ncljs.pprint.add_core_ns \x3d (function cljs$pprint$add_core_ns(amap){\nvar core \x3d \x22clojure.core\x22;\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__43661_SHARP_){\nvar vec__43674 \x3d p1__43661_SHARP_;\nvar s \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43674,(0),null);\nvar f \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43674,(1),null);\nif(cljs.core.not((function (){var or__4160__auto__ \x3d cljs.core.namespace(s);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.special_symbol_QMARK_(s);\n}\n})())){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(core,cljs.core.name(s)),f], null);\n} else {\nreturn p1__43661_SHARP_;\n}\n}),amap));\n});\ncljs.pprint._STAR_code_table_STAR_ \x3d cljs.pprint.two_forms(cljs.pprint.add_core_ns(cljs.core.PersistentHashMap.fromArrays([new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),new cljs.core.Symbol(null,\x22when-first\x22,\x22when-first\x22,821699168,null),new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),new cljs.core.Symbol(null,\x22condp\x22,\x22condp\x22,1054325175,null),new cljs.core.Symbol(null,\x22..\x22,\x22..\x22,-300507420,null),new cljs.core.Symbol(null,\x22defmacro\x22,\x22defmacro\x22,2054157304,null),new cljs.core.Symbol(null,\x22defn\x22,\x22defn\x22,-126010802,null),new cljs.core.Symbol(null,\x22loop\x22,\x22loop\x22,1244978678,null),new cljs.core.Symbol(null,\x22struct\x22,\x22struct\x22,325972931,null),new cljs.core.Symbol(null,\x22doseq\x22,\x22doseq\x22,221164135,null),new cljs.core.Symbol(null,\x22if-not\x22,\x22if-not\x22,-265415609,null),new cljs.core.Symbol(null,\x22when-not\x22,\x22when-not\x22,-1223136340,null),new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),new cljs.core.Symbol(null,\x22when\x22,\x22when\x22,1064114221,null),new cljs.core.Symbol(null,\x22with-open\x22,\x22with-open\x22,172119667,null),new cljs.core.Symbol(null,\x22with-local-vars\x22,\x22with-local-vars\x22,837642072,null),new cljs.core.Symbol(null,\x22defonce\x22,\x22defonce\x22,-1681484013,null),new cljs.core.Symbol(null,\x22when-let\x22,\x22when-let\x22,-1383043480,null),new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22dotimes\x22,\x22dotimes\x22,-818708397,null),new cljs.core.Symbol(null,\x22cond\x22,\x22cond\x22,1606708055,null),new cljs.core.Symbol(null,\x22let\x22,\x22let\x22,358118826,null),new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),new cljs.core.Symbol(null,\x22defn-\x22,\x22defn-\x22,1097765044,null),new cljs.core.Symbol(null,\x22locking\x22,\x22locking\x22,1542862874,null),new cljs.core.Symbol(null,\x22-\x3e\x22,\x22-\x3e\x22,-2139605430,null),new cljs.core.Symbol(null,\x22if-let\x22,\x22if-let\x22,1803593690,null),new cljs.core.Symbol(null,\x22binding\x22,\x22binding\x22,-2114503176,null),new cljs.core.Symbol(null,\x22struct-map\x22,\x22struct-map\x22,-1387540878,null)],[cljs.pprint.pprint_hold_first,cljs.pprint.pprint_anon_func,cljs.pprint.pprint_let,cljs.pprint.pprint_if,cljs.pprint.pprint_condp,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_defn,cljs.pprint.pprint_defn,cljs.pprint.pprint_let,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_let,cljs.pprint.pprint_if,cljs.pprint.pprint_if,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_if,cljs.pprint.pprint_let,cljs.pprint.pprint_let,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_let,cljs.pprint.pprint_ns,cljs.pprint.pprint_let,cljs.pprint.pprint_cond,cljs.pprint.pprint_let,cljs.pprint.pprint_defn,cljs.pprint.pprint_defn,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_hold_first,cljs.pprint.pprint_let,cljs.pprint.pprint_let,cljs.pprint.pprint_hold_first])));\ncljs.pprint.pprint_code_list \x3d (function cljs$pprint$pprint_code_list(alis){\nif(cljs.core.not(cljs.pprint.pprint_reader_macro(alis))){\nvar temp__5751__auto__ \x3d cljs.pprint._STAR_code_table_STAR_.call(null,cljs.core.first(alis));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar special_form \x3d temp__5751__auto__;\nreturn (special_form.cljs$core$IFn$_invoke$arity$1 ? special_form.cljs$core$IFn$_invoke$arity$1(alis) : special_form.call(null,alis));\n} else {\nreturn cljs.pprint.pprint_simple_code_list(alis);\n}\n} else {\nreturn null;\n}\n});\ncljs.pprint.pprint_code_symbol \x3d (function cljs$pprint$pprint_code_symbol(sym){\nvar temp__5751__auto__ \x3d (sym.cljs$core$IFn$_invoke$arity$1 ? sym.cljs$core$IFn$_invoke$arity$1(cljs.pprint._STAR_symbol_map_STAR_) : sym.call(null,cljs.pprint._STAR_symbol_map_STAR_));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar arg_num \x3d temp__5751__auto__;\nreturn cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([arg_num], 0));\n} else {\nif(cljs.core.truth_(cljs.pprint._STAR_print_suppress_namespaces_STAR_)){\nreturn cljs.pprint.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.name(sym)], 0));\n} else {\nreturn cljs.pprint.pr.call(null,sym);\n}\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.pprint.code_dispatch !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * The pretty print dispatch function for pretty printing Clojure code.\n */\ncljs.pprint.code_dispatch \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__43698 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__43698.cljs$core$IFn$_invoke$arity$0 ? fexpr__43698.cljs$core$IFn$_invoke$arity$0() : fexpr__43698.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22cljs.pprint\x22,\x22code-dispatch\x22),cljs.pprint.type_dispatcher,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683),cljs.pprint.pprint_code_list);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696),cljs.pprint.pprint_code_symbol);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158),cljs.pprint.pprint_vector);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),cljs.pprint.pprint_map);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),cljs.pprint.pprint_set);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879),cljs.pprint.pprint_pqueue);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),cljs.pprint.pprint_ideref);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,null,cljs.pprint.pr);\ncljs.pprint.use_method(cljs.pprint.code_dispatch,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.pprint.pprint_simple_default);\ncljs.pprint.set_pprint_dispatch(cljs.pprint.simple_dispatch);\ncljs.pprint.add_padding \x3d (function cljs$pprint$add_padding(width,s){\nvar padding \x3d (function (){var x__4249__auto__ \x3d (0);\nvar y__4250__auto__ \x3d (width - cljs.core.count(s));\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})();\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.str,clojure.string.join.cljs$core$IFn$_invoke$arity$1(cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(padding,\x22 \x22)),s);\n});\n/**\n * Prints a collection of maps in a textual table. Prints table headings\n * ks, and then a line of output for each row, corresponding to the keys\n * in ks. If ks are not specified, use the keys of the first item in rows.\n */\ncljs.pprint.print_table \x3d (function cljs$pprint$print_table(var_args){\nvar G__43748 \x3d arguments.length;\nswitch (G__43748) {\ncase 2:\nreturn cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 1:\nreturn cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$2 \x3d (function (ks,rows){\nif(cljs.core.seq(rows)){\nvar widths \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (k){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.max,((cljs.core.str.cljs$core$IFn$_invoke$arity$1(k)).length),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__43741_SHARP_){\nreturn ((cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.get.cljs$core$IFn$_invoke$arity$2(p1__43741_SHARP_,k))).length);\n}),rows));\n}),ks);\nvar spacers \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__43742_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(p1__43742_SHARP_,\x22-\x22));\n}),widths);\nvar fmt_row \x3d (function (leader,divider,trailer,row){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(leader),cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(divider,(function (){var iter__4564__auto__ \x3d (function cljs$pprint$iter__43776(s__43777){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__43777__$1 \x3d s__43777;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__43777__$1);\nif(temp__5753__auto__){\nvar s__43777__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__43777__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__43777__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__43779 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__43778 \x3d (0);\nwhile(true){\nif((i__43778 \x3c size__4563__auto__)){\nvar vec__43784 \x3d cljs.core._nth(c__4562__auto__,i__43778);\nvar col \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43784,(0),null);\nvar width \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43784,(1),null);\ncljs.core.chunk_append(b__43779,cljs.pprint.add_padding(width,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col)));\n\nvar G__46908 \x3d (i__43778 + (1));\ni__43778 \x3d G__46908;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__43779),cljs$pprint$iter__43776(cljs.core.chunk_rest(s__43777__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__43779),null);\n}\n} else {\nvar vec__43790 \x3d cljs.core.first(s__43777__$2);\nvar col \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43790,(0),null);\nvar width \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43790,(1),null);\nreturn cljs.core.cons(cljs.pprint.add_padding(width,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col)),cljs$pprint$iter__43776(cljs.core.rest(s__43777__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(cljs.core.map.cljs$core$IFn$_invoke$arity$3(cljs.core.vector,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__43743_SHARP_){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(row,p1__43743_SHARP_);\n}),ks),widths));\n})()))),cljs.core.str.cljs$core$IFn$_invoke$arity$1(trailer)].join(\x27\x27);\n});\ncljs.core.println();\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row(\x22| \x22,\x22 | \x22,\x22 |\x22,cljs.core.zipmap(ks,ks))], 0));\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row(\x22|-\x22,\x22-+-\x22,\x22-|\x22,cljs.core.zipmap(ks,spacers))], 0));\n\nvar seq__43797 \x3d cljs.core.seq(rows);\nvar chunk__43798 \x3d null;\nvar count__43799 \x3d (0);\nvar i__43800 \x3d (0);\nwhile(true){\nif((i__43800 \x3c count__43799)){\nvar row \x3d chunk__43798.cljs$core$IIndexed$_nth$arity$2(null,i__43800);\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row(\x22| \x22,\x22 | \x22,\x22 |\x22,row)], 0));\n\n\nvar G__46925 \x3d seq__43797;\nvar G__46926 \x3d chunk__43798;\nvar G__46927 \x3d count__43799;\nvar G__46928 \x3d (i__43800 + (1));\nseq__43797 \x3d G__46925;\nchunk__43798 \x3d G__46926;\ncount__43799 \x3d G__46927;\ni__43800 \x3d G__46928;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__43797);\nif(temp__5753__auto__){\nvar seq__43797__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__43797__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__43797__$1);\nvar G__46931 \x3d cljs.core.chunk_rest(seq__43797__$1);\nvar G__46932 \x3d c__4591__auto__;\nvar G__46933 \x3d cljs.core.count(c__4591__auto__);\nvar G__46934 \x3d (0);\nseq__43797 \x3d G__46931;\nchunk__43798 \x3d G__46932;\ncount__43799 \x3d G__46933;\ni__43800 \x3d G__46934;\ncontinue;\n} else {\nvar row \x3d cljs.core.first(seq__43797__$1);\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([fmt_row(\x22| \x22,\x22 | \x22,\x22 |\x22,row)], 0));\n\n\nvar G__46938 \x3d cljs.core.next(seq__43797__$1);\nvar G__46939 \x3d null;\nvar G__46940 \x3d (0);\nvar G__46941 \x3d (0);\nseq__43797 \x3d G__46938;\nchunk__43798 \x3d G__46939;\ncount__43799 \x3d G__46940;\ni__43800 \x3d G__46941;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn null;\n}\n}));\n\n(cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$1 \x3d (function (rows){\nreturn cljs.pprint.print_table.cljs$core$IFn$_invoke$arity$2(cljs.core.keys(cljs.core.first(rows)),rows);\n}));\n\n(cljs.pprint.print_table.cljs$lang$maxFixedArity \x3d 2);\n\n");
SHADOW_ENV.evalLoad("clojure.set.js", true , "goog.provide(\x27clojure.set\x27);\nclojure.set.bubble_max_key \x3d (function clojure$set$bubble_max_key(k,coll){\n\nvar max \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.max_key,k,coll);\nreturn cljs.core.cons(max,cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p1__39734_SHARP_){\nreturn (max \x3d\x3d\x3d p1__39734_SHARP_);\n}),coll));\n});\n/**\n * Return a set that is the union of the input sets\n */\nclojure.set.union \x3d (function clojure$set$union(var_args){\nvar G__39742 \x3d arguments.length;\nswitch (G__39742) {\ncase 0:\nreturn clojure.set.union.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn clojure.set.union.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn clojure.set.union.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___39803 \x3d arguments.length;\nvar i__4772__auto___39805 \x3d (0);\nwhile(true){\nif((i__4772__auto___39805 \x3c len__4771__auto___39803)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___39805]));\n\nvar G__39807 \x3d (i__4772__auto___39805 + (1));\ni__4772__auto___39805 \x3d G__39807;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn clojure.set.union.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(clojure.set.union.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.PersistentHashSet.EMPTY;\n}));\n\n(clojure.set.union.cljs$core$IFn$_invoke$arity$1 \x3d (function (s1){\nreturn s1;\n}));\n\n(clojure.set.union.cljs$core$IFn$_invoke$arity$2 \x3d (function (s1,s2){\nif((cljs.core.count(s1) \x3c cljs.core.count(s2))){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,s2,s1);\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.conj,s1,s2);\n}\n}));\n\n(clojure.set.union.cljs$core$IFn$_invoke$arity$variadic \x3d (function (s1,s2,sets){\nvar bubbled_sets \x3d clojure.set.bubble_max_key(cljs.core.count,cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(sets,s2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([s1], 0)));\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.into,cljs.core.first(bubbled_sets),cljs.core.rest(bubbled_sets));\n}));\n\n/** @this {Function} */\n(clojure.set.union.cljs$lang$applyTo \x3d (function (seq39739){\nvar G__39740 \x3d cljs.core.first(seq39739);\nvar seq39739__$1 \x3d cljs.core.next(seq39739);\nvar G__39741 \x3d cljs.core.first(seq39739__$1);\nvar seq39739__$2 \x3d cljs.core.next(seq39739__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39740,G__39741,seq39739__$2);\n}));\n\n(clojure.set.union.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Return a set that is the intersection of the input sets\n */\nclojure.set.intersection \x3d (function clojure$set$intersection(var_args){\nvar G__39752 \x3d arguments.length;\nswitch (G__39752) {\ncase 1:\nreturn clojure.set.intersection.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn clojure.set.intersection.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___39811 \x3d arguments.length;\nvar i__4772__auto___39812 \x3d (0);\nwhile(true){\nif((i__4772__auto___39812 \x3c len__4771__auto___39811)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___39812]));\n\nvar G__39814 \x3d (i__4772__auto___39812 + (1));\ni__4772__auto___39812 \x3d G__39814;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn clojure.set.intersection.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(clojure.set.intersection.cljs$core$IFn$_invoke$arity$1 \x3d (function (s1){\nreturn s1;\n}));\n\n(clojure.set.intersection.cljs$core$IFn$_invoke$arity$2 \x3d (function (s1,s2){\nwhile(true){\nif((cljs.core.count(s2) \x3c cljs.core.count(s1))){\nvar G__39815 \x3d s2;\nvar G__39816 \x3d s1;\ns1 \x3d G__39815;\ns2 \x3d G__39816;\ncontinue;\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (s1,s2){\nreturn (function (result,item){\nif(cljs.core.contains_QMARK_(s2,item)){\nreturn result;\n} else {\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$2(result,item);\n}\n});})(s1,s2))\n,s1,s1);\n}\nbreak;\n}\n}));\n\n(clojure.set.intersection.cljs$core$IFn$_invoke$arity$variadic \x3d (function (s1,s2,sets){\nvar bubbled_sets \x3d clojure.set.bubble_max_key((function (p1__39747_SHARP_){\nreturn (- cljs.core.count(p1__39747_SHARP_));\n}),cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(sets,s2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([s1], 0)));\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(clojure.set.intersection,cljs.core.first(bubbled_sets),cljs.core.rest(bubbled_sets));\n}));\n\n/** @this {Function} */\n(clojure.set.intersection.cljs$lang$applyTo \x3d (function (seq39749){\nvar G__39750 \x3d cljs.core.first(seq39749);\nvar seq39749__$1 \x3d cljs.core.next(seq39749);\nvar G__39751 \x3d cljs.core.first(seq39749__$1);\nvar seq39749__$2 \x3d cljs.core.next(seq39749__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39750,G__39751,seq39749__$2);\n}));\n\n(clojure.set.intersection.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Return a set that is the first set without elements of the remaining sets\n */\nclojure.set.difference \x3d (function clojure$set$difference(var_args){\nvar G__39760 \x3d arguments.length;\nswitch (G__39760) {\ncase 1:\nreturn clojure.set.difference.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn clojure.set.difference.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___39833 \x3d arguments.length;\nvar i__4772__auto___39835 \x3d (0);\nwhile(true){\nif((i__4772__auto___39835 \x3c len__4771__auto___39833)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___39835]));\n\nvar G__39837 \x3d (i__4772__auto___39835 + (1));\ni__4772__auto___39835 \x3d G__39837;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((2)),(0),null));\nreturn clojure.set.difference.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4793__auto__);\n\n}\n});\n\n(clojure.set.difference.cljs$core$IFn$_invoke$arity$1 \x3d (function (s1){\nreturn s1;\n}));\n\n(clojure.set.difference.cljs$core$IFn$_invoke$arity$2 \x3d (function (s1,s2){\nif((cljs.core.count(s1) \x3c cljs.core.count(s2))){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (result,item){\nif(cljs.core.contains_QMARK_(s2,item)){\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$2(result,item);\n} else {\nreturn result;\n}\n}),s1,s1);\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.disj,s1,s2);\n}\n}));\n\n(clojure.set.difference.cljs$core$IFn$_invoke$arity$variadic \x3d (function (s1,s2,sets){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(clojure.set.difference,s1,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(sets,s2));\n}));\n\n/** @this {Function} */\n(clojure.set.difference.cljs$lang$applyTo \x3d (function (seq39757){\nvar G__39758 \x3d cljs.core.first(seq39757);\nvar seq39757__$1 \x3d cljs.core.next(seq39757);\nvar G__39759 \x3d cljs.core.first(seq39757__$1);\nvar seq39757__$2 \x3d cljs.core.next(seq39757__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39758,G__39759,seq39757__$2);\n}));\n\n(clojure.set.difference.cljs$lang$maxFixedArity \x3d (2));\n\n/**\n * Returns a set of the elements for which pred is true\n */\nclojure.set.select \x3d (function clojure$set$select(pred,xset){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (s,k){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(k) : pred.call(null,k)))){\nreturn s;\n} else {\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$2(s,k);\n}\n}),xset,xset);\n});\n/**\n * Returns a rel of the elements of xrel with only the keys in ks\n */\nclojure.set.project \x3d (function clojure$set$project(xrel,ks){\nreturn cljs.core.set(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__39763_SHARP_){\nreturn cljs.core.select_keys(p1__39763_SHARP_,ks);\n}),xrel));\n});\n/**\n * Returns the map with the keys in kmap renamed to the vals in kmap\n */\nclojure.set.rename_keys \x3d (function clojure$set$rename_keys(map,kmap){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,p__39764){\nvar vec__39767 \x3d p__39764;\nvar old \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39767,(0),null);\nvar new$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39767,(1),null);\nif(cljs.core.contains_QMARK_(map,old)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new$,cljs.core.get.cljs$core$IFn$_invoke$arity$2(map,old));\n} else {\nreturn m;\n}\n}),cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.dissoc,map,cljs.core.keys(kmap)),kmap);\n});\n/**\n * Returns a rel of the maps in xrel with the keys in kmap renamed to the vals in kmap\n */\nclojure.set.rename \x3d (function clojure$set$rename(xrel,kmap){\nreturn cljs.core.set(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__39771_SHARP_){\nreturn clojure.set.rename_keys(p1__39771_SHARP_,kmap);\n}),xrel));\n});\n/**\n * Returns a map of the distinct values of ks in the xrel mapped to a\n *   set of the maps in xrel with the corresponding values of ks.\n */\nclojure.set.index \x3d (function clojure$set$index(xrel,ks){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,x){\nvar ik \x3d cljs.core.select_keys(x,ks);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,ik,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$3(m,ik,cljs.core.PersistentHashSet.EMPTY),x));\n}),cljs.core.PersistentArrayMap.EMPTY,xrel);\n});\n/**\n * Returns the map with the vals mapped to the keys.\n */\nclojure.set.map_invert \x3d (function clojure$set$map_invert(m){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m__$1,p__39774){\nvar vec__39775 \x3d p__39774;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39775,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39775,(1),null);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m__$1,v,k);\n}),cljs.core.PersistentArrayMap.EMPTY,m);\n});\n/**\n * When passed 2 rels, returns the rel corresponding to the natural\n *   join. When passed an additional keymap, joins on the corresponding\n *   keys.\n */\nclojure.set.join \x3d (function clojure$set$join(var_args){\nvar G__39783 \x3d arguments.length;\nswitch (G__39783) {\ncase 2:\nreturn clojure.set.join.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn clojure.set.join.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(clojure.set.join.cljs$core$IFn$_invoke$arity$2 \x3d (function (xrel,yrel){\nif(((cljs.core.seq(xrel)) \x26\x26 (cljs.core.seq(yrel)))){\nvar ks \x3d clojure.set.intersection.cljs$core$IFn$_invoke$arity$2(cljs.core.set(cljs.core.keys(cljs.core.first(xrel))),cljs.core.set(cljs.core.keys(cljs.core.first(yrel))));\nvar vec__39786 \x3d (((cljs.core.count(xrel) \x3c\x3d cljs.core.count(yrel)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [xrel,yrel], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [yrel,xrel], null));\nvar r \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39786,(0),null);\nvar s \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39786,(1),null);\nvar idx \x3d clojure.set.index(r,ks);\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret,x){\nvar found \x3d (function (){var G__39789 \x3d cljs.core.select_keys(x,ks);\nreturn (idx.cljs$core$IFn$_invoke$arity$1 ? idx.cljs$core$IFn$_invoke$arity$1(G__39789) : idx.call(null,G__39789));\n})();\nif(cljs.core.truth_(found)){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39778_SHARP_,p2__39779_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39778_SHARP_,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([p2__39779_SHARP_,x], 0)));\n}),ret,found);\n} else {\nreturn ret;\n}\n}),cljs.core.PersistentHashSet.EMPTY,s);\n} else {\nreturn cljs.core.PersistentHashSet.EMPTY;\n}\n}));\n\n(clojure.set.join.cljs$core$IFn$_invoke$arity$3 \x3d (function (xrel,yrel,km){\nvar vec__39791 \x3d (((cljs.core.count(xrel) \x3c\x3d cljs.core.count(yrel)))?new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [xrel,yrel,clojure.set.map_invert(km)], null):new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [yrel,xrel,km], null));\nvar r \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39791,(0),null);\nvar s \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39791,(1),null);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__39791,(2),null);\nvar idx \x3d clojure.set.index(r,cljs.core.vals(k));\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret,x){\nvar found \x3d (function (){var G__39794 \x3d clojure.set.rename_keys(cljs.core.select_keys(x,cljs.core.keys(k)),k);\nreturn (idx.cljs$core$IFn$_invoke$arity$1 ? idx.cljs$core$IFn$_invoke$arity$1(G__39794) : idx.call(null,G__39794));\n})();\nif(cljs.core.truth_(found)){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__39780_SHARP_,p2__39781_SHARP_){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(p1__39780_SHARP_,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([p2__39781_SHARP_,x], 0)));\n}),ret,found);\n} else {\nreturn ret;\n}\n}),cljs.core.PersistentHashSet.EMPTY,s);\n}));\n\n(clojure.set.join.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Is set1 a subset of set2?\n */\nclojure.set.subset_QMARK_ \x3d (function clojure$set$subset_QMARK_(set1,set2){\nreturn (((cljs.core.count(set1) \x3c\x3d cljs.core.count(set2))) \x26\x26 (cljs.core.every_QMARK_((function (p1__39795_SHARP_){\nreturn cljs.core.contains_QMARK_(set2,p1__39795_SHARP_);\n}),set1)));\n});\n/**\n * Is set1 a superset of set2?\n */\nclojure.set.superset_QMARK_ \x3d (function clojure$set$superset_QMARK_(set1,set2){\nreturn (((cljs.core.count(set1) \x3e\x3d cljs.core.count(set2))) \x26\x26 (cljs.core.every_QMARK_((function (p1__39797_SHARP_){\nreturn cljs.core.contains_QMARK_(set1,p1__39797_SHARP_);\n}),set2)));\n});\n");
SHADOW_ENV.evalLoad("shadow.cljs.devtools.client.env.js", true , "goog.provide(\x27shadow.cljs.devtools.client.env\x27);\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env.active_modules_ref !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.env.active_modules_ref \x3d cljs.core.volatile_BANG_(cljs.core.PersistentHashSet.EMPTY);\n}\nshadow.cljs.devtools.client.env.module_loaded \x3d (function shadow$cljs$devtools$client$env$module_loaded(name){\nreturn shadow.cljs.devtools.client.env.active_modules_ref.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(shadow.cljs.devtools.client.env.active_modules_ref.cljs$core$IDeref$_deref$arity$1(null),cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(name)));\n});\nshadow.cljs.devtools.client.env.module_is_active_QMARK_ \x3d (function shadow$cljs$devtools$client$env$module_is_active_QMARK_(module){\nreturn cljs.core.contains_QMARK_(cljs.core.deref(shadow.cljs.devtools.client.env.active_modules_ref),module);\n});\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env.runtime_id !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.env.runtime_id \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.random_uuid());\n}\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.enabled \x3d goog.define(\x22shadow.cljs.devtools.client.env.enabled\x22,false);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.log \x3d goog.define(\x22shadow.cljs.devtools.client.env.log\x22,true);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.autoload \x3d goog.define(\x22shadow.cljs.devtools.client.env.autoload\x22,true);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.module_format \x3d goog.define(\x22shadow.cljs.devtools.client.env.module_format\x22,\x22goog\x22);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.reload_with_state \x3d goog.define(\x22shadow.cljs.devtools.client.env.reload_with_state\x22,false);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.build_id \x3d goog.define(\x22shadow.cljs.devtools.client.env.build_id\x22,\x22\x22);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.proc_id \x3d goog.define(\x22shadow.cljs.devtools.client.env.proc_id\x22,\x22\x22);\n/**\n * @define {number}\n */\nshadow.cljs.devtools.client.env.worker_client_id \x3d goog.define(\x22shadow.cljs.devtools.client.env.worker_client_id\x22,(0));\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.server_host \x3d goog.define(\x22shadow.cljs.devtools.client.env.server_host\x22,\x22\x22);\n/**\n * @define {number}\n */\nshadow.cljs.devtools.client.env.server_port \x3d goog.define(\x22shadow.cljs.devtools.client.env.server_port\x22,(8200));\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.repl_pprint \x3d goog.define(\x22shadow.cljs.devtools.client.env.repl_pprint\x22,false);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.use_document_host \x3d goog.define(\x22shadow.cljs.devtools.client.env.use_document_host\x22,true);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.use_document_protocol \x3d goog.define(\x22shadow.cljs.devtools.client.env.use_document_protocol\x22,false);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.devtools_url \x3d goog.define(\x22shadow.cljs.devtools.client.env.devtools_url\x22,\x22\x22);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.reload_strategy \x3d goog.define(\x22shadow.cljs.devtools.client.env.reload_strategy\x22,\x22optimized\x22);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.server_token \x3d goog.define(\x22shadow.cljs.devtools.client.env.server_token\x22,\x22missing\x22);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.ssl \x3d goog.define(\x22shadow.cljs.devtools.client.env.ssl\x22,false);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.env.ignore_warnings \x3d goog.define(\x22shadow.cljs.devtools.client.env.ignore_warnings\x22,false);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.log_style \x3d goog.define(\x22shadow.cljs.devtools.client.env.log_style\x22,\x22font-weight: bold;\x22);\n/**\n * @define {string}\n */\nshadow.cljs.devtools.client.env.custom_notify_fn \x3d goog.define(\x22shadow.cljs.devtools.client.env.custom_notify_fn\x22,\x22\x22);\nshadow.cljs.devtools.client.env.devtools_info \x3d (function shadow$cljs$devtools$client$env$devtools_info(){\nreturn ({\x22server_port\x22: shadow.cljs.devtools.client.env.server_port, \x22server_host\x22: shadow.cljs.devtools.client.env.server_host, \x22build_id\x22: shadow.cljs.devtools.client.env.build_id, \x22proc_id\x22: shadow.cljs.devtools.client.env.proc_id, \x22runtime_id\x22: shadow.cljs.devtools.client.env.runtime_id, \x22ssl\x22: shadow.cljs.devtools.client.env.ssl});\n});\nshadow.cljs.devtools.client.env.get_server_protocol \x3d (function shadow$cljs$devtools$client$env$get_server_protocol(){\nif(cljs.core.truth_(((shadow.cljs.devtools.client.env.use_document_protocol)?(function (){var and__4149__auto__ \x3d goog.global.location;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.seq(goog.global.location.protocol);\n} else {\nreturn and__4149__auto__;\n}\n})():false))){\nreturn clojure.string.replace(goog.global.location.protocol,\x22:\x22,\x22\x22);\n} else {\nreturn [\x22http\x22,((shadow.cljs.devtools.client.env.ssl)?\x22s\x22:null)].join(\x27\x27);\n}\n});\nshadow.cljs.devtools.client.env.get_server_host \x3d (function shadow$cljs$devtools$client$env$get_server_host(){\nif(cljs.core.truth_(((shadow.cljs.devtools.client.env.use_document_host)?(function (){var and__4149__auto__ \x3d goog.global.location;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.seq(goog.global.location.hostname);\n} else {\nreturn and__4149__auto__;\n}\n})():false))){\nreturn goog.global.location.hostname;\n} else {\nif(cljs.core.seq(shadow.cljs.devtools.client.env.server_host)){\nreturn shadow.cljs.devtools.client.env.server_host;\n} else {\nreturn \x22localhost\x22;\n\n}\n}\n});\nshadow.cljs.devtools.client.env.get_url_base \x3d (function shadow$cljs$devtools$client$env$get_url_base(){\nif(cljs.core.seq(shadow.cljs.devtools.client.env.devtools_url)){\nreturn shadow.cljs.devtools.client.env.devtools_url;\n} else {\nreturn [shadow.cljs.devtools.client.env.get_server_protocol(),\x22://\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.env.get_server_host()),\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.env.server_port)].join(\x27\x27);\n}\n});\nshadow.cljs.devtools.client.env.get_ws_url_base \x3d (function shadow$cljs$devtools$client$env$get_ws_url_base(){\nreturn clojure.string.replace(shadow.cljs.devtools.client.env.get_url_base(),/^http/,\x22ws\x22);\n});\nshadow.cljs.devtools.client.env.get_ws_relay_url \x3d (function shadow$cljs$devtools$client$env$get_ws_relay_url(){\nreturn [shadow.cljs.devtools.client.env.get_ws_url_base(),\x22/api/remote-relay?server-token\x3d\x22,shadow.cljs.devtools.client.env.server_token].join(\x27\x27);\n});\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env.reset_print_fn_ref !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.env.reset_print_fn_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(null);\n}\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.env.was_print_newline !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.env.was_print_newline \x3d cljs.core._STAR_print_newline_STAR_;\n}\nshadow.cljs.devtools.client.env.set_print_fns_BANG_ \x3d (function shadow$cljs$devtools$client$env$set_print_fns_BANG_(msg_fn){\nvar original_print_fn \x3d cljs.core._STAR_print_fn_STAR_;\nvar original_print_err_fn \x3d cljs.core._STAR_print_err_fn_STAR_;\n(cljs.core._STAR_print_newline_STAR_ \x3d true);\n\n(cljs.core.enable_console_print_BANG_ \x3d (function (){\nreturn null;\n}));\n\ncljs.core.reset_BANG_(shadow.cljs.devtools.client.env.reset_print_fn_ref,(function shadow$cljs$devtools$client$env$set_print_fns_BANG__$_reset_print_fns_BANG_(){\n(cljs.core._STAR_print_newline_STAR_ \x3d shadow.cljs.devtools.client.env.was_print_newline);\n\ncljs.core.set_print_fn_BANG_(original_print_fn);\n\nreturn cljs.core.set_print_err_fn_BANG_(original_print_err_fn);\n}));\n\ncljs.core.set_print_fn_BANG_((function shadow$cljs$devtools$client$env$set_print_fns_BANG__$_repl_print_fn(s){\n(msg_fn.cljs$core$IFn$_invoke$arity$2 ? msg_fn.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22stdout\x22,\x22stdout\x22,-531490018),s) : msg_fn.call(null,new cljs.core.Keyword(null,\x22stdout\x22,\x22stdout\x22,-531490018),s));\n\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d original_print_fn;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(s,\x22\\n\x22);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn (original_print_fn.cljs$core$IFn$_invoke$arity$1 ? original_print_fn.cljs$core$IFn$_invoke$arity$1(s) : original_print_fn.call(null,s));\n} else {\nreturn null;\n}\n}));\n\nreturn cljs.core.set_print_err_fn_BANG_((function shadow$cljs$devtools$client$env$set_print_fns_BANG__$_repl_print_err_fn(s){\n(msg_fn.cljs$core$IFn$_invoke$arity$2 ? msg_fn.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22stderr\x22,\x22stderr\x22,-1571650309),s) : msg_fn.call(null,new cljs.core.Keyword(null,\x22stderr\x22,\x22stderr\x22,-1571650309),s));\n\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d original_print_err_fn;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(s,\x22\\n\x22);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn (original_print_err_fn.cljs$core$IFn$_invoke$arity$1 ? original_print_err_fn.cljs$core$IFn$_invoke$arity$1(s) : original_print_err_fn.call(null,s));\n} else {\nreturn null;\n}\n}));\n});\nshadow.cljs.devtools.client.env.reset_print_fns_BANG_ \x3d (function shadow$cljs$devtools$client$env$reset_print_fns_BANG_(){\nvar temp__5753__auto__ \x3d cljs.core.deref(shadow.cljs.devtools.client.env.reset_print_fn_ref);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar x \x3d temp__5753__auto__;\n(x.cljs$core$IFn$_invoke$arity$0 ? x.cljs$core$IFn$_invoke$arity$0() : x.call(null));\n\nreturn cljs.core.reset_BANG_(shadow.cljs.devtools.client.env.reset_print_fn_ref,null);\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.env.patch_goog_BANG_ \x3d (function shadow$cljs$devtools$client$env$patch_goog_BANG_(){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22goog\x22,shadow.cljs.devtools.client.env.module_format)){\n(goog.provide \x3d goog.constructNamespace_);\n\nreturn (goog.isProvided_ \x3d cljs.core.constantly(false));\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.env.add_warnings_to_info \x3d (function shadow$cljs$devtools$client$env$add_warnings_to_info(p__43957){\nvar map__43961 \x3d p__43957;\nvar map__43961__$1 \x3d cljs.core.__destructure_map(map__43961);\nvar msg \x3d map__43961__$1;\nvar info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43961__$1,new cljs.core.Keyword(null,\x22info\x22,\x22info\x22,-317069002));\nvar warnings \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.distinct.cljs$core$IFn$_invoke$arity$1((function (){var iter__4564__auto__ \x3d (function shadow$cljs$devtools$client$env$add_warnings_to_info_$_iter__43966(s__43967){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__43967__$1 \x3d s__43967;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__43967__$1);\nif(temp__5753__auto__){\nvar xs__6308__auto__ \x3d temp__5753__auto__;\nvar map__43980 \x3d cljs.core.first(xs__6308__auto__);\nvar map__43980__$1 \x3d cljs.core.__destructure_map(map__43980);\nvar src \x3d map__43980__$1;\nvar resource_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43980__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nvar warnings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43980__$1,new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651));\nif(cljs.core.not(new cljs.core.Keyword(null,\x22from-jar\x22,\x22from-jar\x22,1050932827).cljs$core$IFn$_invoke$arity$1(src))){\nvar iterys__4560__auto__ \x3d ((function (s__43967__$1,map__43980,map__43980__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__43961,map__43961__$1,msg,info){\nreturn (function shadow$cljs$devtools$client$env$add_warnings_to_info_$_iter__43966_$_iter__43968(s__43969){\nreturn (new cljs.core.LazySeq(null,((function (s__43967__$1,map__43980,map__43980__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__43961,map__43961__$1,msg,info){\nreturn (function (){\nvar s__43969__$1 \x3d s__43969;\nwhile(true){\nvar temp__5753__auto____$1 \x3d cljs.core.seq(s__43969__$1);\nif(temp__5753__auto____$1){\nvar s__43969__$2 \x3d temp__5753__auto____$1;\nif(cljs.core.chunked_seq_QMARK_(s__43969__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__43969__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__43971 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__43970 \x3d (0);\nwhile(true){\nif((i__43970 \x3c size__4563__auto__)){\nvar warning \x3d cljs.core._nth(c__4562__auto__,i__43970);\ncljs.core.chunk_append(b__43971,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(warning,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100),resource_name));\n\nvar G__44371 \x3d (i__43970 + (1));\ni__43970 \x3d G__44371;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__43971),shadow$cljs$devtools$client$env$add_warnings_to_info_$_iter__43966_$_iter__43968(cljs.core.chunk_rest(s__43969__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__43971),null);\n}\n} else {\nvar warning \x3d cljs.core.first(s__43969__$2);\nreturn cljs.core.cons(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(warning,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100),resource_name),shadow$cljs$devtools$client$env$add_warnings_to_info_$_iter__43966_$_iter__43968(cljs.core.rest(s__43969__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});})(s__43967__$1,map__43980,map__43980__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__43961,map__43961__$1,msg,info))\n,null,null));\n});})(s__43967__$1,map__43980,map__43980__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__43961,map__43961__$1,msg,info))\n;\nvar fs__4561__auto__ \x3d cljs.core.seq(iterys__4560__auto__(warnings));\nif(fs__4561__auto__){\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2(fs__4561__auto__,shadow$cljs$devtools$client$env$add_warnings_to_info_$_iter__43966(cljs.core.rest(s__43967__$1)));\n} else {\nvar G__44386 \x3d cljs.core.rest(s__43967__$1);\ns__43967__$1 \x3d G__44386;\ncontinue;\n}\n} else {\nvar G__44387 \x3d cljs.core.rest(s__43967__$1);\ns__43967__$1 \x3d G__44387;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424).cljs$core$IFn$_invoke$arity$1(info));\n})()));\nreturn cljs.core.assoc_in(msg,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22info\x22,\x22info\x22,-317069002),new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651)], null),warnings);\n});\nshadow.cljs.devtools.client.env.custom_notify_types \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22build-complete\x22,\x22build-complete\x22,-501868472),null,new cljs.core.Keyword(null,\x22build-init\x22,\x22build-init\x22,-1115755563),null,new cljs.core.Keyword(null,\x22build-failure\x22,\x22build-failure\x22,-2107487466),null,new cljs.core.Keyword(null,\x22build-start\x22,\x22build-start\x22,-959649480),null], null), null);\nshadow.cljs.devtools.client.env.run_custom_notify_BANG_ \x3d (function shadow$cljs$devtools$client$env$run_custom_notify_BANG_(msg){\nif(cljs.core.seq(shadow.cljs.devtools.client.env.custom_notify_fn)){\nvar fn \x3d goog.getObjectByName(shadow.cljs.devtools.client.env.custom_notify_fn,$CLJS);\nif((!(cljs.core.fn_QMARK_(fn)))){\nreturn console.warn(\x22couldn\x27t find custom :build-notify\x22,shadow.cljs.devtools.client.env.custom_notify_fn);\n} else {\ntry{return (fn.cljs$core$IFn$_invoke$arity$1 ? fn.cljs$core$IFn$_invoke$arity$1(msg) : fn.call(null,msg));\n}catch (e44008){var e \x3d e44008;\nconsole.error(\x22Failed to run custom :build-notify\x22,shadow.cljs.devtools.client.env.custom_notify_fn);\n\nreturn console.error(e);\n}}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.env.make_task_fn \x3d (function shadow$cljs$devtools$client$env$make_task_fn(p__44012,p__44013){\nvar map__44017 \x3d p__44012;\nvar map__44017__$1 \x3d cljs.core.__destructure_map(map__44017);\nvar log_missing_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44017__$1,new cljs.core.Keyword(null,\x22log-missing-fn\x22,\x22log-missing-fn\x22,732676765));\nvar log_call_async \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44017__$1,new cljs.core.Keyword(null,\x22log-call-async\x22,\x22log-call-async\x22,183826192));\nvar log_call \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44017__$1,new cljs.core.Keyword(null,\x22log-call\x22,\x22log-call\x22,412404391));\nvar map__44019 \x3d p__44013;\nvar map__44019__$1 \x3d cljs.core.__destructure_map(map__44019);\nvar fn_sym \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44019__$1,new cljs.core.Keyword(null,\x22fn-sym\x22,\x22fn-sym\x22,1423988510));\nvar fn_str \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44019__$1,new cljs.core.Keyword(null,\x22fn-str\x22,\x22fn-str\x22,-1348506402));\nvar async \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44019__$1,new cljs.core.Keyword(null,\x22async\x22,\x22async\x22,1050769601));\nreturn (function (next){\ntry{var fn_obj \x3d goog.getObjectByName(fn_str,$CLJS);\nif((fn_obj \x3d\x3d null)){\nif(cljs.core.truth_(log_missing_fn)){\n(log_missing_fn.cljs$core$IFn$_invoke$arity$1 ? log_missing_fn.cljs$core$IFn$_invoke$arity$1(fn_sym) : log_missing_fn.call(null,fn_sym));\n} else {\n}\n\nreturn (next.cljs$core$IFn$_invoke$arity$0 ? next.cljs$core$IFn$_invoke$arity$0() : next.call(null));\n} else {\nif(cljs.core.truth_(async)){\nif(cljs.core.truth_(log_call_async)){\n(log_call_async.cljs$core$IFn$_invoke$arity$1 ? log_call_async.cljs$core$IFn$_invoke$arity$1(fn_sym) : log_call_async.call(null,fn_sym));\n} else {\n}\n\nreturn (fn_obj.cljs$core$IFn$_invoke$arity$1 ? fn_obj.cljs$core$IFn$_invoke$arity$1(next) : fn_obj.call(null,next));\n} else {\nif(cljs.core.truth_(log_call)){\n(log_call.cljs$core$IFn$_invoke$arity$1 ? log_call.cljs$core$IFn$_invoke$arity$1(fn_sym) : log_call.call(null,fn_sym));\n} else {\n}\n\n(fn_obj.cljs$core$IFn$_invoke$arity$0 ? fn_obj.cljs$core$IFn$_invoke$arity$0() : fn_obj.call(null));\n\nreturn (next.cljs$core$IFn$_invoke$arity$0 ? next.cljs$core$IFn$_invoke$arity$0() : next.call(null));\n\n}\n}\n}catch (e44030){var ex \x3d e44030;\nconsole.warn(\x22error when calling lifecycle function\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(fn_sym),ex);\n\nreturn (next.cljs$core$IFn$_invoke$arity$0 ? next.cljs$core$IFn$_invoke$arity$0() : next.call(null));\n}});\n});\nshadow.cljs.devtools.client.env.do_js_reload_STAR_ \x3d (function shadow$cljs$devtools$client$env$do_js_reload_STAR_(failure_fn,p__44033){\nvar vec__44034 \x3d p__44033;\nvar seq__44035 \x3d cljs.core.seq(vec__44034);\nvar first__44036 \x3d cljs.core.first(seq__44035);\nvar seq__44035__$1 \x3d cljs.core.next(seq__44035);\nvar task \x3d first__44036;\nvar remaining_tasks \x3d seq__44035__$1;\nif(cljs.core.truth_(task)){\ntry{var G__44046 \x3d (function (){\nreturn (shadow.cljs.devtools.client.env.do_js_reload_STAR_.cljs$core$IFn$_invoke$arity$2 ? shadow.cljs.devtools.client.env.do_js_reload_STAR_.cljs$core$IFn$_invoke$arity$2(failure_fn,remaining_tasks) : shadow.cljs.devtools.client.env.do_js_reload_STAR_.call(null,failure_fn,remaining_tasks));\n});\nreturn (task.cljs$core$IFn$_invoke$arity$1 ? task.cljs$core$IFn$_invoke$arity$1(G__44046) : task.call(null,G__44046));\n}catch (e44045){var e \x3d e44045;\nreturn (failure_fn.cljs$core$IFn$_invoke$arity$3 ? failure_fn.cljs$core$IFn$_invoke$arity$3(e,task,remaining_tasks) : failure_fn.call(null,e,task,remaining_tasks));\n}} else {\nreturn null;\n}\n});\n/**\n * should pass the :build-complete message and an additional callback\n * which performs the actual loading of the code (sync)\n * will call all before/after callbacks in order\n */\nshadow.cljs.devtools.client.env.do_js_reload \x3d (function shadow$cljs$devtools$client$env$do_js_reload(var_args){\nvar G__44059 \x3d arguments.length;\nswitch (G__44059) {\ncase 2:\nreturn shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$2 \x3d (function (msg,load_code_fn){\nreturn shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$3(msg,load_code_fn,(function (){\nreturn null;\n}));\n}));\n\n(shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$3 \x3d (function (msg,load_code_fn,complete_fn){\nreturn shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$4(msg,load_code_fn,complete_fn,(function (error,task,remaining){\nreturn console.warn(\x22JS reload failed\x22,error);\n}));\n}));\n\n(shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$4 \x3d (function (p__44072,load_code_fn,complete_fn,failure_fn){\nvar map__44074 \x3d p__44072;\nvar map__44074__$1 \x3d cljs.core.__destructure_map(map__44074);\nvar msg \x3d map__44074__$1;\nvar reload_info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44074__$1,new cljs.core.Keyword(null,\x22reload-info\x22,\x22reload-info\x22,1648088086));\nvar load_tasks \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.reverse(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__44050_SHARP_){\nreturn shadow.cljs.devtools.client.env.make_task_fn(msg,p1__44050_SHARP_);\n}),new cljs.core.Keyword(null,\x22before-load\x22,\x22before-load\x22,-2060117064).cljs$core$IFn$_invoke$arity$1(reload_info)))),(function (next){\n(load_code_fn.cljs$core$IFn$_invoke$arity$0 ? load_code_fn.cljs$core$IFn$_invoke$arity$0() : load_code_fn.call(null));\n\nreturn (next.cljs$core$IFn$_invoke$arity$0 ? next.cljs$core$IFn$_invoke$arity$0() : next.call(null));\n})),cljs.core.map.cljs$core$IFn$_invoke$arity$1((function (p1__44053_SHARP_){\nreturn shadow.cljs.devtools.client.env.make_task_fn(msg,p1__44053_SHARP_);\n})),new cljs.core.Keyword(null,\x22after-load\x22,\x22after-load\x22,-1278503285).cljs$core$IFn$_invoke$arity$1(reload_info)),(function (next){\n(complete_fn.cljs$core$IFn$_invoke$arity$0 ? complete_fn.cljs$core$IFn$_invoke$arity$0() : complete_fn.call(null));\n\nreturn (next.cljs$core$IFn$_invoke$arity$0 ? next.cljs$core$IFn$_invoke$arity$0() : next.call(null));\n}));\nreturn shadow.cljs.devtools.client.env.do_js_reload_STAR_(failure_fn,load_tasks);\n}));\n\n(shadow.cljs.devtools.client.env.do_js_reload.cljs$lang$maxFixedArity \x3d 4);\n\nshadow.cljs.devtools.client.env.before_load_src \x3d (function shadow$cljs$devtools$client$env$before_load_src(p__44084){\nvar map__44087 \x3d p__44084;\nvar map__44087__$1 \x3d cljs.core.__destructure_map(map__44087);\nvar src \x3d map__44087__$1;\nvar type \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44087__$1,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348));\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44087__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22cljs\x22,\x22cljs\x22,1492417629),type)){\nvar seq__44099 \x3d cljs.core.seq(goog.global.SHADOW_NS_RESET);\nvar chunk__44100 \x3d null;\nvar count__44101 \x3d (0);\nvar i__44102 \x3d (0);\nwhile(true){\nif((i__44102 \x3c count__44101)){\nvar x \x3d chunk__44100.cljs$core$IIndexed$_nth$arity$2(null,i__44102);\n(x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(ns) : x.call(null,ns));\n\n\nvar G__44498 \x3d seq__44099;\nvar G__44499 \x3d chunk__44100;\nvar G__44500 \x3d count__44101;\nvar G__44501 \x3d (i__44102 + (1));\nseq__44099 \x3d G__44498;\nchunk__44100 \x3d G__44499;\ncount__44101 \x3d G__44500;\ni__44102 \x3d G__44501;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__44099);\nif(temp__5753__auto__){\nvar seq__44099__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__44099__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__44099__$1);\nvar G__44506 \x3d cljs.core.chunk_rest(seq__44099__$1);\nvar G__44507 \x3d c__4591__auto__;\nvar G__44508 \x3d cljs.core.count(c__4591__auto__);\nvar G__44509 \x3d (0);\nseq__44099 \x3d G__44506;\nchunk__44100 \x3d G__44507;\ncount__44101 \x3d G__44508;\ni__44102 \x3d G__44509;\ncontinue;\n} else {\nvar x \x3d cljs.core.first(seq__44099__$1);\n(x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(ns) : x.call(null,ns));\n\n\nvar G__44513 \x3d cljs.core.next(seq__44099__$1);\nvar G__44514 \x3d null;\nvar G__44515 \x3d (0);\nvar G__44516 \x3d (0);\nseq__44099 \x3d G__44513;\nchunk__44100 \x3d G__44514;\ncount__44101 \x3d G__44515;\ni__44102 \x3d G__44516;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.env.goog_is_loaded_QMARK_ \x3d (function shadow$cljs$devtools$client$env$goog_is_loaded_QMARK_(name){\nreturn $CLJS.SHADOW_ENV.isLoaded(name);\n});\nshadow.cljs.devtools.client.env.goog_base_rc \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.build.classpath\x22,\x22resource\x22,\x22shadow.build.classpath/resource\x22,-879517823),\x22goog/base.js\x22], null);\nshadow.cljs.devtools.client.env.src_is_loaded_QMARK_ \x3d (function shadow$cljs$devtools$client$env$src_is_loaded_QMARK_(p__44147){\nvar map__44150 \x3d p__44147;\nvar map__44150__$1 \x3d cljs.core.__destructure_map(map__44150);\nvar src \x3d map__44150__$1;\nvar resource_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44150__$1,new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582));\nvar output_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44150__$1,new cljs.core.Keyword(null,\x22output-name\x22,\x22output-name\x22,-1769107767));\nvar or__4160__auto__ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(shadow.cljs.devtools.client.env.goog_base_rc,resource_id);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn shadow.cljs.devtools.client.env.goog_is_loaded_QMARK_(output_name);\n}\n});\nshadow.cljs.devtools.client.env.prefilter_sources \x3d (function shadow$cljs$devtools$client$env$prefilter_sources(reload_info,sources){\nreturn cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p__44157){\nvar map__44158 \x3d p__44157;\nvar map__44158__$1 \x3d cljs.core.__destructure_map(map__44158);\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44158__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nreturn cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22never-load\x22,\x22never-load\x22,1300896819).cljs$core$IFn$_invoke$arity$1(reload_info),ns);\n}),cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p__44162){\nvar map__44163 \x3d p__44162;\nvar map__44163__$1 \x3d cljs.core.__destructure_map(map__44163);\nvar rc \x3d map__44163__$1;\nvar module \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44163__$1,new cljs.core.Keyword(null,\x22module\x22,\x22module\x22,1424618191));\nreturn ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22js\x22,shadow.cljs.devtools.client.env.module_format)) || (shadow.cljs.devtools.client.env.module_is_active_QMARK_(module)));\n}),sources));\n});\nshadow.cljs.devtools.client.env.filter_sources_to_get_optimized \x3d (function shadow$cljs$devtools$client$env$filter_sources_to_get_optimized(p__44169,reload_info){\nvar map__44170 \x3d p__44169;\nvar map__44170__$1 \x3d cljs.core.__destructure_map(map__44170);\nvar info \x3d map__44170__$1;\nvar sources \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44170__$1,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424));\nvar compiled \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44170__$1,new cljs.core.Keyword(null,\x22compiled\x22,\x22compiled\x22,850043082));\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p__44174){\nvar map__44175 \x3d p__44174;\nvar map__44175__$1 \x3d cljs.core.__destructure_map(map__44175);\nvar src \x3d map__44175__$1;\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44175__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nvar resource_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44175__$1,new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582));\nreturn ((cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22always-load\x22,\x22always-load\x22,66405637).cljs$core$IFn$_invoke$arity$1(reload_info),ns)) || (cljs.core.not(shadow.cljs.devtools.client.env.src_is_loaded_QMARK_(src))) || (((cljs.core.contains_QMARK_(compiled,resource_id)) \x26\x26 (cljs.core.not(new cljs.core.Keyword(null,\x22from-jar\x22,\x22from-jar\x22,1050932827).cljs$core$IFn$_invoke$arity$1(src))))));\n}),shadow.cljs.devtools.client.env.prefilter_sources(reload_info,sources)));\n});\nshadow.cljs.devtools.client.env.filter_sources_to_get_full \x3d (function shadow$cljs$devtools$client$env$filter_sources_to_get_full(p__44194,reload_info){\nvar map__44199 \x3d p__44194;\nvar map__44199__$1 \x3d cljs.core.__destructure_map(map__44199);\nvar info \x3d map__44199__$1;\nvar sources \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44199__$1,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424));\nvar compiled \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44199__$1,new cljs.core.Keyword(null,\x22compiled\x22,\x22compiled\x22,850043082));\nvar affected \x3d cljs.core.PersistentHashSet.EMPTY;\nvar sources_to_get \x3d cljs.core.PersistentVector.EMPTY;\nvar G__44208 \x3d shadow.cljs.devtools.client.env.prefilter_sources(reload_info,sources);\nvar vec__44209 \x3d G__44208;\nvar seq__44210 \x3d cljs.core.seq(vec__44209);\nvar first__44211 \x3d cljs.core.first(seq__44210);\nvar seq__44210__$1 \x3d cljs.core.next(seq__44210);\nvar src \x3d first__44211;\nvar more \x3d seq__44210__$1;\nvar affected__$1 \x3d affected;\nvar sources_to_get__$1 \x3d sources_to_get;\nvar G__44208__$1 \x3d G__44208;\nwhile(true){\nvar affected__$2 \x3d affected__$1;\nvar sources_to_get__$2 \x3d sources_to_get__$1;\nvar vec__44245 \x3d G__44208__$1;\nvar seq__44246 \x3d cljs.core.seq(vec__44245);\nvar first__44247 \x3d cljs.core.first(seq__44246);\nvar seq__44246__$1 \x3d cljs.core.next(seq__44246);\nvar src__$1 \x3d first__44247;\nvar more__$1 \x3d seq__44246__$1;\nif(cljs.core.not(src__$1)){\nreturn sources_to_get__$2;\n} else {\nvar map__44249 \x3d src__$1;\nvar map__44249__$1 \x3d cljs.core.__destructure_map(map__44249);\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44249__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nvar resource_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44249__$1,new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582));\nvar deps \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44249__$1,new cljs.core.Keyword(null,\x22deps\x22,\x22deps\x22,1883360319));\nvar provides \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44249__$1,new cljs.core.Keyword(null,\x22provides\x22,\x22provides\x22,-1634397992));\nvar should_reload_QMARK_ \x3d (function (){var or__4160__auto__ \x3d cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22always-load\x22,\x22always-load\x22,66405637).cljs$core$IFn$_invoke$arity$1(reload_info),ns);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.core.not(shadow.cljs.devtools.client.env.src_is_loaded_QMARK_(src__$1));\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nvar and__4149__auto__ \x3d (function (){var or__4160__auto____$2 \x3d cljs.core.contains_QMARK_(compiled,resource_id);\nif(or__4160__auto____$2){\nreturn or__4160__auto____$2;\n} else {\nreturn cljs.core.some(affected__$2,deps);\n}\n})();\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not(new cljs.core.Keyword(null,\x22from-jar\x22,\x22from-jar\x22,1050932827).cljs$core$IFn$_invoke$arity$1(src__$1));\n} else {\nreturn and__4149__auto__;\n}\n}\n}\n})();\nif(cljs.core.not(should_reload_QMARK_)){\nvar G__44549 \x3d affected__$2;\nvar G__44550 \x3d sources_to_get__$2;\nvar G__44551 \x3d more__$1;\naffected__$1 \x3d G__44549;\nsources_to_get__$1 \x3d G__44550;\nG__44208__$1 \x3d G__44551;\ncontinue;\n} else {\nvar G__44552 \x3d clojure.set.union.cljs$core$IFn$_invoke$arity$2(affected__$2,provides);\nvar G__44553 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(sources_to_get__$2,src__$1);\nvar G__44554 \x3d more__$1;\naffected__$1 \x3d G__44552;\nsources_to_get__$1 \x3d G__44553;\nG__44208__$1 \x3d G__44554;\ncontinue;\n}\n}\nbreak;\n}\n});\nshadow.cljs.devtools.client.env.filter_reload_sources \x3d (function shadow$cljs$devtools$client$env$filter_reload_sources(info,reload_info){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22full\x22,shadow.cljs.devtools.client.env.reload_strategy)){\nreturn shadow.cljs.devtools.client.env.filter_sources_to_get_full(info,reload_info);\n} else {\nreturn shadow.cljs.devtools.client.env.filter_sources_to_get_optimized(info,reload_info);\n}\n});\n");
SHADOW_ENV.evalLoad("goog.dom.inputtype.js", true , "goog.provide(\x22goog.dom.InputType\x22);\ngoog.dom.InputType \x3d {BUTTON:\x22button\x22, CHECKBOX:\x22checkbox\x22, COLOR:\x22color\x22, DATE:\x22date\x22, DATETIME:\x22datetime\x22, DATETIME_LOCAL:\x22datetime-local\x22, EMAIL:\x22email\x22, FILE:\x22file\x22, HIDDEN:\x22hidden\x22, IMAGE:\x22image\x22, MENU:\x22menu\x22, MONTH:\x22month\x22, NUMBER:\x22number\x22, PASSWORD:\x22password\x22, RADIO:\x22radio\x22, RANGE:\x22range\x22, RESET:\x22reset\x22, SEARCH:\x22search\x22, SELECT_MULTIPLE:\x22select-multiple\x22, SELECT_ONE:\x22select-one\x22, SUBMIT:\x22submit\x22, TEL:\x22tel\x22, TEXT:\x22text\x22, TEXTAREA:\x22textarea\x22, TIME:\x22time\x22, URL:\x22url\x22, WEEK:\x22week\x22};\n");
SHADOW_ENV.evalLoad("goog.window.window.js", true , "goog.provide(\x22goog.window\x22);\ngoog.require(\x22goog.dom\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.safe\x22);\ngoog.require(\x22goog.html.SafeUrl\x22);\ngoog.require(\x22goog.html.uncheckedconversions\x22);\ngoog.require(\x22goog.labs.userAgent.platform\x22);\ngoog.require(\x22goog.string\x22);\ngoog.require(\x22goog.string.Const\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.requireType(\x22goog.string.TypedString\x22);\ngoog.window.DEFAULT_POPUP_HEIGHT \x3d 500;\ngoog.window.DEFAULT_POPUP_WIDTH \x3d 690;\ngoog.window.DEFAULT_POPUP_TARGET \x3d \x22google_popup\x22;\ngoog.window.createFakeWindow_ \x3d function() {\n  return {};\n};\ngoog.window.open \x3d function(linkRef, opt_options, opt_parentWin) {\n  if (!opt_options) {\n    opt_options \x3d {};\n  }\n  var parentWin \x3d opt_parentWin || window;\n  var safeLinkRef;\n  if (linkRef instanceof goog.html.SafeUrl) {\n    safeLinkRef \x3d linkRef;\n  } else {\n    var url \x3d typeof linkRef.href !\x3d \x22undefined\x22 ? linkRef.href : String(linkRef);\n    safeLinkRef \x3d goog.html.SafeUrl.sanitize(url);\n  }\n  var target \x3d opt_options.target || linkRef.target;\n  var sb \x3d [];\n  for (var option in opt_options) {\n    switch(option) {\n      case \x22width\x22:\n      case \x22height\x22:\n      case \x22top\x22:\n      case \x22left\x22:\n        sb.push(option + \x22\\x3d\x22 + opt_options[option]);\n        break;\n      case \x22target\x22:\n      case \x22noopener\x22:\n      case \x22noreferrer\x22:\n        break;\n      default:\n        sb.push(option + \x22\\x3d\x22 + (opt_options[option] ? 1 : 0));\n    }\n  }\n  var optionString \x3d sb.join(\x22,\x22);\n  var newWin;\n  if (goog.labs.userAgent.platform.isIos() \x26\x26 parentWin.navigator \x26\x26 parentWin.navigator[\x22standalone\x22] \x26\x26 target \x26\x26 target !\x3d \x22_self\x22) {\n    var a \x3d goog.dom.createElement(goog.dom.TagName.A);\n    goog.dom.safe.setAnchorHref(a, safeLinkRef);\n    a.setAttribute(\x22target\x22, target);\n    if (opt_options[\x22noreferrer\x22]) {\n      a.setAttribute(\x22rel\x22, \x22noreferrer\x22);\n    }\n    var click \x3d document.createEvent(\x22MouseEvent\x22);\n    click.initMouseEvent(\x22click\x22, true, true, parentWin, 1);\n    a.dispatchEvent(click);\n    newWin \x3d goog.window.createFakeWindow_();\n  } else {\n    if (opt_options[\x22noreferrer\x22]) {\n      newWin \x3d goog.dom.safe.openInWindow(\x22\x22, parentWin, target, optionString);\n      var sanitizedLinkRef \x3d goog.html.SafeUrl.unwrap(safeLinkRef);\n      if (newWin) {\n        if (goog.userAgent.EDGE_OR_IE) {\n          if (goog.string.contains(sanitizedLinkRef, \x22;\x22)) {\n            sanitizedLinkRef \x3d \x22\x27\x22 + sanitizedLinkRef.replace(/\x27/g, \x22%27\x22) + \x22\x27\x22;\n          }\n        }\n        newWin.opener \x3d null;\n        var safeHtml \x3d goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\x22b/12014412, meta tag with sanitized URL\x22), \x27\\x3cmeta name\\x3d\x22referrer\x22 content\\x3d\x22no-referrer\x22\\x3e\x27 + \x27\\x3cmeta http-equiv\\x3d\x22refresh\x22 content\\x3d\x220; url\\x3d\x27 + goog.string.htmlEscape(sanitizedLinkRef) + \x27\x22\\x3e\x27);\n        var newDoc \x3d newWin.document;\n        if (newDoc \x26\x26 newDoc.write) {\n          goog.dom.safe.documentWrite(newDoc, safeHtml);\n          newDoc.close();\n        }\n      }\n    } else {\n      newWin \x3d goog.dom.safe.openInWindow(safeLinkRef, parentWin, target, optionString);\n      if (newWin \x26\x26 opt_options[\x22noopener\x22]) {\n        newWin.opener \x3d null;\n      }\n    }\n  }\n  return newWin;\n};\ngoog.window.openBlank \x3d function(opt_message, opt_options, opt_parentWin) {\n  var loadingMessage;\n  if (!opt_message) {\n    loadingMessage \x3d \x22\x22;\n  } else {\n    loadingMessage \x3d goog.string.escapeString(goog.string.htmlEscape(opt_message));\n  }\n  var url \x3d goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\x22b/12014412, encoded string in javascript: URL\x22), \x27javascript:\x22\x27 + encodeURI(loadingMessage) + \x27\x22\x27);\n  return goog.window.open(url, opt_options, opt_parentWin);\n};\ngoog.window.popup \x3d function(linkRef, opt_options) {\n  if (!opt_options) {\n    opt_options \x3d {};\n  }\n  opt_options[\x22target\x22] \x3d opt_options[\x22target\x22] || linkRef[\x22target\x22] || goog.window.DEFAULT_POPUP_TARGET;\n  opt_options[\x22width\x22] \x3d opt_options[\x22width\x22] || goog.window.DEFAULT_POPUP_WIDTH;\n  opt_options[\x22height\x22] \x3d opt_options[\x22height\x22] || goog.window.DEFAULT_POPUP_HEIGHT;\n  var newWin \x3d goog.window.open(linkRef, opt_options);\n  if (!newWin) {\n    return true;\n  }\n  newWin.focus();\n  return false;\n};\n");
SHADOW_ENV.evalLoad("goog.dom.forms.js", true , "goog.provide(\x22goog.dom.forms\x22);\ngoog.require(\x22goog.dom.InputType\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.safe\x22);\ngoog.require(\x22goog.structs.Map\x22);\ngoog.require(\x22goog.window\x22);\ngoog.dom.forms.submitFormInNewWindow \x3d function(form, opt_submitElement) {\n  var formData \x3d goog.dom.forms.getFormDataMap(form);\n  var action \x3d form.action;\n  var method \x3d form.method;\n  if (opt_submitElement) {\n    if (goog.dom.InputType.SUBMIT !\x3d opt_submitElement.type.toLowerCase()) {\n      throw new Error(\x22opt_submitElement does not have a valid type.\x22);\n    }\n    var submitValue \x3d goog.dom.forms.getValue(opt_submitElement);\n    if (submitValue !\x3d null) {\n      goog.dom.forms.addFormDataToMap_(formData, opt_submitElement.name, submitValue);\n    }\n    if (opt_submitElement.getAttribute(\x22formaction\x22)) {\n      action \x3d opt_submitElement.getAttribute(\x22formaction\x22);\n    }\n    if (opt_submitElement.getAttribute(\x22formmethod\x22)) {\n      method \x3d opt_submitElement.getAttribute(\x22formmethod\x22);\n    }\n  }\n  return goog.dom.forms.submitFormDataInNewWindow(action, method, formData);\n};\ngoog.dom.forms.submitFormDataInNewWindow \x3d function(actionUri, method, formData) {\n  var newWin \x3d goog.window.openBlank(\x22\x22, {noreferrer:true});\n  if (!newWin) {\n    return false;\n  }\n  var newDocument \x3d newWin.document;\n  var newForm \x3d newDocument.createElement(\x22form\x22);\n  newForm.method \x3d method;\n  goog.dom.safe.setFormElementAction(newForm, actionUri);\n  formData.forEach(function(fieldValues, fieldName) {\n    for (var i \x3d 0; i \x3c fieldValues.length; i++) {\n      var fieldValue \x3d fieldValues[i];\n      var newInput \x3d newDocument.createElement(\x22input\x22);\n      newInput.name \x3d fieldName;\n      newInput.value \x3d fieldValue;\n      newInput.type \x3d \x22hidden\x22;\n      HTMLFormElement.prototype.appendChild.call(newForm, newInput);\n    }\n  });\n  HTMLFormElement.prototype.submit.call(newForm);\n  return true;\n};\ngoog.dom.forms.getFormDataMap \x3d function(form) {\n  var map \x3d new goog.structs.Map;\n  goog.dom.forms.getFormDataHelper_(form, map, goog.dom.forms.addFormDataToMap_);\n  return map;\n};\ngoog.dom.forms.getFormDataString \x3d function(form) {\n  var sb \x3d [];\n  goog.dom.forms.getFormDataHelper_(form, sb, goog.dom.forms.addFormDataToStringBuffer_);\n  return sb.join(\x22\\x26\x22);\n};\ngoog.dom.forms.getFormDataHelper_ \x3d function(form, result, fnAppend) {\n  var els \x3d form.elements;\n  for (var el, i \x3d 0; el \x3d els.item(i); i++) {\n    if (el.form !\x3d form || el.disabled || el.tagName \x3d\x3d goog.dom.TagName.FIELDSET) {\n      continue;\n    }\n    var name \x3d el.name;\n    switch(el.type.toLowerCase()) {\n      case goog.dom.InputType.FILE:\n      case goog.dom.InputType.SUBMIT:\n      case goog.dom.InputType.RESET:\n      case goog.dom.InputType.BUTTON:\n        break;\n      case goog.dom.InputType.SELECT_MULTIPLE:\n        var values \x3d goog.dom.forms.getValue(el);\n        if (values !\x3d null) {\n          for (var value, j \x3d 0; value \x3d values[j]; j++) {\n            fnAppend(result, name, value);\n          }\n        }\n        break;\n      default:\n        var value \x3d goog.dom.forms.getValue(el);\n        if (value !\x3d null) {\n          fnAppend(result, name, value);\n        }\n    }\n  }\n  var inputs \x3d form.getElementsByTagName(String(goog.dom.TagName.INPUT));\n  for (var input, i \x3d 0; input \x3d inputs[i]; i++) {\n    if (input.form \x3d\x3d form \x26\x26 input.type.toLowerCase() \x3d\x3d goog.dom.InputType.IMAGE) {\n      name \x3d input.name;\n      fnAppend(result, name, input.value);\n      fnAppend(result, name + \x22.x\x22, \x220\x22);\n      fnAppend(result, name + \x22.y\x22, \x220\x22);\n    }\n  }\n};\ngoog.dom.forms.addFormDataToMap_ \x3d function(map, name, value) {\n  var array \x3d map.get(name);\n  if (!array) {\n    array \x3d [];\n    map.set(name, array);\n  }\n  array.push(value);\n};\ngoog.dom.forms.addFormDataToStringBuffer_ \x3d function(sb, name, value) {\n  sb.push(encodeURIComponent(name) + \x22\\x3d\x22 + encodeURIComponent(value));\n};\ngoog.dom.forms.hasFileInput \x3d function(form) {\n  var els \x3d form.elements;\n  for (var el, i \x3d 0; el \x3d els[i]; i++) {\n    if (!el.disabled \x26\x26 el.type \x26\x26 el.type.toLowerCase() \x3d\x3d goog.dom.InputType.FILE) {\n      return true;\n    }\n  }\n  return false;\n};\ngoog.dom.forms.setDisabled \x3d function(el, disabled) {\n  if (el.tagName \x3d\x3d goog.dom.TagName.FORM) {\n    var els \x3d el.elements;\n    for (var i \x3d 0; el \x3d els.item(i); i++) {\n      goog.dom.forms.setDisabled(el, disabled);\n    }\n  } else {\n    if (disabled \x3d\x3d true) {\n      el.blur();\n    }\n    el.disabled \x3d disabled;\n  }\n};\ngoog.dom.forms.focusAndSelect \x3d function(el) {\n  el.focus();\n  if (el.select) {\n    el.select();\n  }\n};\ngoog.dom.forms.hasValue \x3d function(el) {\n  var value \x3d goog.dom.forms.getValue(el);\n  return !!value;\n};\ngoog.dom.forms.hasValueByName \x3d function(form, name) {\n  var value \x3d goog.dom.forms.getValueByName(form, name);\n  return !!value;\n};\ngoog.dom.forms.getValue \x3d function(input) {\n  var type \x3d input.type;\n  if (typeof type \x3d\x3d\x3d \x22string\x22) {\n    var el \x3d input;\n    switch(type.toLowerCase()) {\n      case goog.dom.InputType.CHECKBOX:\n      case goog.dom.InputType.RADIO:\n        return goog.dom.forms.getInputChecked_(el);\n      case goog.dom.InputType.SELECT_ONE:\n        return goog.dom.forms.getSelectSingle_(el);\n      case goog.dom.InputType.SELECT_MULTIPLE:\n        return goog.dom.forms.getSelectMultiple_(el);\n      default:\n    }\n  }\n  return input.value !\x3d null ? input.value : null;\n};\ngoog.dom.forms.getValueByName \x3d function(form, name) {\n  var els \x3d form.elements[name];\n  if (!els) {\n    return null;\n  } else {\n    if (els.type) {\n      return goog.dom.forms.getValue(els);\n    } else {\n      for (var i \x3d 0; i \x3c els.length; i++) {\n        var val \x3d goog.dom.forms.getValue(els[i]);\n        if (val) {\n          return val;\n        }\n      }\n      return null;\n    }\n  }\n};\ngoog.dom.forms.getInputChecked_ \x3d function(el) {\n  return el.checked ? el.value : null;\n};\ngoog.dom.forms.getSelectSingle_ \x3d function(el) {\n  var selectedIndex \x3d el.selectedIndex;\n  return selectedIndex \x3e\x3d 0 ? el.options[selectedIndex].value : null;\n};\ngoog.dom.forms.getSelectMultiple_ \x3d function(el) {\n  var values \x3d [];\n  for (var option, i \x3d 0; option \x3d el.options[i]; i++) {\n    if (option.selected) {\n      values.push(option.value);\n    }\n  }\n  return values.length ? values : null;\n};\ngoog.dom.forms.setValue \x3d function(el, opt_value) {\n  var type \x3d el.type;\n  switch(typeof type \x3d\x3d\x3d \x22string\x22 \x26\x26 type.toLowerCase()) {\n    case goog.dom.InputType.CHECKBOX:\n    case goog.dom.InputType.RADIO:\n      goog.dom.forms.setInputChecked_(el, opt_value);\n      return;\n    case goog.dom.InputType.SELECT_ONE:\n      goog.dom.forms.setSelectSingle_(el, opt_value);\n      return;\n    case goog.dom.InputType.SELECT_MULTIPLE:\n      goog.dom.forms.setSelectMultiple_(el, opt_value);\n      return;\n    default:\n      el.value \x3d opt_value !\x3d null ? opt_value : \x22\x22;\n  }\n};\ngoog.dom.forms.setInputChecked_ \x3d function(el, opt_value) {\n  el.checked \x3d opt_value;\n};\ngoog.dom.forms.setSelectSingle_ \x3d function(el, opt_value) {\n  el.selectedIndex \x3d -1;\n  if (typeof opt_value \x3d\x3d\x3d \x22string\x22) {\n    for (var option, i \x3d 0; option \x3d el.options[i]; i++) {\n      if (option.value \x3d\x3d opt_value) {\n        option.selected \x3d true;\n        break;\n      }\n    }\n  }\n};\ngoog.dom.forms.setSelectMultiple_ \x3d function(el, opt_value) {\n  if (typeof opt_value \x3d\x3d\x3d \x22string\x22) {\n    opt_value \x3d [opt_value];\n  }\n  for (var option, i \x3d 0; option \x3d el.options[i]; i++) {\n    option.selected \x3d false;\n    if (opt_value) {\n      for (var value, j \x3d 0; value \x3d opt_value[j]; j++) {\n        if (option.value \x3d\x3d value) {\n          option.selected \x3d true;\n        }\n      }\n    }\n  }\n};\n");
SHADOW_ENV.evalLoad("goog.dom.classlist.js", true , "goog.provide(\x22goog.dom.classlist\x22);\ngoog.require(\x22goog.array\x22);\ngoog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST \x3d goog.define(\x22goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST\x22, false);\ngoog.dom.classlist.getClassName_ \x3d function(element) {\n  return typeof element.className \x3d\x3d \x22string\x22 ? element.className : element.getAttribute \x26\x26 element.getAttribute(\x22class\x22) || \x22\x22;\n};\ngoog.dom.classlist.get \x3d function(element) {\n  if (goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST || element.classList) {\n    return element.classList;\n  }\n  return goog.dom.classlist.getClassName_(element).match(/\\S+/g) || [];\n};\ngoog.dom.classlist.set \x3d function(element, className) {\n  if (typeof element.className \x3d\x3d \x22string\x22) {\n    element.className \x3d className;\n    return;\n  } else {\n    if (element.setAttribute) {\n      element.setAttribute(\x22class\x22, className);\n    }\n  }\n};\ngoog.dom.classlist.contains \x3d function(element, className) {\n  if (goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST || element.classList) {\n    return element.classList.contains(className);\n  }\n  return goog.array.contains(goog.dom.classlist.get(element), className);\n};\ngoog.dom.classlist.add \x3d function(element, className) {\n  if (goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST || element.classList) {\n    element.classList.add(className);\n    return;\n  }\n  if (!goog.dom.classlist.contains(element, className)) {\n    var oldClassName \x3d goog.dom.classlist.getClassName_(element);\n    goog.dom.classlist.set(element, oldClassName + (oldClassName.length \x3e 0 ? \x22 \x22 + className : className));\n  }\n};\ngoog.dom.classlist.addAll \x3d function(element, classesToAdd) {\n  if (goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST || element.classList) {\n    goog.array.forEach(classesToAdd, function(className) {\n      goog.dom.classlist.add(element, className);\n    });\n    return;\n  }\n  var classMap \x3d {};\n  goog.array.forEach(goog.dom.classlist.get(element), function(className) {\n    classMap[className] \x3d true;\n  });\n  goog.array.forEach(classesToAdd, function(className) {\n    classMap[className] \x3d true;\n  });\n  var newClassName \x3d \x22\x22;\n  for (var className in classMap) {\n    newClassName +\x3d newClassName.length \x3e 0 ? \x22 \x22 + className : className;\n  }\n  goog.dom.classlist.set(element, newClassName);\n};\ngoog.dom.classlist.remove \x3d function(element, className) {\n  if (goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST || element.classList) {\n    element.classList.remove(className);\n    return;\n  }\n  if (goog.dom.classlist.contains(element, className)) {\n    goog.dom.classlist.set(element, goog.array.filter(goog.dom.classlist.get(element), function(c) {\n      return c !\x3d className;\n    }).join(\x22 \x22));\n  }\n};\ngoog.dom.classlist.removeAll \x3d function(element, classesToRemove) {\n  if (goog.dom.classlist.ALWAYS_USE_DOM_TOKEN_LIST || element.classList) {\n    goog.array.forEach(classesToRemove, function(className) {\n      goog.dom.classlist.remove(element, className);\n    });\n    return;\n  }\n  goog.dom.classlist.set(element, goog.array.filter(goog.dom.classlist.get(element), function(className) {\n    return !goog.array.contains(classesToRemove, className);\n  }).join(\x22 \x22));\n};\ngoog.dom.classlist.enable \x3d function(element, className, enabled) {\n  if (enabled) {\n    goog.dom.classlist.add(element, className);\n  } else {\n    goog.dom.classlist.remove(element, className);\n  }\n};\ngoog.dom.classlist.enableAll \x3d function(element, classesToEnable, enabled) {\n  var f \x3d enabled ? goog.dom.classlist.addAll : goog.dom.classlist.removeAll;\n  f(element, classesToEnable);\n};\ngoog.dom.classlist.swap \x3d function(element, fromClass, toClass) {\n  if (goog.dom.classlist.contains(element, fromClass)) {\n    goog.dom.classlist.remove(element, fromClass);\n    goog.dom.classlist.add(element, toClass);\n    return true;\n  }\n  return false;\n};\ngoog.dom.classlist.toggle \x3d function(element, className) {\n  var add \x3d !goog.dom.classlist.contains(element, className);\n  goog.dom.classlist.enable(element, className, add);\n  return add;\n};\ngoog.dom.classlist.addRemove \x3d function(element, classToRemove, classToAdd) {\n  goog.dom.classlist.remove(element, classToRemove);\n  goog.dom.classlist.add(element, classToAdd);\n};\n");
SHADOW_ENV.evalLoad("goog.dom.vendor.js", true , "goog.provide(\x22goog.dom.vendor\x22);\ngoog.require(\x22goog.string\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.dom.vendor.getVendorJsPrefix \x3d function() {\n  if (goog.userAgent.WEBKIT) {\n    return \x22Webkit\x22;\n  } else {\n    if (goog.userAgent.GECKO) {\n      return \x22Moz\x22;\n    } else {\n      if (goog.userAgent.IE) {\n        return \x22ms\x22;\n      } else {\n        if (goog.userAgent.OPERA) {\n          return \x22O\x22;\n        }\n      }\n    }\n  }\n  return null;\n};\ngoog.dom.vendor.getVendorPrefix \x3d function() {\n  if (goog.userAgent.WEBKIT) {\n    return \x22-webkit\x22;\n  } else {\n    if (goog.userAgent.GECKO) {\n      return \x22-moz\x22;\n    } else {\n      if (goog.userAgent.IE) {\n        return \x22-ms\x22;\n      } else {\n        if (goog.userAgent.OPERA) {\n          return \x22-o\x22;\n        }\n      }\n    }\n  }\n  return null;\n};\ngoog.dom.vendor.getPrefixedPropertyName \x3d function(propertyName, opt_object) {\n  if (opt_object \x26\x26 propertyName in opt_object) {\n    return propertyName;\n  }\n  var prefix \x3d goog.dom.vendor.getVendorJsPrefix();\n  if (prefix) {\n    prefix \x3d prefix.toLowerCase();\n    var prefixedPropertyName \x3d prefix + goog.string.toTitleCase(propertyName);\n    return opt_object \x3d\x3d\x3d undefined || prefixedPropertyName in opt_object ? prefixedPropertyName : null;\n  }\n  return null;\n};\ngoog.dom.vendor.getPrefixedEventType \x3d function(eventType) {\n  var prefix \x3d goog.dom.vendor.getVendorJsPrefix() || \x22\x22;\n  return (prefix + eventType).toLowerCase();\n};\n");
SHADOW_ENV.evalLoad("goog.math.box.js", true , "goog.provide(\x22goog.math.Box\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.math.Coordinate\x22);\ngoog.math.Box \x3d function(top, right, bottom, left) {\n  this.top \x3d top;\n  this.right \x3d right;\n  this.bottom \x3d bottom;\n  this.left \x3d left;\n};\ngoog.math.Box.boundingBox \x3d function(var_args) {\n  var box \x3d new goog.math.Box(arguments[0].y, arguments[0].x, arguments[0].y, arguments[0].x);\n  for (var i \x3d 1; i \x3c arguments.length; i++) {\n    box.expandToIncludeCoordinate(arguments[i]);\n  }\n  return box;\n};\ngoog.math.Box.prototype.getWidth \x3d function() {\n  return this.right - this.left;\n};\ngoog.math.Box.prototype.getHeight \x3d function() {\n  return this.bottom - this.top;\n};\ngoog.math.Box.prototype.clone \x3d function() {\n  return new goog.math.Box(this.top, this.right, this.bottom, this.left);\n};\nif (goog.DEBUG) {\n  goog.math.Box.prototype.toString \x3d function() {\n    return \x22(\x22 + this.top + \x22t, \x22 + this.right + \x22r, \x22 + this.bottom + \x22b, \x22 + this.left + \x22l)\x22;\n  };\n}\ngoog.math.Box.prototype.contains \x3d function(other) {\n  return goog.math.Box.contains(this, other);\n};\ngoog.math.Box.prototype.expand \x3d function(top, opt_right, opt_bottom, opt_left) {\n  if (goog.isObject(top)) {\n    this.top -\x3d top.top;\n    this.right +\x3d top.right;\n    this.bottom +\x3d top.bottom;\n    this.left -\x3d top.left;\n  } else {\n    this.top -\x3d top;\n    this.right +\x3d Number(opt_right);\n    this.bottom +\x3d Number(opt_bottom);\n    this.left -\x3d Number(opt_left);\n  }\n  return this;\n};\ngoog.math.Box.prototype.expandToInclude \x3d function(box) {\n  this.left \x3d Math.min(this.left, box.left);\n  this.top \x3d Math.min(this.top, box.top);\n  this.right \x3d Math.max(this.right, box.right);\n  this.bottom \x3d Math.max(this.bottom, box.bottom);\n};\ngoog.math.Box.prototype.expandToIncludeCoordinate \x3d function(coord) {\n  this.top \x3d Math.min(this.top, coord.y);\n  this.right \x3d Math.max(this.right, coord.x);\n  this.bottom \x3d Math.max(this.bottom, coord.y);\n  this.left \x3d Math.min(this.left, coord.x);\n};\ngoog.math.Box.equals \x3d function(a, b) {\n  if (a \x3d\x3d b) {\n    return true;\n  }\n  if (!a || !b) {\n    return false;\n  }\n  return a.top \x3d\x3d b.top \x26\x26 a.right \x3d\x3d b.right \x26\x26 a.bottom \x3d\x3d b.bottom \x26\x26 a.left \x3d\x3d b.left;\n};\ngoog.math.Box.contains \x3d function(box, other) {\n  if (!box || !other) {\n    return false;\n  }\n  if (other instanceof goog.math.Box) {\n    return other.left \x3e\x3d box.left \x26\x26 other.right \x3c\x3d box.right \x26\x26 other.top \x3e\x3d box.top \x26\x26 other.bottom \x3c\x3d box.bottom;\n  }\n  return other.x \x3e\x3d box.left \x26\x26 other.x \x3c\x3d box.right \x26\x26 other.y \x3e\x3d box.top \x26\x26 other.y \x3c\x3d box.bottom;\n};\ngoog.math.Box.relativePositionX \x3d function(box, coord) {\n  if (coord.x \x3c box.left) {\n    return coord.x - box.left;\n  } else {\n    if (coord.x \x3e box.right) {\n      return coord.x - box.right;\n    }\n  }\n  return 0;\n};\ngoog.math.Box.relativePositionY \x3d function(box, coord) {\n  if (coord.y \x3c box.top) {\n    return coord.y - box.top;\n  } else {\n    if (coord.y \x3e box.bottom) {\n      return coord.y - box.bottom;\n    }\n  }\n  return 0;\n};\ngoog.math.Box.distance \x3d function(box, coord) {\n  var x \x3d goog.math.Box.relativePositionX(box, coord);\n  var y \x3d goog.math.Box.relativePositionY(box, coord);\n  return Math.sqrt(x * x + y * y);\n};\ngoog.math.Box.intersects \x3d function(a, b) {\n  return a.left \x3c\x3d b.right \x26\x26 b.left \x3c\x3d a.right \x26\x26 a.top \x3c\x3d b.bottom \x26\x26 b.top \x3c\x3d a.bottom;\n};\ngoog.math.Box.intersectsWithPadding \x3d function(a, b, padding) {\n  return a.left \x3c\x3d b.right + padding \x26\x26 b.left \x3c\x3d a.right + padding \x26\x26 a.top \x3c\x3d b.bottom + padding \x26\x26 b.top \x3c\x3d a.bottom + padding;\n};\ngoog.math.Box.prototype.ceil \x3d function() {\n  this.top \x3d Math.ceil(this.top);\n  this.right \x3d Math.ceil(this.right);\n  this.bottom \x3d Math.ceil(this.bottom);\n  this.left \x3d Math.ceil(this.left);\n  return this;\n};\ngoog.math.Box.prototype.floor \x3d function() {\n  this.top \x3d Math.floor(this.top);\n  this.right \x3d Math.floor(this.right);\n  this.bottom \x3d Math.floor(this.bottom);\n  this.left \x3d Math.floor(this.left);\n  return this;\n};\ngoog.math.Box.prototype.round \x3d function() {\n  this.top \x3d Math.round(this.top);\n  this.right \x3d Math.round(this.right);\n  this.bottom \x3d Math.round(this.bottom);\n  this.left \x3d Math.round(this.left);\n  return this;\n};\ngoog.math.Box.prototype.translate \x3d function(tx, opt_ty) {\n  if (tx instanceof goog.math.Coordinate) {\n    this.left +\x3d tx.x;\n    this.right +\x3d tx.x;\n    this.top +\x3d tx.y;\n    this.bottom +\x3d tx.y;\n  } else {\n    goog.asserts.assertNumber(tx);\n    this.left +\x3d tx;\n    this.right +\x3d tx;\n    if (typeof opt_ty \x3d\x3d\x3d \x22number\x22) {\n      this.top +\x3d opt_ty;\n      this.bottom +\x3d opt_ty;\n    }\n  }\n  return this;\n};\ngoog.math.Box.prototype.scale \x3d function(sx, opt_sy) {\n  var sy \x3d typeof opt_sy \x3d\x3d\x3d \x22number\x22 ? opt_sy : sx;\n  this.left *\x3d sx;\n  this.right *\x3d sx;\n  this.top *\x3d sy;\n  this.bottom *\x3d sy;\n  return this;\n};\n");
SHADOW_ENV.evalLoad("goog.math.irect.js", true , "goog.provide(\x22goog.math.IRect\x22);\ngoog.math.IRect \x3d function() {\n};\ngoog.math.IRect.prototype.left;\ngoog.math.IRect.prototype.top;\ngoog.math.IRect.prototype.width;\ngoog.math.IRect.prototype.height;\n");
SHADOW_ENV.evalLoad("goog.math.rect.js", true , "goog.provide(\x22goog.math.Rect\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.math.Box\x22);\ngoog.require(\x22goog.math.Coordinate\x22);\ngoog.require(\x22goog.math.IRect\x22);\ngoog.require(\x22goog.math.Size\x22);\ngoog.math.Rect \x3d function(x, y, w, h) {\n  this.left \x3d x;\n  this.top \x3d y;\n  this.width \x3d w;\n  this.height \x3d h;\n};\ngoog.math.Rect.prototype.clone \x3d function() {\n  return new goog.math.Rect(this.left, this.top, this.width, this.height);\n};\ngoog.math.Rect.prototype.toBox \x3d function() {\n  var right \x3d this.left + this.width;\n  var bottom \x3d this.top + this.height;\n  return new goog.math.Box(this.top, right, bottom, this.left);\n};\ngoog.math.Rect.createFromPositionAndSize \x3d function(position, size) {\n  return new goog.math.Rect(position.x, position.y, size.width, size.height);\n};\ngoog.math.Rect.createFromBox \x3d function(box) {\n  return new goog.math.Rect(box.left, box.top, box.right - box.left, box.bottom - box.top);\n};\nif (goog.DEBUG) {\n  goog.math.Rect.prototype.toString \x3d function() {\n    return \x22(\x22 + this.left + \x22, \x22 + this.top + \x22 - \x22 + this.width + \x22w x \x22 + this.height + \x22h)\x22;\n  };\n}\ngoog.math.Rect.equals \x3d function(a, b) {\n  if (a \x3d\x3d b) {\n    return true;\n  }\n  if (!a || !b) {\n    return false;\n  }\n  return a.left \x3d\x3d b.left \x26\x26 a.width \x3d\x3d b.width \x26\x26 a.top \x3d\x3d b.top \x26\x26 a.height \x3d\x3d b.height;\n};\ngoog.math.Rect.prototype.intersection \x3d function(rect) {\n  var x0 \x3d Math.max(this.left, rect.left);\n  var x1 \x3d Math.min(this.left + this.width, rect.left + rect.width);\n  if (x0 \x3c\x3d x1) {\n    var y0 \x3d Math.max(this.top, rect.top);\n    var y1 \x3d Math.min(this.top + this.height, rect.top + rect.height);\n    if (y0 \x3c\x3d y1) {\n      this.left \x3d x0;\n      this.top \x3d y0;\n      this.width \x3d x1 - x0;\n      this.height \x3d y1 - y0;\n      return true;\n    }\n  }\n  return false;\n};\ngoog.math.Rect.intersection \x3d function(a, b) {\n  var x0 \x3d Math.max(a.left, b.left);\n  var x1 \x3d Math.min(a.left + a.width, b.left + b.width);\n  if (x0 \x3c\x3d x1) {\n    var y0 \x3d Math.max(a.top, b.top);\n    var y1 \x3d Math.min(a.top + a.height, b.top + b.height);\n    if (y0 \x3c\x3d y1) {\n      return new goog.math.Rect(x0, y0, x1 - x0, y1 - y0);\n    }\n  }\n  return null;\n};\ngoog.math.Rect.intersects \x3d function(a, b) {\n  return a.left \x3c\x3d b.left + b.width \x26\x26 b.left \x3c\x3d a.left + a.width \x26\x26 a.top \x3c\x3d b.top + b.height \x26\x26 b.top \x3c\x3d a.top + a.height;\n};\ngoog.math.Rect.prototype.intersects \x3d function(rect) {\n  return goog.math.Rect.intersects(this, rect);\n};\ngoog.math.Rect.difference \x3d function(a, b) {\n  var intersection \x3d goog.math.Rect.intersection(a, b);\n  if (!intersection || !intersection.height || !intersection.width) {\n    return [a.clone()];\n  }\n  var result \x3d [];\n  var top \x3d a.top;\n  var height \x3d a.height;\n  var ar \x3d a.left + a.width;\n  var ab \x3d a.top + a.height;\n  var br \x3d b.left + b.width;\n  var bb \x3d b.top + b.height;\n  if (b.top \x3e a.top) {\n    result.push(new goog.math.Rect(a.left, a.top, a.width, b.top - a.top));\n    top \x3d b.top;\n    height -\x3d b.top - a.top;\n  }\n  if (bb \x3c ab) {\n    result.push(new goog.math.Rect(a.left, bb, a.width, ab - bb));\n    height \x3d bb - top;\n  }\n  if (b.left \x3e a.left) {\n    result.push(new goog.math.Rect(a.left, top, b.left - a.left, height));\n  }\n  if (br \x3c ar) {\n    result.push(new goog.math.Rect(br, top, ar - br, height));\n  }\n  return result;\n};\ngoog.math.Rect.prototype.difference \x3d function(rect) {\n  return goog.math.Rect.difference(this, rect);\n};\ngoog.math.Rect.prototype.boundingRect \x3d function(rect) {\n  var right \x3d Math.max(this.left + this.width, rect.left + rect.width);\n  var bottom \x3d Math.max(this.top + this.height, rect.top + rect.height);\n  this.left \x3d Math.min(this.left, rect.left);\n  this.top \x3d Math.min(this.top, rect.top);\n  this.width \x3d right - this.left;\n  this.height \x3d bottom - this.top;\n};\ngoog.math.Rect.boundingRect \x3d function(a, b) {\n  if (!a || !b) {\n    return null;\n  }\n  var newRect \x3d new goog.math.Rect(a.left, a.top, a.width, a.height);\n  newRect.boundingRect(b);\n  return newRect;\n};\ngoog.math.Rect.prototype.contains \x3d function(another) {\n  if (another instanceof goog.math.Coordinate) {\n    return another.x \x3e\x3d this.left \x26\x26 another.x \x3c\x3d this.left + this.width \x26\x26 another.y \x3e\x3d this.top \x26\x26 another.y \x3c\x3d this.top + this.height;\n  } else {\n    return this.left \x3c\x3d another.left \x26\x26 this.left + this.width \x3e\x3d another.left + another.width \x26\x26 this.top \x3c\x3d another.top \x26\x26 this.top + this.height \x3e\x3d another.top + another.height;\n  }\n};\ngoog.math.Rect.prototype.squaredDistance \x3d function(point) {\n  var dx \x3d point.x \x3c this.left ? this.left - point.x : Math.max(point.x - (this.left + this.width), 0);\n  var dy \x3d point.y \x3c this.top ? this.top - point.y : Math.max(point.y - (this.top + this.height), 0);\n  return dx * dx + dy * dy;\n};\ngoog.math.Rect.prototype.distance \x3d function(point) {\n  return Math.sqrt(this.squaredDistance(point));\n};\ngoog.math.Rect.prototype.getSize \x3d function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.math.Rect.prototype.getTopLeft \x3d function() {\n  return new goog.math.Coordinate(this.left, this.top);\n};\ngoog.math.Rect.prototype.getCenter \x3d function() {\n  return new goog.math.Coordinate(this.left + this.width / 2, this.top + this.height / 2);\n};\ngoog.math.Rect.prototype.getBottomRight \x3d function() {\n  return new goog.math.Coordinate(this.left + this.width, this.top + this.height);\n};\ngoog.math.Rect.prototype.ceil \x3d function() {\n  this.left \x3d Math.ceil(this.left);\n  this.top \x3d Math.ceil(this.top);\n  this.width \x3d Math.ceil(this.width);\n  this.height \x3d Math.ceil(this.height);\n  return this;\n};\ngoog.math.Rect.prototype.floor \x3d function() {\n  this.left \x3d Math.floor(this.left);\n  this.top \x3d Math.floor(this.top);\n  this.width \x3d Math.floor(this.width);\n  this.height \x3d Math.floor(this.height);\n  return this;\n};\ngoog.math.Rect.prototype.round \x3d function() {\n  this.left \x3d Math.round(this.left);\n  this.top \x3d Math.round(this.top);\n  this.width \x3d Math.round(this.width);\n  this.height \x3d Math.round(this.height);\n  return this;\n};\ngoog.math.Rect.prototype.translate \x3d function(tx, opt_ty) {\n  if (tx instanceof goog.math.Coordinate) {\n    this.left +\x3d tx.x;\n    this.top +\x3d tx.y;\n  } else {\n    this.left +\x3d goog.asserts.assertNumber(tx);\n    if (typeof opt_ty \x3d\x3d\x3d \x22number\x22) {\n      this.top +\x3d opt_ty;\n    }\n  }\n  return this;\n};\ngoog.math.Rect.prototype.scale \x3d function(sx, opt_sy) {\n  var sy \x3d typeof opt_sy \x3d\x3d\x3d \x22number\x22 ? opt_sy : sx;\n  this.left *\x3d sx;\n  this.width *\x3d sx;\n  this.top *\x3d sy;\n  this.height *\x3d sy;\n  return this;\n};\n");
SHADOW_ENV.evalLoad("goog.disposable.idisposable.js", true , "goog.provide(\x22goog.disposable.IDisposable\x22);\ngoog.disposable.IDisposable \x3d function() {\n};\ngoog.disposable.IDisposable.prototype.dispose \x3d goog.abstractMethod;\ngoog.disposable.IDisposable.prototype.isDisposed \x3d goog.abstractMethod;\n");
SHADOW_ENV.evalLoad("goog.disposable.disposable.js", true , "goog.provide(\x22goog.Disposable\x22);\ngoog.provide(\x22goog.dispose\x22);\ngoog.provide(\x22goog.disposeAll\x22);\ngoog.require(\x22goog.disposable.IDisposable\x22);\ngoog.Disposable \x3d function() {\n  this.creationStack;\n  if (goog.Disposable.MONITORING_MODE !\x3d goog.Disposable.MonitoringMode.OFF) {\n    if (goog.Disposable.INCLUDE_STACK_ON_CREATION) {\n      this.creationStack \x3d (new Error).stack;\n    }\n    goog.Disposable.instances_[goog.getUid(this)] \x3d this;\n  }\n  this.disposed_ \x3d this.disposed_;\n  this.onDisposeCallbacks_ \x3d this.onDisposeCallbacks_;\n};\ngoog.Disposable.MonitoringMode \x3d {OFF:0, PERMANENT:1, INTERACTIVE:2};\ngoog.Disposable.MONITORING_MODE \x3d goog.define(\x22goog.Disposable.MONITORING_MODE\x22, 0);\ngoog.Disposable.INCLUDE_STACK_ON_CREATION \x3d goog.define(\x22goog.Disposable.INCLUDE_STACK_ON_CREATION\x22, true);\ngoog.Disposable.instances_ \x3d {};\ngoog.Disposable.getUndisposedObjects \x3d function() {\n  var ret \x3d [];\n  for (var id in goog.Disposable.instances_) {\n    if (goog.Disposable.instances_.hasOwnProperty(id)) {\n      ret.push(goog.Disposable.instances_[Number(id)]);\n    }\n  }\n  return ret;\n};\ngoog.Disposable.clearUndisposedObjects \x3d function() {\n  goog.Disposable.instances_ \x3d {};\n};\ngoog.Disposable.prototype.disposed_ \x3d false;\ngoog.Disposable.prototype.onDisposeCallbacks_;\ngoog.Disposable.prototype.isDisposed \x3d function() {\n  return this.disposed_;\n};\ngoog.Disposable.prototype.getDisposed \x3d goog.Disposable.prototype.isDisposed;\ngoog.Disposable.prototype.dispose \x3d function() {\n  if (!this.disposed_) {\n    this.disposed_ \x3d true;\n    this.disposeInternal();\n    if (goog.Disposable.MONITORING_MODE !\x3d goog.Disposable.MonitoringMode.OFF) {\n      var uid \x3d goog.getUid(this);\n      if (goog.Disposable.MONITORING_MODE \x3d\x3d goog.Disposable.MonitoringMode.PERMANENT \x26\x26 !goog.Disposable.instances_.hasOwnProperty(uid)) {\n        throw new Error(this + \x22 did not call the goog.Disposable base \x22 + \x22constructor or was disposed of after a clearUndisposedObjects \x22 + \x22call\x22);\n      }\n      if (goog.Disposable.MONITORING_MODE !\x3d goog.Disposable.MonitoringMode.OFF \x26\x26 this.onDisposeCallbacks_ \x26\x26 this.onDisposeCallbacks_.length \x3e 0) {\n        throw new Error(this + \x22 did not empty its onDisposeCallbacks queue. This \x22 + \x22probably means it overrode dispose() or disposeInternal() \x22 + \x22without calling the superclass\x27 method.\x22);\n      }\n      delete goog.Disposable.instances_[uid];\n    }\n  }\n};\ngoog.Disposable.prototype.registerDisposable \x3d function(disposable) {\n  this.addOnDisposeCallback(goog.partial(goog.dispose, disposable));\n};\ngoog.Disposable.prototype.addOnDisposeCallback \x3d function(callback, opt_scope) {\n  if (this.disposed_) {\n    opt_scope !\x3d\x3d undefined ? callback.call(opt_scope) : callback();\n    return;\n  }\n  if (!this.onDisposeCallbacks_) {\n    this.onDisposeCallbacks_ \x3d [];\n  }\n  this.onDisposeCallbacks_.push(opt_scope !\x3d\x3d undefined ? goog.bind(callback, opt_scope) : callback);\n};\ngoog.Disposable.prototype.disposeInternal \x3d function() {\n  if (this.onDisposeCallbacks_) {\n    while (this.onDisposeCallbacks_.length) {\n      this.onDisposeCallbacks_.shift()();\n    }\n  }\n};\ngoog.Disposable.isDisposed \x3d function(obj) {\n  if (obj \x26\x26 typeof obj.isDisposed \x3d\x3d \x22function\x22) {\n    return obj.isDisposed();\n  }\n  return false;\n};\ngoog.dispose \x3d function(obj) {\n  if (obj \x26\x26 typeof obj.dispose \x3d\x3d \x22function\x22) {\n    obj.dispose();\n  }\n};\ngoog.disposeAll \x3d function(var_args) {\n  for (var i \x3d 0, len \x3d arguments.length; i \x3c len; ++i) {\n    var disposable \x3d arguments[i];\n    if (goog.isArrayLike(disposable)) {\n      goog.disposeAll.apply(null, disposable);\n    } else {\n      goog.dispose(disposable);\n    }\n  }\n};\n");
SHADOW_ENV.evalLoad("goog.events.eventid.js", true , "goog.provide(\x22goog.events.EventId\x22);\ngoog.events.EventId \x3d function(eventId) {\n  this.id \x3d eventId;\n};\ngoog.events.EventId.prototype.toString \x3d function() {\n  return this.id;\n};\n");
SHADOW_ENV.evalLoad("goog.events.event.js", true , "goog.provide(\x22goog.events.Event\x22);\ngoog.provide(\x22goog.events.EventLike\x22);\ngoog.require(\x22goog.Disposable\x22);\ngoog.require(\x22goog.events.EventId\x22);\ngoog.events.EventLike;\ngoog.events.Event \x3d function(type, opt_target) {\n  this.type \x3d type instanceof goog.events.EventId ? String(type) : type;\n  this.target \x3d opt_target;\n  this.currentTarget \x3d this.target;\n  this.propagationStopped_ \x3d false;\n  this.defaultPrevented \x3d false;\n};\ngoog.events.Event.prototype.hasPropagationStopped \x3d function() {\n  return this.propagationStopped_;\n};\ngoog.events.Event.prototype.stopPropagation \x3d function() {\n  this.propagationStopped_ \x3d true;\n};\ngoog.events.Event.prototype.preventDefault \x3d function() {\n  this.defaultPrevented \x3d true;\n};\ngoog.events.Event.stopPropagation \x3d function(e) {\n  e.stopPropagation();\n};\ngoog.events.Event.preventDefault \x3d function(e) {\n  e.preventDefault();\n};\n");
SHADOW_ENV.evalLoad("goog.style.style.js", true , "goog.provide(\x22goog.style\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.dom\x22);\ngoog.require(\x22goog.dom.NodeType\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.vendor\x22);\ngoog.require(\x22goog.html.SafeStyleSheet\x22);\ngoog.require(\x22goog.math.Box\x22);\ngoog.require(\x22goog.math.Coordinate\x22);\ngoog.require(\x22goog.math.Rect\x22);\ngoog.require(\x22goog.math.Size\x22);\ngoog.require(\x22goog.object\x22);\ngoog.require(\x22goog.reflect\x22);\ngoog.require(\x22goog.string\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.requireType(\x22goog.events.Event\x22);\ngoog.style.setStyle \x3d function(element, style, opt_value) {\n  if (typeof style \x3d\x3d\x3d \x22string\x22) {\n    goog.style.setStyle_(element, opt_value, style);\n  } else {\n    for (var key in style) {\n      goog.style.setStyle_(element, style[key], key);\n    }\n  }\n};\ngoog.style.setStyle_ \x3d function(element, value, style) {\n  var propertyName \x3d goog.style.getVendorJsStyleName_(element, style);\n  if (propertyName) {\n    element.style[propertyName] \x3d value;\n  }\n};\ngoog.style.styleNameCache_ \x3d {};\ngoog.style.getVendorJsStyleName_ \x3d function(element, style) {\n  var propertyName \x3d goog.style.styleNameCache_[style];\n  if (!propertyName) {\n    var camelStyle \x3d goog.string.toCamelCase(style);\n    propertyName \x3d camelStyle;\n    if (element.style[camelStyle] \x3d\x3d\x3d undefined) {\n      var prefixedStyle \x3d goog.dom.vendor.getVendorJsPrefix() + goog.string.toTitleCase(camelStyle);\n      if (element.style[prefixedStyle] !\x3d\x3d undefined) {\n        propertyName \x3d prefixedStyle;\n      }\n    }\n    goog.style.styleNameCache_[style] \x3d propertyName;\n  }\n  return propertyName;\n};\ngoog.style.getVendorStyleName_ \x3d function(element, style) {\n  var camelStyle \x3d goog.string.toCamelCase(style);\n  if (element.style[camelStyle] \x3d\x3d\x3d undefined) {\n    var prefixedStyle \x3d goog.dom.vendor.getVendorJsPrefix() + goog.string.toTitleCase(camelStyle);\n    if (element.style[prefixedStyle] !\x3d\x3d undefined) {\n      return goog.dom.vendor.getVendorPrefix() + \x22-\x22 + style;\n    }\n  }\n  return style;\n};\ngoog.style.getStyle \x3d function(element, property) {\n  var styleValue \x3d element.style[goog.string.toCamelCase(property)];\n  if (typeof styleValue !\x3d\x3d \x22undefined\x22) {\n    return styleValue;\n  }\n  return element.style[goog.style.getVendorJsStyleName_(element, property)] || \x22\x22;\n};\ngoog.style.getComputedStyle \x3d function(element, property) {\n  var doc \x3d goog.dom.getOwnerDocument(element);\n  if (doc.defaultView \x26\x26 doc.defaultView.getComputedStyle) {\n    var styles \x3d doc.defaultView.getComputedStyle(element, null);\n    if (styles) {\n      return styles[property] || styles.getPropertyValue(property) || \x22\x22;\n    }\n  }\n  return \x22\x22;\n};\ngoog.style.getCascadedStyle \x3d function(element, style) {\n  return element.currentStyle ? element.currentStyle[style] : null;\n};\ngoog.style.getStyle_ \x3d function(element, style) {\n  return goog.style.getComputedStyle(element, style) || goog.style.getCascadedStyle(element, style) || element.style \x26\x26 element.style[style];\n};\ngoog.style.getComputedBoxSizing \x3d function(element) {\n  return goog.style.getStyle_(element, \x22boxSizing\x22) || goog.style.getStyle_(element, \x22MozBoxSizing\x22) || goog.style.getStyle_(element, \x22WebkitBoxSizing\x22) || null;\n};\ngoog.style.getComputedPosition \x3d function(element) {\n  return goog.style.getStyle_(element, \x22position\x22);\n};\ngoog.style.getBackgroundColor \x3d function(element) {\n  return goog.style.getStyle_(element, \x22backgroundColor\x22);\n};\ngoog.style.getComputedOverflowX \x3d function(element) {\n  return goog.style.getStyle_(element, \x22overflowX\x22);\n};\ngoog.style.getComputedOverflowY \x3d function(element) {\n  return goog.style.getStyle_(element, \x22overflowY\x22);\n};\ngoog.style.getComputedZIndex \x3d function(element) {\n  return goog.style.getStyle_(element, \x22zIndex\x22);\n};\ngoog.style.getComputedTextAlign \x3d function(element) {\n  return goog.style.getStyle_(element, \x22textAlign\x22);\n};\ngoog.style.getComputedCursor \x3d function(element) {\n  return goog.style.getStyle_(element, \x22cursor\x22);\n};\ngoog.style.getComputedTransform \x3d function(element) {\n  var property \x3d goog.style.getVendorStyleName_(element, \x22transform\x22);\n  return goog.style.getStyle_(element, property) || goog.style.getStyle_(element, \x22transform\x22);\n};\ngoog.style.setPosition \x3d function(el, arg1, opt_arg2) {\n  var x, y;\n  if (arg1 instanceof goog.math.Coordinate) {\n    x \x3d arg1.x;\n    y \x3d arg1.y;\n  } else {\n    x \x3d arg1;\n    y \x3d opt_arg2;\n  }\n  el.style.left \x3d goog.style.getPixelStyleValue_(x, false);\n  el.style.top \x3d goog.style.getPixelStyleValue_(y, false);\n};\ngoog.style.getPosition \x3d function(element) {\n  return new goog.math.Coordinate(element.offsetLeft, element.offsetTop);\n};\ngoog.style.getClientViewportElement \x3d function(opt_node) {\n  var doc;\n  if (opt_node) {\n    doc \x3d goog.dom.getOwnerDocument(opt_node);\n  } else {\n    doc \x3d goog.dom.getDocument();\n  }\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(9) \x26\x26 !goog.dom.getDomHelper(doc).isCss1CompatMode()) {\n    return doc.body;\n  }\n  return doc.documentElement;\n};\ngoog.style.getViewportPageOffset \x3d function(doc) {\n  var body \x3d doc.body;\n  var documentElement \x3d doc.documentElement;\n  var scrollLeft \x3d body.scrollLeft || documentElement.scrollLeft;\n  var scrollTop \x3d body.scrollTop || documentElement.scrollTop;\n  return new goog.math.Coordinate(scrollLeft, scrollTop);\n};\ngoog.style.getBoundingClientRect_ \x3d function(el) {\n  try {\n    return el.getBoundingClientRect();\n  } catch (e) {\n    return {\x22left\x22:0, \x22top\x22:0, \x22right\x22:0, \x22bottom\x22:0};\n  }\n};\ngoog.style.getOffsetParent \x3d function(element) {\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(8)) {\n    goog.asserts.assert(element \x26\x26 \x22offsetParent\x22 in element);\n    return element.offsetParent;\n  }\n  var doc \x3d goog.dom.getOwnerDocument(element);\n  var positionStyle \x3d goog.style.getStyle_(element, \x22position\x22);\n  var skipStatic \x3d positionStyle \x3d\x3d \x22fixed\x22 || positionStyle \x3d\x3d \x22absolute\x22;\n  for (var parent \x3d element.parentNode; parent \x26\x26 parent !\x3d doc; parent \x3d parent.parentNode) {\n    if (parent.nodeType \x3d\x3d goog.dom.NodeType.DOCUMENT_FRAGMENT \x26\x26 parent.host) {\n      parent \x3d parent.host;\n    }\n    positionStyle \x3d goog.style.getStyle_(parent, \x22position\x22);\n    skipStatic \x3d skipStatic \x26\x26 positionStyle \x3d\x3d \x22static\x22 \x26\x26 parent !\x3d doc.documentElement \x26\x26 parent !\x3d doc.body;\n    if (!skipStatic \x26\x26 (parent.scrollWidth \x3e parent.clientWidth || parent.scrollHeight \x3e parent.clientHeight || positionStyle \x3d\x3d \x22fixed\x22 || positionStyle \x3d\x3d \x22absolute\x22 || positionStyle \x3d\x3d \x22relative\x22)) {\n      return parent;\n    }\n  }\n  return null;\n};\ngoog.style.getVisibleRectForElement \x3d function(element) {\n  var visibleRect \x3d new goog.math.Box(0, Infinity, Infinity, 0);\n  var dom \x3d goog.dom.getDomHelper(element);\n  var body \x3d dom.getDocument().body;\n  var documentElement \x3d dom.getDocument().documentElement;\n  var scrollEl \x3d dom.getDocumentScrollElement();\n  for (var el \x3d element; el \x3d goog.style.getOffsetParent(el);) {\n    if ((!goog.userAgent.IE || el.clientWidth !\x3d 0) \x26\x26 (!goog.userAgent.WEBKIT || el.clientHeight !\x3d 0 || el !\x3d body) \x26\x26 (el !\x3d body \x26\x26 el !\x3d documentElement \x26\x26 goog.style.getStyle_(el, \x22overflow\x22) !\x3d \x22visible\x22)) {\n      var pos \x3d goog.style.getPageOffset(el);\n      var client \x3d goog.style.getClientLeftTop(el);\n      pos.x +\x3d client.x;\n      pos.y +\x3d client.y;\n      visibleRect.top \x3d Math.max(visibleRect.top, pos.y);\n      visibleRect.right \x3d Math.min(visibleRect.right, pos.x + el.clientWidth);\n      visibleRect.bottom \x3d Math.min(visibleRect.bottom, pos.y + el.clientHeight);\n      visibleRect.left \x3d Math.max(visibleRect.left, pos.x);\n    }\n  }\n  var scrollX \x3d scrollEl.scrollLeft, scrollY \x3d scrollEl.scrollTop;\n  visibleRect.left \x3d Math.max(visibleRect.left, scrollX);\n  visibleRect.top \x3d Math.max(visibleRect.top, scrollY);\n  var winSize \x3d dom.getViewportSize();\n  visibleRect.right \x3d Math.min(visibleRect.right, scrollX + winSize.width);\n  visibleRect.bottom \x3d Math.min(visibleRect.bottom, scrollY + winSize.height);\n  return visibleRect.top \x3e\x3d 0 \x26\x26 visibleRect.left \x3e\x3d 0 \x26\x26 visibleRect.bottom \x3e visibleRect.top \x26\x26 visibleRect.right \x3e visibleRect.left ? visibleRect : null;\n};\ngoog.style.getContainerOffsetToScrollInto \x3d function(element, opt_container, opt_center) {\n  var container \x3d opt_container || goog.dom.getDocumentScrollElement();\n  var elementPos \x3d goog.style.getPageOffset(element);\n  var containerPos \x3d goog.style.getPageOffset(container);\n  var containerBorder \x3d goog.style.getBorderBox(container);\n  if (container \x3d\x3d goog.dom.getDocumentScrollElement()) {\n    var relX \x3d elementPos.x - container.scrollLeft;\n    var relY \x3d elementPos.y - container.scrollTop;\n    if (goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(10)) {\n      relX +\x3d containerBorder.left;\n      relY +\x3d containerBorder.top;\n    }\n  } else {\n    var relX \x3d elementPos.x - containerPos.x - containerBorder.left;\n    var relY \x3d elementPos.y - containerPos.y - containerBorder.top;\n  }\n  var elementSize \x3d goog.style.getSizeWithDisplay_(element);\n  var spaceX \x3d container.clientWidth - elementSize.width;\n  var spaceY \x3d container.clientHeight - elementSize.height;\n  var scrollLeft \x3d container.scrollLeft;\n  var scrollTop \x3d container.scrollTop;\n  if (opt_center) {\n    scrollLeft +\x3d relX - spaceX / 2;\n    scrollTop +\x3d relY - spaceY / 2;\n  } else {\n    scrollLeft +\x3d Math.min(relX, Math.max(relX - spaceX, 0));\n    scrollTop +\x3d Math.min(relY, Math.max(relY - spaceY, 0));\n  }\n  return new goog.math.Coordinate(scrollLeft, scrollTop);\n};\ngoog.style.scrollIntoContainerView \x3d function(element, opt_container, opt_center) {\n  var container \x3d opt_container || goog.dom.getDocumentScrollElement();\n  var offset \x3d goog.style.getContainerOffsetToScrollInto(element, container, opt_center);\n  container.scrollLeft \x3d offset.x;\n  container.scrollTop \x3d offset.y;\n};\ngoog.style.getClientLeftTop \x3d function(el) {\n  return new goog.math.Coordinate(el.clientLeft, el.clientTop);\n};\ngoog.style.getPageOffset \x3d function(el) {\n  var doc \x3d goog.dom.getOwnerDocument(el);\n  goog.asserts.assertObject(el, \x22Parameter is required\x22);\n  var pos \x3d new goog.math.Coordinate(0, 0);\n  var viewportElement \x3d goog.style.getClientViewportElement(doc);\n  if (el \x3d\x3d viewportElement) {\n    return pos;\n  }\n  var box \x3d goog.style.getBoundingClientRect_(el);\n  var scrollCoord \x3d goog.dom.getDomHelper(doc).getDocumentScroll();\n  pos.x \x3d box.left + scrollCoord.x;\n  pos.y \x3d box.top + scrollCoord.y;\n  return pos;\n};\ngoog.style.getPageOffsetLeft \x3d function(el) {\n  return goog.style.getPageOffset(el).x;\n};\ngoog.style.getPageOffsetTop \x3d function(el) {\n  return goog.style.getPageOffset(el).y;\n};\ngoog.style.getFramedPageOffset \x3d function(el, relativeWin) {\n  var position \x3d new goog.math.Coordinate(0, 0);\n  var currentWin \x3d goog.dom.getWindow(goog.dom.getOwnerDocument(el));\n  if (!goog.reflect.canAccessProperty(currentWin, \x22parent\x22)) {\n    return position;\n  }\n  var currentEl \x3d el;\n  do {\n    var offset \x3d currentWin \x3d\x3d relativeWin ? goog.style.getPageOffset(currentEl) : goog.style.getClientPositionForElement_(goog.asserts.assert(currentEl));\n    position.x +\x3d offset.x;\n    position.y +\x3d offset.y;\n  } while (currentWin \x26\x26 currentWin !\x3d relativeWin \x26\x26 currentWin !\x3d currentWin.parent \x26\x26 (currentEl \x3d currentWin.frameElement) \x26\x26 (currentWin \x3d currentWin.parent));\n  return position;\n};\ngoog.style.translateRectForAnotherFrame \x3d function(rect, origBase, newBase) {\n  if (origBase.getDocument() !\x3d newBase.getDocument()) {\n    var body \x3d origBase.getDocument().body;\n    var pos \x3d goog.style.getFramedPageOffset(body, newBase.getWindow());\n    pos \x3d goog.math.Coordinate.difference(pos, goog.style.getPageOffset(body));\n    if (goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(9) \x26\x26 !origBase.isCss1CompatMode()) {\n      pos \x3d goog.math.Coordinate.difference(pos, origBase.getDocumentScroll());\n    }\n    rect.left +\x3d pos.x;\n    rect.top +\x3d pos.y;\n  }\n};\ngoog.style.getRelativePosition \x3d function(a, b) {\n  var ap \x3d goog.style.getClientPosition(a);\n  var bp \x3d goog.style.getClientPosition(b);\n  return new goog.math.Coordinate(ap.x - bp.x, ap.y - bp.y);\n};\ngoog.style.getClientPositionForElement_ \x3d function(el) {\n  var box \x3d goog.style.getBoundingClientRect_(el);\n  return new goog.math.Coordinate(box.left, box.top);\n};\ngoog.style.getClientPosition \x3d function(el) {\n  goog.asserts.assert(el);\n  if (el.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT) {\n    return goog.style.getClientPositionForElement_(el);\n  } else {\n    var targetEvent \x3d el.changedTouches ? el.changedTouches[0] : el;\n    return new goog.math.Coordinate(targetEvent.clientX, targetEvent.clientY);\n  }\n};\ngoog.style.setPageOffset \x3d function(el, x, opt_y) {\n  var cur \x3d goog.style.getPageOffset(el);\n  if (x instanceof goog.math.Coordinate) {\n    opt_y \x3d x.y;\n    x \x3d x.x;\n  }\n  var dx \x3d goog.asserts.assertNumber(x) - cur.x;\n  var dy \x3d Number(opt_y) - cur.y;\n  goog.style.setPosition(el, el.offsetLeft + dx, el.offsetTop + dy);\n};\ngoog.style.setSize \x3d function(element, w, opt_h) {\n  var h;\n  if (w instanceof goog.math.Size) {\n    h \x3d w.height;\n    w \x3d w.width;\n  } else {\n    if (opt_h \x3d\x3d undefined) {\n      throw new Error(\x22missing height argument\x22);\n    }\n    h \x3d opt_h;\n  }\n  goog.style.setWidth(element, w);\n  goog.style.setHeight(element, h);\n};\ngoog.style.getPixelStyleValue_ \x3d function(value, round) {\n  if (typeof value \x3d\x3d \x22number\x22) {\n    value \x3d (round ? Math.round(value) : value) + \x22px\x22;\n  }\n  return value;\n};\ngoog.style.setHeight \x3d function(element, height) {\n  element.style.height \x3d goog.style.getPixelStyleValue_(height, true);\n};\ngoog.style.setWidth \x3d function(element, width) {\n  element.style.width \x3d goog.style.getPixelStyleValue_(width, true);\n};\ngoog.style.getSize \x3d function(element) {\n  return goog.style.evaluateWithTemporaryDisplay_(goog.style.getSizeWithDisplay_, element);\n};\ngoog.style.evaluateWithTemporaryDisplay_ \x3d function(fn, element) {\n  if (goog.style.getStyle_(element, \x22display\x22) !\x3d \x22none\x22) {\n    return fn(element);\n  }\n  var style \x3d element.style;\n  var originalDisplay \x3d style.display;\n  var originalVisibility \x3d style.visibility;\n  var originalPosition \x3d style.position;\n  style.visibility \x3d \x22hidden\x22;\n  style.position \x3d \x22absolute\x22;\n  style.display \x3d \x22inline\x22;\n  var retVal \x3d fn(element);\n  style.display \x3d originalDisplay;\n  style.position \x3d originalPosition;\n  style.visibility \x3d originalVisibility;\n  return retVal;\n};\ngoog.style.getSizeWithDisplay_ \x3d function(element) {\n  var offsetWidth \x3d element.offsetWidth;\n  var offsetHeight \x3d element.offsetHeight;\n  var webkitOffsetsZero \x3d goog.userAgent.WEBKIT \x26\x26 !offsetWidth \x26\x26 !offsetHeight;\n  if ((offsetWidth \x3d\x3d\x3d undefined || webkitOffsetsZero) \x26\x26 element.getBoundingClientRect) {\n    var clientRect \x3d goog.style.getBoundingClientRect_(element);\n    return new goog.math.Size(clientRect.right - clientRect.left, clientRect.bottom - clientRect.top);\n  }\n  return new goog.math.Size(offsetWidth, offsetHeight);\n};\ngoog.style.getTransformedSize \x3d function(element) {\n  if (!element.getBoundingClientRect) {\n    return null;\n  }\n  var clientRect \x3d goog.style.evaluateWithTemporaryDisplay_(goog.style.getBoundingClientRect_, element);\n  return new goog.math.Size(clientRect.right - clientRect.left, clientRect.bottom - clientRect.top);\n};\ngoog.style.getBounds \x3d function(element) {\n  var o \x3d goog.style.getPageOffset(element);\n  var s \x3d goog.style.getSize(element);\n  return new goog.math.Rect(o.x, o.y, s.width, s.height);\n};\ngoog.style.toCamelCase \x3d function(selector) {\n  return goog.string.toCamelCase(String(selector));\n};\ngoog.style.toSelectorCase \x3d function(selector) {\n  return goog.string.toSelectorCase(selector);\n};\ngoog.style.getOpacity \x3d function(el) {\n  goog.asserts.assert(el);\n  var style \x3d el.style;\n  var result \x3d \x22\x22;\n  if (\x22opacity\x22 in style) {\n    result \x3d style.opacity;\n  } else {\n    if (\x22MozOpacity\x22 in style) {\n      result \x3d style.MozOpacity;\n    } else {\n      if (\x22filter\x22 in style) {\n        var match \x3d style.filter.match(/alpha\\(opacity\x3d([\\d.]+)\\)/);\n        if (match) {\n          result \x3d String(match[1] / 100);\n        }\n      }\n    }\n  }\n  return result \x3d\x3d \x22\x22 ? result : Number(result);\n};\ngoog.style.setOpacity \x3d function(el, alpha) {\n  goog.asserts.assert(el);\n  var style \x3d el.style;\n  if (\x22opacity\x22 in style) {\n    style.opacity \x3d alpha;\n  } else {\n    if (\x22MozOpacity\x22 in style) {\n      style.MozOpacity \x3d alpha;\n    } else {\n      if (\x22filter\x22 in style) {\n        if (alpha \x3d\x3d\x3d \x22\x22) {\n          style.filter \x3d \x22\x22;\n        } else {\n          style.filter \x3d \x22alpha(opacity\\x3d\x22 + Number(alpha) * 100 + \x22)\x22;\n        }\n      }\n    }\n  }\n};\ngoog.style.setTransparentBackgroundImage \x3d function(el, src) {\n  var style \x3d el.style;\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x228\x22)) {\n    style.filter \x3d \x22progid:DXImageTransform.Microsoft.AlphaImageLoader(\x22 + \x27src\\x3d\x22\x27 + src + \x27\x22, sizingMethod\\x3d\x22crop\x22)\x27;\n  } else {\n    style.backgroundImage \x3d \x22url(\x22 + src + \x22)\x22;\n    style.backgroundPosition \x3d \x22top left\x22;\n    style.backgroundRepeat \x3d \x22no-repeat\x22;\n  }\n};\ngoog.style.clearTransparentBackgroundImage \x3d function(el) {\n  var style \x3d el.style;\n  if (\x22filter\x22 in style) {\n    style.filter \x3d \x22\x22;\n  } else {\n    style.backgroundImage \x3d \x22none\x22;\n  }\n};\ngoog.style.showElement \x3d function(el, display) {\n  goog.style.setElementShown(el, display);\n};\ngoog.style.setElementShown \x3d function(el, isShown) {\n  el.style.display \x3d isShown ? \x22\x22 : \x22none\x22;\n};\ngoog.style.isElementShown \x3d function(el) {\n  return el.style.display !\x3d \x22none\x22;\n};\ngoog.style.installSafeStyleSheet \x3d function(safeStyleSheet, opt_node) {\n  var dh \x3d goog.dom.getDomHelper(opt_node);\n  var doc \x3d dh.getDocument();\n  if (goog.userAgent.IE \x26\x26 doc.createStyleSheet) {\n    var styleSheet \x3d doc.createStyleSheet();\n    goog.style.setSafeStyleSheet(styleSheet, safeStyleSheet);\n    return styleSheet;\n  } else {\n    var head \x3d dh.getElementsByTagNameAndClass(goog.dom.TagName.HEAD)[0];\n    if (!head) {\n      var body \x3d dh.getElementsByTagNameAndClass(goog.dom.TagName.BODY)[0];\n      head \x3d dh.createDom(goog.dom.TagName.HEAD);\n      body.parentNode.insertBefore(head, body);\n    }\n    var el \x3d dh.createDom(goog.dom.TagName.STYLE);\n    var nonce \x3d goog.getScriptNonce();\n    if (nonce) {\n      el.setAttribute(\x22nonce\x22, nonce);\n    }\n    goog.style.setSafeStyleSheet(el, safeStyleSheet);\n    dh.appendChild(head, el);\n    return el;\n  }\n};\ngoog.style.uninstallStyles \x3d function(styleSheet) {\n  var node \x3d styleSheet.ownerNode || styleSheet.owningElement || styleSheet;\n  goog.dom.removeNode(node);\n};\ngoog.style.setSafeStyleSheet \x3d function(element, safeStyleSheet) {\n  var stylesString \x3d goog.html.SafeStyleSheet.unwrap(safeStyleSheet);\n  if (goog.userAgent.IE \x26\x26 element.cssText !\x3d\x3d undefined) {\n    element.cssText \x3d stylesString;\n  } else {\n    if (goog.global.trustedTypes) {\n      goog.dom.setTextContent(element, stylesString);\n    } else {\n      element.innerHTML \x3d stylesString;\n    }\n  }\n};\ngoog.style.setPreWrap \x3d function(el) {\n  var style \x3d el.style;\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x228\x22)) {\n    style.whiteSpace \x3d \x22pre\x22;\n    style.wordWrap \x3d \x22break-word\x22;\n  } else {\n    if (goog.userAgent.GECKO) {\n      style.whiteSpace \x3d \x22-moz-pre-wrap\x22;\n    } else {\n      style.whiteSpace \x3d \x22pre-wrap\x22;\n    }\n  }\n};\ngoog.style.setInlineBlock \x3d function(el) {\n  var style \x3d el.style;\n  style.position \x3d \x22relative\x22;\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x228\x22)) {\n    style.zoom \x3d \x221\x22;\n    style.display \x3d \x22inline\x22;\n  } else {\n    style.display \x3d \x22inline-block\x22;\n  }\n};\ngoog.style.isRightToLeft \x3d function(el) {\n  return \x22rtl\x22 \x3d\x3d goog.style.getStyle_(el, \x22direction\x22);\n};\ngoog.style.unselectableStyle_ \x3d goog.userAgent.GECKO ? \x22MozUserSelect\x22 : goog.userAgent.WEBKIT || goog.userAgent.EDGE ? \x22WebkitUserSelect\x22 : null;\ngoog.style.isUnselectable \x3d function(el) {\n  if (goog.style.unselectableStyle_) {\n    return el.style[goog.style.unselectableStyle_].toLowerCase() \x3d\x3d \x22none\x22;\n  } else {\n    if (goog.userAgent.IE || goog.userAgent.OPERA) {\n      return el.getAttribute(\x22unselectable\x22) \x3d\x3d \x22on\x22;\n    }\n  }\n  return false;\n};\ngoog.style.setUnselectable \x3d function(el, unselectable, opt_noRecurse) {\n  var descendants \x3d !opt_noRecurse ? el.getElementsByTagName(\x22*\x22) : null;\n  var name \x3d goog.style.unselectableStyle_;\n  if (name) {\n    var value \x3d unselectable ? \x22none\x22 : \x22\x22;\n    if (el.style) {\n      el.style[name] \x3d value;\n    }\n    if (descendants) {\n      for (var i \x3d 0, descendant; descendant \x3d descendants[i]; i++) {\n        if (descendant.style) {\n          descendant.style[name] \x3d value;\n        }\n      }\n    }\n  } else {\n    if (goog.userAgent.IE || goog.userAgent.OPERA) {\n      var value \x3d unselectable ? \x22on\x22 : \x22\x22;\n      el.setAttribute(\x22unselectable\x22, value);\n      if (descendants) {\n        for (var i \x3d 0, descendant; descendant \x3d descendants[i]; i++) {\n          descendant.setAttribute(\x22unselectable\x22, value);\n        }\n      }\n    }\n  }\n};\ngoog.style.getBorderBoxSize \x3d function(element) {\n  return new goog.math.Size(element.offsetWidth, element.offsetHeight);\n};\ngoog.style.setBorderBoxSize \x3d function(element, size) {\n  var doc \x3d goog.dom.getOwnerDocument(element);\n  var isCss1CompatMode \x3d goog.dom.getDomHelper(doc).isCss1CompatMode();\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x2210\x22) \x26\x26 (!isCss1CompatMode || !goog.userAgent.isVersionOrHigher(\x228\x22))) {\n    var style \x3d element.style;\n    if (isCss1CompatMode) {\n      var paddingBox \x3d goog.style.getPaddingBox(element);\n      var borderBox \x3d goog.style.getBorderBox(element);\n      style.pixelWidth \x3d size.width - borderBox.left - paddingBox.left - paddingBox.right - borderBox.right;\n      style.pixelHeight \x3d size.height - borderBox.top - paddingBox.top - paddingBox.bottom - borderBox.bottom;\n    } else {\n      style.pixelWidth \x3d size.width;\n      style.pixelHeight \x3d size.height;\n    }\n  } else {\n    goog.style.setBoxSizingSize_(element, size, \x22border-box\x22);\n  }\n};\ngoog.style.getContentBoxSize \x3d function(element) {\n  var doc \x3d goog.dom.getOwnerDocument(element);\n  var ieCurrentStyle \x3d goog.userAgent.IE \x26\x26 element.currentStyle;\n  if (ieCurrentStyle \x26\x26 goog.dom.getDomHelper(doc).isCss1CompatMode() \x26\x26 ieCurrentStyle.width !\x3d \x22auto\x22 \x26\x26 ieCurrentStyle.height !\x3d \x22auto\x22 \x26\x26 !ieCurrentStyle.boxSizing) {\n    var width \x3d goog.style.getIePixelValue_(element, ieCurrentStyle.width, \x22width\x22, \x22pixelWidth\x22);\n    var height \x3d goog.style.getIePixelValue_(element, ieCurrentStyle.height, \x22height\x22, \x22pixelHeight\x22);\n    return new goog.math.Size(width, height);\n  } else {\n    var borderBoxSize \x3d goog.style.getBorderBoxSize(element);\n    var paddingBox \x3d goog.style.getPaddingBox(element);\n    var borderBox \x3d goog.style.getBorderBox(element);\n    return new goog.math.Size(borderBoxSize.width - borderBox.left - paddingBox.left - paddingBox.right - borderBox.right, borderBoxSize.height - borderBox.top - paddingBox.top - paddingBox.bottom - borderBox.bottom);\n  }\n};\ngoog.style.setContentBoxSize \x3d function(element, size) {\n  var doc \x3d goog.dom.getOwnerDocument(element);\n  var isCss1CompatMode \x3d goog.dom.getDomHelper(doc).isCss1CompatMode();\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isVersionOrHigher(\x2210\x22) \x26\x26 (!isCss1CompatMode || !goog.userAgent.isVersionOrHigher(\x228\x22))) {\n    var style \x3d element.style;\n    if (isCss1CompatMode) {\n      style.pixelWidth \x3d size.width;\n      style.pixelHeight \x3d size.height;\n    } else {\n      var paddingBox \x3d goog.style.getPaddingBox(element);\n      var borderBox \x3d goog.style.getBorderBox(element);\n      style.pixelWidth \x3d size.width + borderBox.left + paddingBox.left + paddingBox.right + borderBox.right;\n      style.pixelHeight \x3d size.height + borderBox.top + paddingBox.top + paddingBox.bottom + borderBox.bottom;\n    }\n  } else {\n    goog.style.setBoxSizingSize_(element, size, \x22content-box\x22);\n  }\n};\ngoog.style.setBoxSizingSize_ \x3d function(element, size, boxSizing) {\n  var style \x3d element.style;\n  if (goog.userAgent.GECKO) {\n    style.MozBoxSizing \x3d boxSizing;\n  } else {\n    if (goog.userAgent.WEBKIT) {\n      style.WebkitBoxSizing \x3d boxSizing;\n    } else {\n      style.boxSizing \x3d boxSizing;\n    }\n  }\n  style.width \x3d Math.max(size.width, 0) + \x22px\x22;\n  style.height \x3d Math.max(size.height, 0) + \x22px\x22;\n};\ngoog.style.getIePixelValue_ \x3d function(element, value, name, pixelName) {\n  if (/^\\d+px?$/.test(value)) {\n    return parseInt(value, 10);\n  } else {\n    var oldStyleValue \x3d element.style[name];\n    var oldRuntimeValue \x3d element.runtimeStyle[name];\n    element.runtimeStyle[name] \x3d element.currentStyle[name];\n    element.style[name] \x3d value;\n    var pixelValue \x3d element.style[pixelName];\n    element.style[name] \x3d oldStyleValue;\n    element.runtimeStyle[name] \x3d oldRuntimeValue;\n    return +pixelValue;\n  }\n};\ngoog.style.getIePixelDistance_ \x3d function(element, propName) {\n  var value \x3d goog.style.getCascadedStyle(element, propName);\n  return value ? goog.style.getIePixelValue_(element, value, \x22left\x22, \x22pixelLeft\x22) : 0;\n};\ngoog.style.getBox_ \x3d function(element, stylePrefix) {\n  if (goog.userAgent.IE) {\n    var left \x3d goog.style.getIePixelDistance_(element, stylePrefix + \x22Left\x22);\n    var right \x3d goog.style.getIePixelDistance_(element, stylePrefix + \x22Right\x22);\n    var top \x3d goog.style.getIePixelDistance_(element, stylePrefix + \x22Top\x22);\n    var bottom \x3d goog.style.getIePixelDistance_(element, stylePrefix + \x22Bottom\x22);\n    return new goog.math.Box(top, right, bottom, left);\n  } else {\n    var left \x3d goog.style.getComputedStyle(element, stylePrefix + \x22Left\x22);\n    var right \x3d goog.style.getComputedStyle(element, stylePrefix + \x22Right\x22);\n    var top \x3d goog.style.getComputedStyle(element, stylePrefix + \x22Top\x22);\n    var bottom \x3d goog.style.getComputedStyle(element, stylePrefix + \x22Bottom\x22);\n    return new goog.math.Box(parseFloat(top), parseFloat(right), parseFloat(bottom), parseFloat(left));\n  }\n};\ngoog.style.getPaddingBox \x3d function(element) {\n  return goog.style.getBox_(element, \x22padding\x22);\n};\ngoog.style.getMarginBox \x3d function(element) {\n  return goog.style.getBox_(element, \x22margin\x22);\n};\ngoog.style.ieBorderWidthKeywords_ \x3d {\x22thin\x22:2, \x22medium\x22:4, \x22thick\x22:6};\ngoog.style.getIePixelBorder_ \x3d function(element, prop) {\n  if (goog.style.getCascadedStyle(element, prop + \x22Style\x22) \x3d\x3d \x22none\x22) {\n    return 0;\n  }\n  var width \x3d goog.style.getCascadedStyle(element, prop + \x22Width\x22);\n  if (width in goog.style.ieBorderWidthKeywords_) {\n    return goog.style.ieBorderWidthKeywords_[width];\n  }\n  return goog.style.getIePixelValue_(element, width, \x22left\x22, \x22pixelLeft\x22);\n};\ngoog.style.getBorderBox \x3d function(element) {\n  if (goog.userAgent.IE \x26\x26 !goog.userAgent.isDocumentModeOrHigher(9)) {\n    var left \x3d goog.style.getIePixelBorder_(element, \x22borderLeft\x22);\n    var right \x3d goog.style.getIePixelBorder_(element, \x22borderRight\x22);\n    var top \x3d goog.style.getIePixelBorder_(element, \x22borderTop\x22);\n    var bottom \x3d goog.style.getIePixelBorder_(element, \x22borderBottom\x22);\n    return new goog.math.Box(top, right, bottom, left);\n  } else {\n    var left \x3d goog.style.getComputedStyle(element, \x22borderLeftWidth\x22);\n    var right \x3d goog.style.getComputedStyle(element, \x22borderRightWidth\x22);\n    var top \x3d goog.style.getComputedStyle(element, \x22borderTopWidth\x22);\n    var bottom \x3d goog.style.getComputedStyle(element, \x22borderBottomWidth\x22);\n    return new goog.math.Box(parseFloat(top), parseFloat(right), parseFloat(bottom), parseFloat(left));\n  }\n};\ngoog.style.getFontFamily \x3d function(el) {\n  var doc \x3d goog.dom.getOwnerDocument(el);\n  var font \x3d \x22\x22;\n  if (doc.body.createTextRange \x26\x26 goog.dom.contains(doc, el)) {\n    var range \x3d doc.body.createTextRange();\n    range.moveToElementText(el);\n    try {\n      font \x3d range.queryCommandValue(\x22FontName\x22);\n    } catch (e) {\n      font \x3d \x22\x22;\n    }\n  }\n  if (!font) {\n    font \x3d goog.style.getStyle_(el, \x22fontFamily\x22);\n  }\n  var fontsArray \x3d font.split(\x22,\x22);\n  if (fontsArray.length \x3e 1) {\n    font \x3d fontsArray[0];\n  }\n  return goog.string.stripQuotes(font, \x22\\\x22\x27\x22);\n};\ngoog.style.lengthUnitRegex_ \x3d /[^\\d]+$/;\ngoog.style.getLengthUnits \x3d function(value) {\n  var units \x3d value.match(goog.style.lengthUnitRegex_);\n  return units \x26\x26 units[0] || null;\n};\ngoog.style.ABSOLUTE_CSS_LENGTH_UNITS_ \x3d {\x22cm\x22:1, \x22in\x22:1, \x22mm\x22:1, \x22pc\x22:1, \x22pt\x22:1};\ngoog.style.CONVERTIBLE_RELATIVE_CSS_UNITS_ \x3d {\x22em\x22:1, \x22ex\x22:1};\ngoog.style.getFontSize \x3d function(el) {\n  var fontSize \x3d goog.style.getStyle_(el, \x22fontSize\x22);\n  var sizeUnits \x3d goog.style.getLengthUnits(fontSize);\n  if (fontSize \x26\x26 \x22px\x22 \x3d\x3d sizeUnits) {\n    return parseInt(fontSize, 10);\n  }\n  if (goog.userAgent.IE) {\n    if (String(sizeUnits) in goog.style.ABSOLUTE_CSS_LENGTH_UNITS_) {\n      return goog.style.getIePixelValue_(el, fontSize, \x22left\x22, \x22pixelLeft\x22);\n    } else {\n      if (el.parentNode \x26\x26 el.parentNode.nodeType \x3d\x3d goog.dom.NodeType.ELEMENT \x26\x26 String(sizeUnits) in goog.style.CONVERTIBLE_RELATIVE_CSS_UNITS_) {\n        var parentElement \x3d el.parentNode;\n        var parentSize \x3d goog.style.getStyle_(parentElement, \x22fontSize\x22);\n        return goog.style.getIePixelValue_(parentElement, fontSize \x3d\x3d parentSize ? \x221em\x22 : fontSize, \x22left\x22, \x22pixelLeft\x22);\n      }\n    }\n  }\n  var sizeElement \x3d goog.dom.createDom(goog.dom.TagName.SPAN, {\x22style\x22:\x22visibility:hidden;position:absolute;\x22 + \x22line-height:0;padding:0;margin:0;border:0;height:1em;\x22});\n  goog.dom.appendChild(el, sizeElement);\n  fontSize \x3d sizeElement.offsetHeight;\n  goog.dom.removeNode(sizeElement);\n  return fontSize;\n};\ngoog.style.parseStyleAttribute \x3d function(value) {\n  var result \x3d {};\n  goog.array.forEach(value.split(/\\s*;\\s*/), function(pair) {\n    var keyValue \x3d pair.match(/\\s*([\\w-]+)\\s*:(.+)/);\n    if (keyValue) {\n      var styleName \x3d keyValue[1];\n      var styleValue \x3d goog.string.trim(keyValue[2]);\n      result[goog.string.toCamelCase(styleName.toLowerCase())] \x3d styleValue;\n    }\n  });\n  return result;\n};\ngoog.style.toStyleAttribute \x3d function(obj) {\n  var buffer \x3d [];\n  goog.object.forEach(obj, function(value, key) {\n    buffer.push(goog.string.toSelectorCase(key), \x22:\x22, value, \x22;\x22);\n  });\n  return buffer.join(\x22\x22);\n};\ngoog.style.setFloat \x3d function(el, value) {\n  el.style[goog.userAgent.IE ? \x22styleFloat\x22 : \x22cssFloat\x22] \x3d value;\n};\ngoog.style.getFloat \x3d function(el) {\n  return el.style[goog.userAgent.IE ? \x22styleFloat\x22 : \x22cssFloat\x22] || \x22\x22;\n};\ngoog.style.getScrollbarWidth \x3d function(opt_className) {\n  var outerDiv \x3d goog.dom.createElement(goog.dom.TagName.DIV);\n  if (opt_className) {\n    outerDiv.className \x3d opt_className;\n  }\n  outerDiv.style.cssText \x3d \x22overflow:auto;\x22 + \x22position:absolute;top:0;width:100px;height:100px\x22;\n  var innerDiv \x3d goog.dom.createElement(goog.dom.TagName.DIV);\n  goog.style.setSize(innerDiv, \x22200px\x22, \x22200px\x22);\n  outerDiv.appendChild(innerDiv);\n  goog.dom.appendChild(goog.dom.getDocument().body, outerDiv);\n  var width \x3d outerDiv.offsetWidth - outerDiv.clientWidth;\n  goog.dom.removeNode(outerDiv);\n  return width;\n};\ngoog.style.MATRIX_TRANSLATION_REGEX_ \x3d new RegExp(\x22matrix\\\\([0-9\\\\.\\\\-]+, [0-9\\\\.\\\\-]+, \x22 + \x22[0-9\\\\.\\\\-]+, [0-9\\\\.\\\\-]+, \x22 + \x22([0-9\\\\.\\\\-]+)p?x?, ([0-9\\\\.\\\\-]+)p?x?\\\\)\x22);\ngoog.style.getCssTranslation \x3d function(element) {\n  var transform \x3d goog.style.getComputedTransform(element);\n  if (!transform) {\n    return new goog.math.Coordinate(0, 0);\n  }\n  var matches \x3d transform.match(goog.style.MATRIX_TRANSLATION_REGEX_);\n  if (!matches) {\n    return new goog.math.Coordinate(0, 0);\n  }\n  return new goog.math.Coordinate(parseFloat(matches[1]), parseFloat(matches[2]));\n};\n");
SHADOW_ENV.evalLoad("goog.style.transition.js", true , "goog.provide(\x22goog.style.transition\x22);\ngoog.provide(\x22goog.style.transition.Css3Property\x22);\ngoog.require(\x22goog.array\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.require(\x22goog.dom\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.dom.safe\x22);\ngoog.require(\x22goog.dom.vendor\x22);\ngoog.require(\x22goog.functions\x22);\ngoog.require(\x22goog.html.SafeHtml\x22);\ngoog.require(\x22goog.style\x22);\ngoog.require(\x22goog.userAgent\x22);\ngoog.style.transition.Css3Property;\ngoog.style.transition.set \x3d function(element, properties) {\n  if (!Array.isArray(properties)) {\n    properties \x3d [properties];\n  }\n  goog.asserts.assert(properties.length \x3e 0, \x22At least one Css3Property should be specified.\x22);\n  var values \x3d goog.array.map(properties, function(p) {\n    if (typeof p \x3d\x3d\x3d \x22string\x22) {\n      return p;\n    } else {\n      goog.asserts.assertObject(p, \x22Expected css3 property to be an object.\x22);\n      var propString \x3d p.property + \x22 \x22 + p.duration + \x22s \x22 + p.timing + \x22 \x22 + p.delay + \x22s\x22;\n      goog.asserts.assert(p.property \x26\x26 typeof p.duration \x3d\x3d\x3d \x22number\x22 \x26\x26 p.timing \x26\x26 typeof p.delay \x3d\x3d\x3d \x22number\x22, \x22Unexpected css3 property value: %s\x22, propString);\n      return propString;\n    }\n  });\n  goog.style.transition.setPropertyValue_(element, values.join(\x22,\x22));\n};\ngoog.style.transition.removeAll \x3d function(element) {\n  goog.style.transition.setPropertyValue_(element, \x22\x22);\n};\ngoog.style.transition.isSupported \x3d goog.functions.cacheReturnValue(function() {\n  if (goog.userAgent.IE) {\n    return goog.userAgent.isVersionOrHigher(\x2210.0\x22);\n  }\n  var el \x3d goog.dom.createElement(goog.dom.TagName.DIV);\n  var transition \x3d \x22opacity 1s linear\x22;\n  var vendorPrefix \x3d goog.dom.vendor.getVendorPrefix();\n  var style \x3d {\x22transition\x22:transition};\n  if (vendorPrefix) {\n    style[vendorPrefix + \x22-transition\x22] \x3d transition;\n  }\n  goog.dom.safe.setInnerHtml(el, goog.html.SafeHtml.create(\x22div\x22, {\x22style\x22:style}));\n  var testElement \x3d el.firstChild;\n  goog.asserts.assert(testElement.nodeType \x3d\x3d Node.ELEMENT_NODE);\n  return goog.style.getStyle(testElement, \x22transition\x22) !\x3d \x22\x22;\n});\ngoog.style.transition.setPropertyValue_ \x3d function(element, transitionValue) {\n  goog.style.setStyle(element, \x22transition\x22, transitionValue);\n};\n");
SHADOW_ENV.evalLoad("cljs.core.async.impl.protocols.js", true , "goog.provide(\x27cljs.core.async.impl.protocols\x27);\ncljs.core.async.impl.protocols.MAX_QUEUE_SIZE \x3d (1024);\n\n/**\n * @interface\n */\ncljs.core.async.impl.protocols.ReadPort \x3d function(){};\n\nvar cljs$core$async$impl$protocols$ReadPort$take_BANG_$dyn_39790 \x3d (function (port,fn1_handler){\nvar x__4463__auto__ \x3d (((port \x3d\x3d null))?null:port);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.take_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(port,fn1_handler) : m__4464__auto__.call(null,port,fn1_handler));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.take_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(port,fn1_handler) : m__4461__auto__.call(null,port,fn1_handler));\n} else {\nthrow cljs.core.missing_protocol(\x22ReadPort.take!\x22,port);\n}\n}\n});\n/**\n * derefable val if taken, nil if take was enqueued\n */\ncljs.core.async.impl.protocols.take_BANG_ \x3d (function cljs$core$async$impl$protocols$take_BANG_(port,fn1_handler){\nif((((!((port \x3d\x3d null)))) \x26\x26 ((!((port.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2 \x3d\x3d null)))))){\nreturn port.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2(port,fn1_handler);\n} else {\nreturn cljs$core$async$impl$protocols$ReadPort$take_BANG_$dyn_39790(port,fn1_handler);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.core.async.impl.protocols.WritePort \x3d function(){};\n\nvar cljs$core$async$impl$protocols$WritePort$put_BANG_$dyn_39796 \x3d (function (port,val,fn1_handler){\nvar x__4463__auto__ \x3d (((port \x3d\x3d null))?null:port);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.put_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(port,val,fn1_handler) : m__4464__auto__.call(null,port,val,fn1_handler));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.put_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(port,val,fn1_handler) : m__4461__auto__.call(null,port,val,fn1_handler));\n} else {\nthrow cljs.core.missing_protocol(\x22WritePort.put!\x22,port);\n}\n}\n});\n/**\n * derefable boolean (false if already closed) if handled, nil if put was enqueued.\n *                             Must throw on nil val.\n */\ncljs.core.async.impl.protocols.put_BANG_ \x3d (function cljs$core$async$impl$protocols$put_BANG_(port,val,fn1_handler){\nif((((!((port \x3d\x3d null)))) \x26\x26 ((!((port.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3 \x3d\x3d null)))))){\nreturn port.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3(port,val,fn1_handler);\n} else {\nreturn cljs$core$async$impl$protocols$WritePort$put_BANG_$dyn_39796(port,val,fn1_handler);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.core.async.impl.protocols.Channel \x3d function(){};\n\nvar cljs$core$async$impl$protocols$Channel$close_BANG_$dyn_39801 \x3d (function (chan){\nvar x__4463__auto__ \x3d (((chan \x3d\x3d null))?null:chan);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.close_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(chan) : m__4464__auto__.call(null,chan));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.close_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(chan) : m__4461__auto__.call(null,chan));\n} else {\nthrow cljs.core.missing_protocol(\x22Channel.close!\x22,chan);\n}\n}\n});\ncljs.core.async.impl.protocols.close_BANG_ \x3d (function cljs$core$async$impl$protocols$close_BANG_(chan){\nif((((!((chan \x3d\x3d null)))) \x26\x26 ((!((chan.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1 \x3d\x3d null)))))){\nreturn chan.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1(chan);\n} else {\nreturn cljs$core$async$impl$protocols$Channel$close_BANG_$dyn_39801(chan);\n}\n});\n\nvar cljs$core$async$impl$protocols$Channel$closed_QMARK_$dyn_39808 \x3d (function (chan){\nvar x__4463__auto__ \x3d (((chan \x3d\x3d null))?null:chan);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.closed_QMARK_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(chan) : m__4464__auto__.call(null,chan));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.closed_QMARK_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(chan) : m__4461__auto__.call(null,chan));\n} else {\nthrow cljs.core.missing_protocol(\x22Channel.closed?\x22,chan);\n}\n}\n});\ncljs.core.async.impl.protocols.closed_QMARK_ \x3d (function cljs$core$async$impl$protocols$closed_QMARK_(chan){\nif((((!((chan \x3d\x3d null)))) \x26\x26 ((!((chan.cljs$core$async$impl$protocols$Channel$closed_QMARK_$arity$1 \x3d\x3d null)))))){\nreturn chan.cljs$core$async$impl$protocols$Channel$closed_QMARK_$arity$1(chan);\n} else {\nreturn cljs$core$async$impl$protocols$Channel$closed_QMARK_$dyn_39808(chan);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.core.async.impl.protocols.Handler \x3d function(){};\n\nvar cljs$core$async$impl$protocols$Handler$active_QMARK_$dyn_39809 \x3d (function (h){\nvar x__4463__auto__ \x3d (((h \x3d\x3d null))?null:h);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.active_QMARK_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(h) : m__4464__auto__.call(null,h));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.active_QMARK_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(h) : m__4461__auto__.call(null,h));\n} else {\nthrow cljs.core.missing_protocol(\x22Handler.active?\x22,h);\n}\n}\n});\n/**\n * returns true if has callback. Must work w/o lock\n */\ncljs.core.async.impl.protocols.active_QMARK_ \x3d (function cljs$core$async$impl$protocols$active_QMARK_(h){\nif((((!((h \x3d\x3d null)))) \x26\x26 ((!((h.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 \x3d\x3d null)))))){\nreturn h.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(h);\n} else {\nreturn cljs$core$async$impl$protocols$Handler$active_QMARK_$dyn_39809(h);\n}\n});\n\nvar cljs$core$async$impl$protocols$Handler$blockable_QMARK_$dyn_39813 \x3d (function (h){\nvar x__4463__auto__ \x3d (((h \x3d\x3d null))?null:h);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.blockable_QMARK_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(h) : m__4464__auto__.call(null,h));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.blockable_QMARK_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(h) : m__4461__auto__.call(null,h));\n} else {\nthrow cljs.core.missing_protocol(\x22Handler.blockable?\x22,h);\n}\n}\n});\n/**\n * returns true if this handler may be blocked, otherwise it must not block\n */\ncljs.core.async.impl.protocols.blockable_QMARK_ \x3d (function cljs$core$async$impl$protocols$blockable_QMARK_(h){\nif((((!((h \x3d\x3d null)))) \x26\x26 ((!((h.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 \x3d\x3d null)))))){\nreturn h.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1(h);\n} else {\nreturn cljs$core$async$impl$protocols$Handler$blockable_QMARK_$dyn_39813(h);\n}\n});\n\nvar cljs$core$async$impl$protocols$Handler$commit$dyn_39817 \x3d (function (h){\nvar x__4463__auto__ \x3d (((h \x3d\x3d null))?null:h);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.commit[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(h) : m__4464__auto__.call(null,h));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.commit[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(h) : m__4461__auto__.call(null,h));\n} else {\nthrow cljs.core.missing_protocol(\x22Handler.commit\x22,h);\n}\n}\n});\n/**\n * commit to fulfilling its end of the transfer, returns cb. Must be called within lock\n */\ncljs.core.async.impl.protocols.commit \x3d (function cljs$core$async$impl$protocols$commit(h){\nif((((!((h \x3d\x3d null)))) \x26\x26 ((!((h.cljs$core$async$impl$protocols$Handler$commit$arity$1 \x3d\x3d null)))))){\nreturn h.cljs$core$async$impl$protocols$Handler$commit$arity$1(h);\n} else {\nreturn cljs$core$async$impl$protocols$Handler$commit$dyn_39817(h);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.core.async.impl.protocols.Buffer \x3d function(){};\n\nvar cljs$core$async$impl$protocols$Buffer$full_QMARK_$dyn_39825 \x3d (function (b){\nvar x__4463__auto__ \x3d (((b \x3d\x3d null))?null:b);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.full_QMARK_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(b) : m__4464__auto__.call(null,b));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.full_QMARK_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(b) : m__4461__auto__.call(null,b));\n} else {\nthrow cljs.core.missing_protocol(\x22Buffer.full?\x22,b);\n}\n}\n});\n/**\n * returns true if buffer cannot accept put\n */\ncljs.core.async.impl.protocols.full_QMARK_ \x3d (function cljs$core$async$impl$protocols$full_QMARK_(b){\nif((((!((b \x3d\x3d null)))) \x26\x26 ((!((b.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1 \x3d\x3d null)))))){\nreturn b.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1(b);\n} else {\nreturn cljs$core$async$impl$protocols$Buffer$full_QMARK_$dyn_39825(b);\n}\n});\n\nvar cljs$core$async$impl$protocols$Buffer$remove_BANG_$dyn_39840 \x3d (function (b){\nvar x__4463__auto__ \x3d (((b \x3d\x3d null))?null:b);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.remove_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(b) : m__4464__auto__.call(null,b));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.remove_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(b) : m__4461__auto__.call(null,b));\n} else {\nthrow cljs.core.missing_protocol(\x22Buffer.remove!\x22,b);\n}\n}\n});\n/**\n * remove and return next item from buffer, called under chan mutex\n */\ncljs.core.async.impl.protocols.remove_BANG_ \x3d (function cljs$core$async$impl$protocols$remove_BANG_(b){\nif((((!((b \x3d\x3d null)))) \x26\x26 ((!((b.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1 \x3d\x3d null)))))){\nreturn b.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1(b);\n} else {\nreturn cljs$core$async$impl$protocols$Buffer$remove_BANG_$dyn_39840(b);\n}\n});\n\nvar cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$dyn_39853 \x3d (function (b,itm){\nvar x__4463__auto__ \x3d (((b \x3d\x3d null))?null:b);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.add_BANG__STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(b,itm) : m__4464__auto__.call(null,b,itm));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.add_BANG__STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(b,itm) : m__4461__auto__.call(null,b,itm));\n} else {\nthrow cljs.core.missing_protocol(\x22Buffer.add!*\x22,b);\n}\n}\n});\n/**\n * if room, add item to the buffer, returns b, called under chan mutex\n */\ncljs.core.async.impl.protocols.add_BANG__STAR_ \x3d (function cljs$core$async$impl$protocols$add_BANG__STAR_(b,itm){\nif((((!((b \x3d\x3d null)))) \x26\x26 ((!((b.cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$arity$2 \x3d\x3d null)))))){\nreturn b.cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$arity$2(b,itm);\n} else {\nreturn cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$dyn_39853(b,itm);\n}\n});\n\nvar cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$dyn_39873 \x3d (function (b){\nvar x__4463__auto__ \x3d (((b \x3d\x3d null))?null:b);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.protocols.close_buf_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(b) : m__4464__auto__.call(null,b));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.protocols.close_buf_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(b) : m__4461__auto__.call(null,b));\n} else {\nthrow cljs.core.missing_protocol(\x22Buffer.close-buf!\x22,b);\n}\n}\n});\n/**\n * called on chan closed under chan mutex, return ignored\n */\ncljs.core.async.impl.protocols.close_buf_BANG_ \x3d (function cljs$core$async$impl$protocols$close_buf_BANG_(b){\nif((((!((b \x3d\x3d null)))) \x26\x26 ((!((b.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1 \x3d\x3d null)))))){\nreturn b.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1(b);\n} else {\nreturn cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$dyn_39873(b);\n}\n});\n\ncljs.core.async.impl.protocols.add_BANG_ \x3d (function cljs$core$async$impl$protocols$add_BANG_(var_args){\nvar G__39785 \x3d arguments.length;\nswitch (G__39785) {\ncase 1:\nreturn cljs.core.async.impl.protocols.add_BANG_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.impl.protocols.add_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.impl.protocols.add_BANG_.cljs$core$IFn$_invoke$arity$1 \x3d (function (b){\nreturn b;\n}));\n\n(cljs.core.async.impl.protocols.add_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (b,itm){\nif((!((itm \x3d\x3d null)))){\n} else {\nthrow (new Error(\x22Assert failed: (not (nil? itm))\x22));\n}\n\nreturn cljs.core.async.impl.protocols.add_BANG__STAR_(b,itm);\n}));\n\n(cljs.core.async.impl.protocols.add_BANG_.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n * @interface\n */\ncljs.core.async.impl.protocols.UnblockingBuffer \x3d function(){};\n\n");
SHADOW_ENV.evalLoad("cljs.core.async.impl.buffers.js", true , "goog.provide(\x27cljs.core.async.impl.buffers\x27);\ncljs.core.async.impl.buffers.acopy \x3d (function cljs$core$async$impl$buffers$acopy(src,src_start,dest,dest_start,len){\nvar cnt \x3d (0);\nwhile(true){\nif((cnt \x3c len)){\n(dest[(dest_start + cnt)] \x3d (src[(src_start + cnt)]));\n\nvar G__39917 \x3d (cnt + (1));\ncnt \x3d G__39917;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n*/\ncljs.core.async.impl.buffers.RingBuffer \x3d (function (head,tail,length,arr){\nthis.head \x3d head;\nthis.tail \x3d tail;\nthis.length \x3d length;\nthis.arr \x3d arr;\n});\n(cljs.core.async.impl.buffers.RingBuffer.prototype.pop \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif((self__.length \x3d\x3d\x3d (0))){\nreturn null;\n} else {\nvar x \x3d (self__.arr[self__.tail]);\n(self__.arr[self__.tail] \x3d null);\n\n(self__.tail \x3d ((self__.tail + (1)) % self__.arr.length));\n\n(self__.length \x3d (self__.length - (1)));\n\nreturn x;\n}\n}));\n\n(cljs.core.async.impl.buffers.RingBuffer.prototype.unshift \x3d (function (x){\nvar self__ \x3d this;\nvar _ \x3d this;\n(self__.arr[self__.head] \x3d x);\n\n(self__.head \x3d ((self__.head + (1)) % self__.arr.length));\n\n(self__.length \x3d (self__.length + (1)));\n\nreturn null;\n}));\n\n(cljs.core.async.impl.buffers.RingBuffer.prototype.unbounded_unshift \x3d (function (x){\nvar self__ \x3d this;\nvar this$ \x3d this;\nif(((self__.length + (1)) \x3d\x3d\x3d self__.arr.length)){\nthis$.resize();\n} else {\n}\n\nreturn this$.unshift(x);\n}));\n\n(cljs.core.async.impl.buffers.RingBuffer.prototype.resize \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar new_arr_size \x3d (self__.arr.length * (2));\nvar new_arr \x3d (new Array(new_arr_size));\nif((self__.tail \x3c self__.head)){\ncljs.core.async.impl.buffers.acopy(self__.arr,self__.tail,new_arr,(0),self__.length);\n\n(self__.tail \x3d (0));\n\n(self__.head \x3d self__.length);\n\nreturn (self__.arr \x3d new_arr);\n} else {\nif((self__.tail \x3e self__.head)){\ncljs.core.async.impl.buffers.acopy(self__.arr,self__.tail,new_arr,(0),(self__.arr.length - self__.tail));\n\ncljs.core.async.impl.buffers.acopy(self__.arr,(0),new_arr,(self__.arr.length - self__.tail),self__.head);\n\n(self__.tail \x3d (0));\n\n(self__.head \x3d self__.length);\n\nreturn (self__.arr \x3d new_arr);\n} else {\nif((self__.tail \x3d\x3d\x3d self__.head)){\n(self__.tail \x3d (0));\n\n(self__.head \x3d (0));\n\nreturn (self__.arr \x3d new_arr);\n} else {\nreturn null;\n}\n}\n}\n}));\n\n(cljs.core.async.impl.buffers.RingBuffer.prototype.cleanup \x3d (function (keep_QMARK_){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar n__4648__auto__ \x3d self__.length;\nvar x \x3d (0);\nwhile(true){\nif((x \x3c n__4648__auto__)){\nvar v_39940 \x3d this$.pop();\nif((keep_QMARK_.cljs$core$IFn$_invoke$arity$1 ? keep_QMARK_.cljs$core$IFn$_invoke$arity$1(v_39940) : keep_QMARK_.call(null,v_39940))){\nthis$.unshift(v_39940);\n} else {\n}\n\nvar G__39943 \x3d (x + (1));\nx \x3d G__39943;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(cljs.core.async.impl.buffers.RingBuffer.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22head\x22,\x22head\x22,869147608,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22tail\x22,\x22tail\x22,494507963,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22length\x22,\x22length\x22,-2065447907,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22arr\x22,\x22arr\x22,2115492975,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.async.impl.buffers.RingBuffer.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.buffers.RingBuffer.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.buffers/RingBuffer\x22);\n\n(cljs.core.async.impl.buffers.RingBuffer.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.buffers/RingBuffer\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.buffers/RingBuffer.\n */\ncljs.core.async.impl.buffers.__GT_RingBuffer \x3d (function cljs$core$async$impl$buffers$__GT_RingBuffer(head,tail,length,arr){\nreturn (new cljs.core.async.impl.buffers.RingBuffer(head,tail,length,arr));\n});\n\ncljs.core.async.impl.buffers.ring_buffer \x3d (function cljs$core$async$impl$buffers$ring_buffer(n){\nif((n \x3e (0))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,\x22Can\x27t create a ring buffer of size 0\x22,\x22\\n\x22,\x22(\x3e n 0)\x22].join(\x27\x27)));\n}\n\nreturn (new cljs.core.async.impl.buffers.RingBuffer((0),(0),(0),(new Array(n))));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.async.impl.protocols.Buffer}\n*/\ncljs.core.async.impl.buffers.FixedBuffer \x3d (function (buf,n){\nthis.buf \x3d buf;\nthis.n \x3d n;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.buffers.FixedBuffer.prototype.cljs$core$async$impl$protocols$Buffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.FixedBuffer.prototype.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (self__.buf.length \x3e\x3d self__.n);\n}));\n\n(cljs.core.async.impl.buffers.FixedBuffer.prototype.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.buf.pop();\n}));\n\n(cljs.core.async.impl.buffers.FixedBuffer.prototype.cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$arity$2 \x3d (function (this$,itm){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nself__.buf.unbounded_unshift(itm);\n\nreturn this$__$1;\n}));\n\n(cljs.core.async.impl.buffers.FixedBuffer.prototype.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.async.impl.buffers.FixedBuffer.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.buf.length;\n}));\n\n(cljs.core.async.impl.buffers.FixedBuffer.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null);\n}));\n\n(cljs.core.async.impl.buffers.FixedBuffer.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.buffers.FixedBuffer.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.buffers/FixedBuffer\x22);\n\n(cljs.core.async.impl.buffers.FixedBuffer.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.buffers/FixedBuffer\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.buffers/FixedBuffer.\n */\ncljs.core.async.impl.buffers.__GT_FixedBuffer \x3d (function cljs$core$async$impl$buffers$__GT_FixedBuffer(buf,n){\nreturn (new cljs.core.async.impl.buffers.FixedBuffer(buf,n));\n});\n\ncljs.core.async.impl.buffers.fixed_buffer \x3d (function cljs$core$async$impl$buffers$fixed_buffer(n){\nreturn (new cljs.core.async.impl.buffers.FixedBuffer(cljs.core.async.impl.buffers.ring_buffer(n),n));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.async.impl.protocols.UnblockingBuffer}\n * @implements {cljs.core.async.impl.protocols.Buffer}\n*/\ncljs.core.async.impl.buffers.DroppingBuffer \x3d (function (buf,n){\nthis.buf \x3d buf;\nthis.n \x3d n;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$async$impl$protocols$UnblockingBuffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn false;\n}));\n\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.buf.pop();\n}));\n\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$arity$2 \x3d (function (this$,itm){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((self__.buf.length \x3d\x3d\x3d self__.n)){\n} else {\nself__.buf.unshift(itm);\n}\n\nreturn this$__$1;\n}));\n\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.async.impl.buffers.DroppingBuffer.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.buf.length;\n}));\n\n(cljs.core.async.impl.buffers.DroppingBuffer.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null);\n}));\n\n(cljs.core.async.impl.buffers.DroppingBuffer.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.buffers.DroppingBuffer.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.buffers/DroppingBuffer\x22);\n\n(cljs.core.async.impl.buffers.DroppingBuffer.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.buffers/DroppingBuffer\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.buffers/DroppingBuffer.\n */\ncljs.core.async.impl.buffers.__GT_DroppingBuffer \x3d (function cljs$core$async$impl$buffers$__GT_DroppingBuffer(buf,n){\nreturn (new cljs.core.async.impl.buffers.DroppingBuffer(buf,n));\n});\n\ncljs.core.async.impl.buffers.dropping_buffer \x3d (function cljs$core$async$impl$buffers$dropping_buffer(n){\nreturn (new cljs.core.async.impl.buffers.DroppingBuffer(cljs.core.async.impl.buffers.ring_buffer(n),n));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.async.impl.protocols.UnblockingBuffer}\n * @implements {cljs.core.async.impl.protocols.Buffer}\n*/\ncljs.core.async.impl.buffers.SlidingBuffer \x3d (function (buf,n){\nthis.buf \x3d buf;\nthis.n \x3d n;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$async$impl$protocols$UnblockingBuffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn false;\n}));\n\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.buf.pop();\n}));\n\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$arity$2 \x3d (function (this$,itm){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((self__.buf.length \x3d\x3d\x3d self__.n)){\nthis$__$1.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1(null);\n} else {\n}\n\nself__.buf.unshift(itm);\n\nreturn this$__$1;\n}));\n\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn null;\n}));\n\n(cljs.core.async.impl.buffers.SlidingBuffer.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.buf.length;\n}));\n\n(cljs.core.async.impl.buffers.SlidingBuffer.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null);\n}));\n\n(cljs.core.async.impl.buffers.SlidingBuffer.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.buffers.SlidingBuffer.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.buffers/SlidingBuffer\x22);\n\n(cljs.core.async.impl.buffers.SlidingBuffer.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.buffers/SlidingBuffer\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.buffers/SlidingBuffer.\n */\ncljs.core.async.impl.buffers.__GT_SlidingBuffer \x3d (function cljs$core$async$impl$buffers$__GT_SlidingBuffer(buf,n){\nreturn (new cljs.core.async.impl.buffers.SlidingBuffer(buf,n));\n});\n\ncljs.core.async.impl.buffers.sliding_buffer \x3d (function cljs$core$async$impl$buffers$sliding_buffer(n){\nreturn (new cljs.core.async.impl.buffers.SlidingBuffer(cljs.core.async.impl.buffers.ring_buffer(n),n));\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl.buffers !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl.buffers.NO_VAL !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.core.async.impl.buffers.NO_VAL \x3d (new Object());\n}\ncljs.core.async.impl.buffers.undelivered_QMARK_ \x3d (function cljs$core$async$impl$buffers$undelivered_QMARK_(val){\nreturn (cljs.core.async.impl.buffers.NO_VAL \x3d\x3d\x3d val);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.async.impl.protocols.UnblockingBuffer}\n * @implements {cljs.core.async.impl.protocols.Buffer}\n*/\ncljs.core.async.impl.buffers.PromiseBuffer \x3d (function (val){\nthis.val \x3d val;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$async$impl$protocols$UnblockingBuffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$async$impl$protocols$Buffer$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn false;\n}));\n\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$async$impl$protocols$Buffer$add_BANG__STAR_$arity$2 \x3d (function (this$,itm){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(cljs.core.async.impl.buffers.undelivered_QMARK_(self__.val)){\n(self__.val \x3d itm);\n} else {\n}\n\nreturn this$__$1;\n}));\n\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.async.impl.buffers.undelivered_QMARK_(self__.val)){\nreturn (self__.val \x3d null);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.async.impl.buffers.PromiseBuffer.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.async.impl.buffers.undelivered_QMARK_(self__.val)){\nreturn (0);\n} else {\nreturn (1);\n}\n}));\n\n(cljs.core.async.impl.buffers.PromiseBuffer.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.async.impl.buffers.PromiseBuffer.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.buffers.PromiseBuffer.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.buffers/PromiseBuffer\x22);\n\n(cljs.core.async.impl.buffers.PromiseBuffer.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.buffers/PromiseBuffer\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.buffers/PromiseBuffer.\n */\ncljs.core.async.impl.buffers.__GT_PromiseBuffer \x3d (function cljs$core$async$impl$buffers$__GT_PromiseBuffer(val){\nreturn (new cljs.core.async.impl.buffers.PromiseBuffer(val));\n});\n\ncljs.core.async.impl.buffers.promise_buffer \x3d (function cljs$core$async$impl$buffers$promise_buffer(){\nreturn (new cljs.core.async.impl.buffers.PromiseBuffer(cljs.core.async.impl.buffers.NO_VAL));\n});\n");
SHADOW_ENV.evalLoad("goog.debug.entrypointregistry.js", true , "goog.provide(\x22goog.debug.EntryPointMonitor\x22);\ngoog.provide(\x22goog.debug.entryPointRegistry\x22);\ngoog.require(\x22goog.asserts\x22);\ngoog.debug.EntryPointMonitor \x3d function() {\n};\ngoog.debug.EntryPointMonitor.prototype.wrap;\ngoog.debug.EntryPointMonitor.prototype.unwrap;\ngoog.debug.entryPointRegistry.refList_ \x3d [];\ngoog.debug.entryPointRegistry.monitors_ \x3d [];\ngoog.debug.entryPointRegistry.monitorsMayExist_ \x3d false;\ngoog.debug.entryPointRegistry.register \x3d function(callback) {\n  goog.debug.entryPointRegistry.refList_[goog.debug.entryPointRegistry.refList_.length] \x3d callback;\n  if (goog.debug.entryPointRegistry.monitorsMayExist_) {\n    var monitors \x3d goog.debug.entryPointRegistry.monitors_;\n    for (var i \x3d 0; i \x3c monitors.length; i++) {\n      callback(goog.bind(monitors[i].wrap, monitors[i]));\n    }\n  }\n};\ngoog.debug.entryPointRegistry.monitorAll \x3d function(monitor) {\n  goog.debug.entryPointRegistry.monitorsMayExist_ \x3d true;\n  var transformer \x3d goog.bind(monitor.wrap, monitor);\n  for (var i \x3d 0; i \x3c goog.debug.entryPointRegistry.refList_.length; i++) {\n    goog.debug.entryPointRegistry.refList_[i](transformer);\n  }\n  goog.debug.entryPointRegistry.monitors_.push(monitor);\n};\ngoog.debug.entryPointRegistry.unmonitorAllIfPossible \x3d function(monitor) {\n  var monitors \x3d goog.debug.entryPointRegistry.monitors_;\n  goog.asserts.assert(monitor \x3d\x3d monitors[monitors.length - 1], \x22Only the most recent monitor can be unwrapped.\x22);\n  var transformer \x3d goog.bind(monitor.unwrap, monitor);\n  for (var i \x3d 0; i \x3c goog.debug.entryPointRegistry.refList_.length; i++) {\n    goog.debug.entryPointRegistry.refList_[i](transformer);\n  }\n  monitors.length--;\n};\n");
SHADOW_ENV.evalLoad("goog.async.nexttick.js", true , "goog.provide(\x22goog.async.nextTick\x22);\ngoog.provide(\x22goog.async.throwException\x22);\ngoog.require(\x22goog.debug.entryPointRegistry\x22);\ngoog.require(\x22goog.dom\x22);\ngoog.require(\x22goog.dom.TagName\x22);\ngoog.require(\x22goog.functions\x22);\ngoog.require(\x22goog.labs.userAgent.browser\x22);\ngoog.require(\x22goog.labs.userAgent.engine\x22);\ngoog.async.throwException \x3d function(exception) {\n  goog.global.setTimeout(function() {\n    throw exception;\n  }, 0);\n};\ngoog.async.nextTick \x3d function(callback, opt_context, opt_useSetImmediate) {\n  var cb \x3d callback;\n  if (opt_context) {\n    cb \x3d goog.bind(callback, opt_context);\n  }\n  cb \x3d goog.async.nextTick.wrapCallback_(cb);\n  if (typeof goog.global.setImmediate \x3d\x3d\x3d \x22function\x22 \x26\x26 (opt_useSetImmediate || goog.async.nextTick.useSetImmediate_())) {\n    goog.global.setImmediate(cb);\n    return;\n  }\n  if (!goog.async.nextTick.setImmediate_) {\n    goog.async.nextTick.setImmediate_ \x3d goog.async.nextTick.getSetImmediateEmulator_();\n  }\n  goog.async.nextTick.setImmediate_(cb);\n};\ngoog.async.nextTick.useSetImmediate_ \x3d function() {\n  if (!goog.global.Window || !goog.global.Window.prototype) {\n    return true;\n  }\n  if (goog.labs.userAgent.browser.isEdge() || goog.global.Window.prototype.setImmediate !\x3d goog.global.setImmediate) {\n    return true;\n  }\n  return false;\n};\ngoog.async.nextTick.setImmediate_;\ngoog.async.nextTick.getSetImmediateEmulator_ \x3d function() {\n  var Channel \x3d goog.global[\x22MessageChannel\x22];\n  if (typeof Channel \x3d\x3d\x3d \x22undefined\x22 \x26\x26 typeof window !\x3d\x3d \x22undefined\x22 \x26\x26 window.postMessage \x26\x26 window.addEventListener \x26\x26 !goog.labs.userAgent.engine.isPresto()) {\n    Channel \x3d function() {\n      var iframe \x3d goog.dom.createElement(goog.dom.TagName.IFRAME);\n      iframe.style.display \x3d \x22none\x22;\n      document.documentElement.appendChild(iframe);\n      var win \x3d iframe.contentWindow;\n      var doc \x3d win.document;\n      doc.open();\n      doc.close();\n      var message \x3d \x22callImmediate\x22 + Math.random();\n      var origin \x3d win.location.protocol \x3d\x3d \x22file:\x22 ? \x22*\x22 : win.location.protocol + \x22//\x22 + win.location.host;\n      var onmessage \x3d goog.bind(function(e) {\n        if (origin !\x3d \x22*\x22 \x26\x26 e.origin !\x3d origin || e.data !\x3d message) {\n          return;\n        }\n        this[\x22port1\x22].onmessage();\n      }, this);\n      win.addEventListener(\x22message\x22, onmessage, false);\n      this[\x22port1\x22] \x3d {};\n      this[\x22port2\x22] \x3d {postMessage:function() {\n        win.postMessage(message, origin);\n      }};\n    };\n  }\n  if (typeof Channel !\x3d\x3d \x22undefined\x22 \x26\x26 !goog.labs.userAgent.browser.isIE()) {\n    var channel \x3d new Channel;\n    var head \x3d {};\n    var tail \x3d head;\n    channel[\x22port1\x22].onmessage \x3d function() {\n      if (head.next !\x3d\x3d undefined) {\n        head \x3d head.next;\n        var cb \x3d head.cb;\n        head.cb \x3d null;\n        cb();\n      }\n    };\n    return function(cb) {\n      tail.next \x3d {cb:cb};\n      tail \x3d tail.next;\n      channel[\x22port2\x22].postMessage(0);\n    };\n  }\n  return function(cb) {\n    goog.global.setTimeout(cb, 0);\n  };\n};\ngoog.async.nextTick.wrapCallback_ \x3d goog.functions.identity;\ngoog.debug.entryPointRegistry.register(function(transformer) {\n  goog.async.nextTick.wrapCallback_ \x3d transformer;\n});\n");
SHADOW_ENV.evalLoad("cljs.core.async.impl.dispatch.js", true , "goog.provide(\x27cljs.core.async.impl.dispatch\x27);\ncljs.core.async.impl.dispatch.tasks \x3d cljs.core.async.impl.buffers.ring_buffer((32));\ncljs.core.async.impl.dispatch.running_QMARK_ \x3d false;\ncljs.core.async.impl.dispatch.queued_QMARK_ \x3d false;\ncljs.core.async.impl.dispatch.TASK_BATCH_SIZE \x3d (1024);\ncljs.core.async.impl.dispatch.process_messages \x3d (function cljs$core$async$impl$dispatch$process_messages(){\n(cljs.core.async.impl.dispatch.running_QMARK_ \x3d true);\n\n(cljs.core.async.impl.dispatch.queued_QMARK_ \x3d false);\n\nvar count_40028 \x3d (0);\nwhile(true){\nvar m_40029 \x3d cljs.core.async.impl.dispatch.tasks.pop();\nif((m_40029 \x3d\x3d null)){\n} else {\n(m_40029.cljs$core$IFn$_invoke$arity$0 ? m_40029.cljs$core$IFn$_invoke$arity$0() : m_40029.call(null));\n\nif((count_40028 \x3c cljs.core.async.impl.dispatch.TASK_BATCH_SIZE)){\nvar G__40030 \x3d (count_40028 + (1));\ncount_40028 \x3d G__40030;\ncontinue;\n} else {\n}\n}\nbreak;\n}\n\n(cljs.core.async.impl.dispatch.running_QMARK_ \x3d false);\n\nif((cljs.core.async.impl.dispatch.tasks.length \x3e (0))){\nreturn (cljs.core.async.impl.dispatch.queue_dispatcher.cljs$core$IFn$_invoke$arity$0 ? cljs.core.async.impl.dispatch.queue_dispatcher.cljs$core$IFn$_invoke$arity$0() : cljs.core.async.impl.dispatch.queue_dispatcher.call(null));\n} else {\nreturn null;\n}\n});\ncljs.core.async.impl.dispatch.queue_dispatcher \x3d (function cljs$core$async$impl$dispatch$queue_dispatcher(){\nif(((cljs.core.async.impl.dispatch.queued_QMARK_) \x26\x26 (cljs.core.async.impl.dispatch.running_QMARK_))){\nreturn null;\n} else {\n(cljs.core.async.impl.dispatch.queued_QMARK_ \x3d true);\n\nreturn goog.async.nextTick(cljs.core.async.impl.dispatch.process_messages);\n}\n});\ncljs.core.async.impl.dispatch.run \x3d (function cljs$core$async$impl$dispatch$run(f){\ncljs.core.async.impl.dispatch.tasks.unbounded_unshift(f);\n\nreturn cljs.core.async.impl.dispatch.queue_dispatcher();\n});\ncljs.core.async.impl.dispatch.queue_delay \x3d (function cljs$core$async$impl$dispatch$queue_delay(f,delay){\nreturn setTimeout(f,delay);\n});\n");
SHADOW_ENV.evalLoad("cljs.core.async.impl.channels.js", true , "goog.provide(\x27cljs.core.async.impl.channels\x27);\ncljs.core.async.impl.channels.box \x3d (function cljs$core$async$impl$channels$box(val){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl.channels !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IDeref}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652 \x3d (function (val,meta40653){\nthis.val \x3d val;\nthis.meta40653 \x3d meta40653;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 425984;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_40654,meta40653__$1){\nvar self__ \x3d this;\nvar _40654__$1 \x3d this;\nreturn (new cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652(self__.val,meta40653__$1));\n}));\n\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_40654){\nvar self__ \x3d this;\nvar _40654__$1 \x3d this;\nreturn self__.meta40653;\n}));\n\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.val;\n}));\n\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22meta40653\x22,\x22meta40653\x22,2104961674,null)], null);\n}));\n\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.channels/t_cljs$core$async$impl$channels40652\x22);\n\n(cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.channels/t_cljs$core$async$impl$channels40652\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.channels/t_cljs$core$async$impl$channels40652.\n */\ncljs.core.async.impl.channels.__GT_t_cljs$core$async$impl$channels40652 \x3d (function cljs$core$async$impl$channels$box_$___GT_t_cljs$core$async$impl$channels40652(val__$1,meta40653){\nreturn (new cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652(val__$1,meta40653));\n});\n\n}\n\nreturn (new cljs.core.async.impl.channels.t_cljs$core$async$impl$channels40652(val,cljs.core.PersistentArrayMap.EMPTY));\n});\n\n/**\n* @constructor\n*/\ncljs.core.async.impl.channels.PutBox \x3d (function (handler,val){\nthis.handler \x3d handler;\nthis.val \x3d val;\n});\n\n(cljs.core.async.impl.channels.PutBox.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22handler\x22,\x22handler\x22,1444934915,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null);\n}));\n\n(cljs.core.async.impl.channels.PutBox.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.channels.PutBox.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.channels/PutBox\x22);\n\n(cljs.core.async.impl.channels.PutBox.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.channels/PutBox\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.channels/PutBox.\n */\ncljs.core.async.impl.channels.__GT_PutBox \x3d (function cljs$core$async$impl$channels$__GT_PutBox(handler,val){\nreturn (new cljs.core.async.impl.channels.PutBox(handler,val));\n});\n\ncljs.core.async.impl.channels.put_active_QMARK_ \x3d (function cljs$core$async$impl$channels$put_active_QMARK_(box){\nreturn cljs.core.async.impl.protocols.active_QMARK_(box.handler);\n});\ncljs.core.async.impl.channels.MAX_DIRTY \x3d (64);\n\n/**\n * @interface\n */\ncljs.core.async.impl.channels.MMC \x3d function(){};\n\nvar cljs$core$async$impl$channels$MMC$abort$dyn_40913 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (cljs.core.async.impl.channels.abort[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.impl.channels.abort[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22MMC.abort\x22,this$);\n}\n}\n});\ncljs.core.async.impl.channels.abort \x3d (function cljs$core$async$impl$channels$abort(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.cljs$core$async$impl$channels$MMC$abort$arity$1 \x3d\x3d null)))))){\nreturn this$.cljs$core$async$impl$channels$MMC$abort$arity$1(this$);\n} else {\nreturn cljs$core$async$impl$channels$MMC$abort$dyn_40913(this$);\n}\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.channels.MMC}\n * @implements {cljs.core.async.impl.protocols.Channel}\n * @implements {cljs.core.async.impl.protocols.WritePort}\n * @implements {cljs.core.async.impl.protocols.ReadPort}\n*/\ncljs.core.async.impl.channels.ManyToManyChannel \x3d (function (takes,dirty_takes,puts,dirty_puts,buf,closed,add_BANG_){\nthis.takes \x3d takes;\nthis.dirty_takes \x3d dirty_takes;\nthis.puts \x3d puts;\nthis.dirty_puts \x3d dirty_puts;\nthis.buf \x3d buf;\nthis.closed \x3d closed;\nthis.add_BANG_ \x3d add_BANG_;\n});\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$channels$MMC$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$channels$MMC$abort$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nwhile(true){\nvar putter_40926 \x3d self__.puts.pop();\nif((putter_40926 \x3d\x3d null)){\n} else {\nvar put_handler_40929 \x3d putter_40926.handler;\nvar val_40930 \x3d putter_40926.val;\nif(put_handler_40929.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null)){\nvar put_cb_40931 \x3d put_handler_40929.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\ncljs.core.async.impl.dispatch.run(((function (put_cb_40931,put_handler_40929,val_40930,putter_40926,this$__$1){\nreturn (function (){\nreturn (put_cb_40931.cljs$core$IFn$_invoke$arity$1 ? put_cb_40931.cljs$core$IFn$_invoke$arity$1(true) : put_cb_40931.call(null,true));\n});})(put_cb_40931,put_handler_40929,val_40930,putter_40926,this$__$1))\n);\n} else {\ncontinue;\n}\n}\nbreak;\n}\n\nself__.puts.cleanup(cljs.core.constantly(false));\n\nreturn this$__$1.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1(null);\n}));\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$WritePort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3 \x3d (function (this$,val,handler){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((!((val \x3d\x3d null)))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,\x22Can\x27t put nil on a channel\x22,\x22\\n\x22,\x22(not (nil? val))\x22].join(\x27\x27)));\n}\n\nvar closed__$1 \x3d self__.closed;\nif(((closed__$1) || ((!(handler.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null)))))){\nreturn cljs.core.async.impl.channels.box((!(closed__$1)));\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d self__.buf;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not(self__.buf.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1(null));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nhandler.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\n\nvar done_QMARK_ \x3d cljs.core.reduced_QMARK_((self__.add_BANG_.cljs$core$IFn$_invoke$arity$2 ? self__.add_BANG_.cljs$core$IFn$_invoke$arity$2(self__.buf,val) : self__.add_BANG_.call(null,self__.buf,val)));\nvar take_cbs \x3d (function (){var takers \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nif((((self__.takes.length \x3e (0))) \x26\x26 ((cljs.core.count(self__.buf) \x3e (0))))){\nvar taker \x3d self__.takes.pop();\nif(taker.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null)){\nvar ret \x3d taker.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\nvar val__$1 \x3d self__.buf.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1(null);\nvar G__40959 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(takers,((function (takers,ret,val__$1,taker,done_QMARK_,closed__$1,this$__$1){\nreturn (function (){\nreturn (ret.cljs$core$IFn$_invoke$arity$1 ? ret.cljs$core$IFn$_invoke$arity$1(val__$1) : ret.call(null,val__$1));\n});})(takers,ret,val__$1,taker,done_QMARK_,closed__$1,this$__$1))\n);\ntakers \x3d G__40959;\ncontinue;\n} else {\nvar G__40968 \x3d takers;\ntakers \x3d G__40968;\ncontinue;\n}\n} else {\nreturn takers;\n}\nbreak;\n}\n})();\nif(done_QMARK_){\nthis$__$1.cljs$core$async$impl$channels$MMC$abort$arity$1(null);\n} else {\n}\n\nif(cljs.core.seq(take_cbs)){\nvar seq__40704_40970 \x3d cljs.core.seq(take_cbs);\nvar chunk__40705_40971 \x3d null;\nvar count__40706_40972 \x3d (0);\nvar i__40707_40973 \x3d (0);\nwhile(true){\nif((i__40707_40973 \x3c count__40706_40972)){\nvar f_40974 \x3d chunk__40705_40971.cljs$core$IIndexed$_nth$arity$2(null,i__40707_40973);\ncljs.core.async.impl.dispatch.run(f_40974);\n\n\nvar G__40975 \x3d seq__40704_40970;\nvar G__40976 \x3d chunk__40705_40971;\nvar G__40977 \x3d count__40706_40972;\nvar G__40978 \x3d (i__40707_40973 + (1));\nseq__40704_40970 \x3d G__40975;\nchunk__40705_40971 \x3d G__40976;\ncount__40706_40972 \x3d G__40977;\ni__40707_40973 \x3d G__40978;\ncontinue;\n} else {\nvar temp__5753__auto___40981 \x3d cljs.core.seq(seq__40704_40970);\nif(temp__5753__auto___40981){\nvar seq__40704_40982__$1 \x3d temp__5753__auto___40981;\nif(cljs.core.chunked_seq_QMARK_(seq__40704_40982__$1)){\nvar c__4591__auto___40986 \x3d cljs.core.chunk_first(seq__40704_40982__$1);\nvar G__40990 \x3d cljs.core.chunk_rest(seq__40704_40982__$1);\nvar G__40991 \x3d c__4591__auto___40986;\nvar G__40992 \x3d cljs.core.count(c__4591__auto___40986);\nvar G__40993 \x3d (0);\nseq__40704_40970 \x3d G__40990;\nchunk__40705_40971 \x3d G__40991;\ncount__40706_40972 \x3d G__40992;\ni__40707_40973 \x3d G__40993;\ncontinue;\n} else {\nvar f_40994 \x3d cljs.core.first(seq__40704_40982__$1);\ncljs.core.async.impl.dispatch.run(f_40994);\n\n\nvar G__40997 \x3d cljs.core.next(seq__40704_40982__$1);\nvar G__40998 \x3d null;\nvar G__40999 \x3d (0);\nvar G__41000 \x3d (0);\nseq__40704_40970 \x3d G__40997;\nchunk__40705_40971 \x3d G__40998;\ncount__40706_40972 \x3d G__40999;\ni__40707_40973 \x3d G__41000;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n} else {\n}\n\nreturn cljs.core.async.impl.channels.box(true);\n} else {\nvar taker \x3d (function (){while(true){\nvar taker \x3d self__.takes.pop();\nif(cljs.core.truth_(taker)){\nif(cljs.core.truth_(taker.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null))){\nreturn taker;\n} else {\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(taker)){\nvar take_cb \x3d taker.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\nhandler.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\n\ncljs.core.async.impl.dispatch.run((function (){\nreturn (take_cb.cljs$core$IFn$_invoke$arity$1 ? take_cb.cljs$core$IFn$_invoke$arity$1(val) : take_cb.call(null,val));\n}));\n\nreturn cljs.core.async.impl.channels.box(true);\n} else {\nif((self__.dirty_puts \x3e (64))){\n(self__.dirty_puts \x3d (0));\n\nself__.puts.cleanup(cljs.core.async.impl.channels.put_active_QMARK_);\n} else {\n(self__.dirty_puts \x3d (self__.dirty_puts + (1)));\n}\n\nif(cljs.core.truth_(handler.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1(null))){\nif((self__.puts.length \x3c (1024))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,[\x22No more than \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((1024)),\x22 pending puts are allowed on a single channel.\x22,\x22 Consider using a windowed buffer.\x22].join(\x27\x27),\x22\\n\x22,\x22(\x3c (.-length puts) impl/MAX-QUEUE-SIZE)\x22].join(\x27\x27)));\n}\n\nself__.puts.unbounded_unshift((new cljs.core.async.impl.channels.PutBox(handler,val)));\n} else {\n}\n\nreturn null;\n}\n}\n}\n}));\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$ReadPort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2 \x3d (function (this$,handler){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((!(handler.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null)))){\nreturn null;\n} else {\nif((((!((self__.buf \x3d\x3d null)))) \x26\x26 ((cljs.core.count(self__.buf) \x3e (0))))){\nvar temp__5751__auto__ \x3d handler.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar take_cb \x3d temp__5751__auto__;\nvar val \x3d self__.buf.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1(null);\nvar vec__40713 \x3d ((((cljs.core.not(self__.buf.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1(null))) \x26\x26 ((self__.puts.length \x3e (0)))))?(function (){var cbs \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nvar putter \x3d self__.puts.pop();\nvar put_handler \x3d putter.handler;\nvar val__$1 \x3d putter.val;\nvar cb \x3d ((put_handler.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null))?put_handler.cljs$core$async$impl$protocols$Handler$commit$arity$1(null):false);\nvar cbs__$1 \x3d (cljs.core.truth_(cb)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cbs,cb):cbs);\nvar done_QMARK_ \x3d (cljs.core.truth_(cb)?cljs.core.reduced_QMARK_((self__.add_BANG_.cljs$core$IFn$_invoke$arity$2 ? self__.add_BANG_.cljs$core$IFn$_invoke$arity$2(self__.buf,val__$1) : self__.add_BANG_.call(null,self__.buf,val__$1))):null);\nif(((cljs.core.not(done_QMARK_)) \x26\x26 (cljs.core.not(self__.buf.cljs$core$async$impl$protocols$Buffer$full_QMARK_$arity$1(null))) \x26\x26 ((self__.puts.length \x3e (0))))){\nvar G__41018 \x3d cbs__$1;\ncbs \x3d G__41018;\ncontinue;\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [done_QMARK_,cbs__$1], null);\n}\nbreak;\n}\n})():null);\nvar done_QMARK_ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40713,(0),null);\nvar cbs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__40713,(1),null);\nif(cljs.core.truth_(done_QMARK_)){\nthis$__$1.cljs$core$async$impl$channels$MMC$abort$arity$1(null);\n} else {\n}\n\nvar seq__40759_41019 \x3d cljs.core.seq(cbs);\nvar chunk__40760_41020 \x3d null;\nvar count__40761_41021 \x3d (0);\nvar i__40762_41022 \x3d (0);\nwhile(true){\nif((i__40762_41022 \x3c count__40761_41021)){\nvar cb_41024 \x3d chunk__40760_41020.cljs$core$IIndexed$_nth$arity$2(null,i__40762_41022);\ncljs.core.async.impl.dispatch.run(((function (seq__40759_41019,chunk__40760_41020,count__40761_41021,i__40762_41022,cb_41024,val,vec__40713,done_QMARK_,cbs,take_cb,temp__5751__auto__,this$__$1){\nreturn (function (){\nreturn (cb_41024.cljs$core$IFn$_invoke$arity$1 ? cb_41024.cljs$core$IFn$_invoke$arity$1(true) : cb_41024.call(null,true));\n});})(seq__40759_41019,chunk__40760_41020,count__40761_41021,i__40762_41022,cb_41024,val,vec__40713,done_QMARK_,cbs,take_cb,temp__5751__auto__,this$__$1))\n);\n\n\nvar G__41027 \x3d seq__40759_41019;\nvar G__41028 \x3d chunk__40760_41020;\nvar G__41029 \x3d count__40761_41021;\nvar G__41030 \x3d (i__40762_41022 + (1));\nseq__40759_41019 \x3d G__41027;\nchunk__40760_41020 \x3d G__41028;\ncount__40761_41021 \x3d G__41029;\ni__40762_41022 \x3d G__41030;\ncontinue;\n} else {\nvar temp__5753__auto___41033 \x3d cljs.core.seq(seq__40759_41019);\nif(temp__5753__auto___41033){\nvar seq__40759_41034__$1 \x3d temp__5753__auto___41033;\nif(cljs.core.chunked_seq_QMARK_(seq__40759_41034__$1)){\nvar c__4591__auto___41035 \x3d cljs.core.chunk_first(seq__40759_41034__$1);\nvar G__41036 \x3d cljs.core.chunk_rest(seq__40759_41034__$1);\nvar G__41037 \x3d c__4591__auto___41035;\nvar G__41038 \x3d cljs.core.count(c__4591__auto___41035);\nvar G__41039 \x3d (0);\nseq__40759_41019 \x3d G__41036;\nchunk__40760_41020 \x3d G__41037;\ncount__40761_41021 \x3d G__41038;\ni__40762_41022 \x3d G__41039;\ncontinue;\n} else {\nvar cb_41041 \x3d cljs.core.first(seq__40759_41034__$1);\ncljs.core.async.impl.dispatch.run(((function (seq__40759_41019,chunk__40760_41020,count__40761_41021,i__40762_41022,cb_41041,seq__40759_41034__$1,temp__5753__auto___41033,val,vec__40713,done_QMARK_,cbs,take_cb,temp__5751__auto__,this$__$1){\nreturn (function (){\nreturn (cb_41041.cljs$core$IFn$_invoke$arity$1 ? cb_41041.cljs$core$IFn$_invoke$arity$1(true) : cb_41041.call(null,true));\n});})(seq__40759_41019,chunk__40760_41020,count__40761_41021,i__40762_41022,cb_41041,seq__40759_41034__$1,temp__5753__auto___41033,val,vec__40713,done_QMARK_,cbs,take_cb,temp__5751__auto__,this$__$1))\n);\n\n\nvar G__41046 \x3d cljs.core.next(seq__40759_41034__$1);\nvar G__41047 \x3d null;\nvar G__41048 \x3d (0);\nvar G__41049 \x3d (0);\nseq__40759_41019 \x3d G__41046;\nchunk__40760_41020 \x3d G__41047;\ncount__40761_41021 \x3d G__41048;\ni__40762_41022 \x3d G__41049;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn cljs.core.async.impl.channels.box(val);\n} else {\nreturn null;\n}\n} else {\nvar putter \x3d (function (){while(true){\nvar putter \x3d self__.puts.pop();\nif(cljs.core.truth_(putter)){\nif(cljs.core.async.impl.protocols.active_QMARK_(putter.handler)){\nreturn putter;\n} else {\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(putter)){\nvar put_cb \x3d cljs.core.async.impl.protocols.commit(putter.handler);\nhandler.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\n\ncljs.core.async.impl.dispatch.run((function (){\nreturn (put_cb.cljs$core$IFn$_invoke$arity$1 ? put_cb.cljs$core$IFn$_invoke$arity$1(true) : put_cb.call(null,true));\n}));\n\nreturn cljs.core.async.impl.channels.box(putter.val);\n} else {\nif(cljs.core.truth_(self__.closed)){\nif(cljs.core.truth_(self__.buf)){\n(self__.add_BANG_.cljs$core$IFn$_invoke$arity$1 ? self__.add_BANG_.cljs$core$IFn$_invoke$arity$1(self__.buf) : self__.add_BANG_.call(null,self__.buf));\n} else {\n}\n\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d handler.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn handler.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar has_val \x3d (function (){var and__4149__auto__ \x3d self__.buf;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (cljs.core.count(self__.buf) \x3e (0));\n} else {\nreturn and__4149__auto__;\n}\n})();\nvar val \x3d (cljs.core.truth_(has_val)?self__.buf.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1(null):null);\nreturn cljs.core.async.impl.channels.box(val);\n} else {\nreturn null;\n}\n} else {\nif((self__.dirty_takes \x3e (64))){\n(self__.dirty_takes \x3d (0));\n\nself__.takes.cleanup(cljs.core.async.impl.protocols.active_QMARK_);\n} else {\n(self__.dirty_takes \x3d (self__.dirty_takes + (1)));\n}\n\nif(cljs.core.truth_(handler.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1(null))){\nif((self__.takes.length \x3c (1024))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,[\x22No more than \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((1024)),\x22 pending takes are allowed on a single channel.\x22].join(\x27\x27),\x22\\n\x22,\x22(\x3c (.-length takes) impl/MAX-QUEUE-SIZE)\x22].join(\x27\x27)));\n}\n\nself__.takes.unbounded_unshift(handler);\n} else {\n}\n\nreturn null;\n}\n}\n}\n}\n}));\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$Channel$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$Channel$closed_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.closed;\n}));\n\n(cljs.core.async.impl.channels.ManyToManyChannel.prototype.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(self__.closed){\nreturn null;\n} else {\n(self__.closed \x3d true);\n\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d self__.buf;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (self__.puts.length \x3d\x3d\x3d (0));\n} else {\nreturn and__4149__auto__;\n}\n})())){\n(self__.add_BANG_.cljs$core$IFn$_invoke$arity$1 ? self__.add_BANG_.cljs$core$IFn$_invoke$arity$1(self__.buf) : self__.add_BANG_.call(null,self__.buf));\n} else {\n}\n\nwhile(true){\nvar taker_41062 \x3d self__.takes.pop();\nif((taker_41062 \x3d\x3d null)){\n} else {\nif(taker_41062.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null)){\nvar take_cb_41064 \x3d taker_41062.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\nvar val_41065 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d self__.buf;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (cljs.core.count(self__.buf) \x3e (0));\n} else {\nreturn and__4149__auto__;\n}\n})())?self__.buf.cljs$core$async$impl$protocols$Buffer$remove_BANG_$arity$1(null):null);\ncljs.core.async.impl.dispatch.run(((function (take_cb_41064,val_41065,taker_41062,this$__$1){\nreturn (function (){\nreturn (take_cb_41064.cljs$core$IFn$_invoke$arity$1 ? take_cb_41064.cljs$core$IFn$_invoke$arity$1(val_41065) : take_cb_41064.call(null,val_41065));\n});})(take_cb_41064,val_41065,taker_41062,this$__$1))\n);\n} else {\n}\n\ncontinue;\n}\nbreak;\n}\n\nif(cljs.core.truth_(self__.buf)){\nself__.buf.cljs$core$async$impl$protocols$Buffer$close_buf_BANG_$arity$1(null);\n} else {\n}\n\nreturn null;\n}\n}));\n\n(cljs.core.async.impl.channels.ManyToManyChannel.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22takes\x22,\x22takes\x22,298247964,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22dirty-takes\x22,\x22dirty-takes\x22,575642138,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22puts\x22,\x22puts\x22,-1883877054,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22dirty-puts\x22,\x22dirty-puts\x22,57041148,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22buf\x22,\x22buf\x22,1426618187,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22closed\x22,\x22closed\x22,720856168,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22add!\x22,\x22add!\x22,2046056845,null)], null);\n}));\n\n(cljs.core.async.impl.channels.ManyToManyChannel.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.channels.ManyToManyChannel.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.channels/ManyToManyChannel\x22);\n\n(cljs.core.async.impl.channels.ManyToManyChannel.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.channels/ManyToManyChannel\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.channels/ManyToManyChannel.\n */\ncljs.core.async.impl.channels.__GT_ManyToManyChannel \x3d (function cljs$core$async$impl$channels$__GT_ManyToManyChannel(takes,dirty_takes,puts,dirty_puts,buf,closed,add_BANG_){\nreturn (new cljs.core.async.impl.channels.ManyToManyChannel(takes,dirty_takes,puts,dirty_puts,buf,closed,add_BANG_));\n});\n\ncljs.core.async.impl.channels.ex_handler \x3d (function cljs$core$async$impl$channels$ex_handler(ex){\nconsole.log(ex);\n\nreturn null;\n});\ncljs.core.async.impl.channels.handle \x3d (function cljs$core$async$impl$channels$handle(buf,exh,t){\nvar else$ \x3d (function (){var fexpr__40871 \x3d (function (){var or__4160__auto__ \x3d exh;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.async.impl.channels.ex_handler;\n}\n})();\nreturn (fexpr__40871.cljs$core$IFn$_invoke$arity$1 ? fexpr__40871.cljs$core$IFn$_invoke$arity$1(t) : fexpr__40871.call(null,t));\n})();\nif((else$ \x3d\x3d null)){\nreturn buf;\n} else {\nreturn cljs.core.async.impl.protocols.add_BANG_.cljs$core$IFn$_invoke$arity$2(buf,else$);\n}\n});\ncljs.core.async.impl.channels.chan \x3d (function cljs$core$async$impl$channels$chan(var_args){\nvar G__40882 \x3d arguments.length;\nswitch (G__40882) {\ncase 1:\nreturn cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$1 \x3d (function (buf){\nreturn cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$2(buf,null);\n}));\n\n(cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$2 \x3d (function (buf,xform){\nreturn cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$3(buf,xform,null);\n}));\n\n(cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$3 \x3d (function (buf,xform,exh){\nreturn (new cljs.core.async.impl.channels.ManyToManyChannel(cljs.core.async.impl.buffers.ring_buffer((32)),(0),cljs.core.async.impl.buffers.ring_buffer((32)),(0),buf,false,(function (){var add_BANG_ \x3d (cljs.core.truth_(xform)?(xform.cljs$core$IFn$_invoke$arity$1 ? xform.cljs$core$IFn$_invoke$arity$1(cljs.core.async.impl.protocols.add_BANG_) : xform.call(null,cljs.core.async.impl.protocols.add_BANG_)):cljs.core.async.impl.protocols.add_BANG_);\nreturn (function() {\nvar G__41078 \x3d null;\nvar G__41078__1 \x3d (function (buf__$1){\ntry{return (add_BANG_.cljs$core$IFn$_invoke$arity$1 ? add_BANG_.cljs$core$IFn$_invoke$arity$1(buf__$1) : add_BANG_.call(null,buf__$1));\n}catch (e40891){var t \x3d e40891;\nreturn cljs.core.async.impl.channels.handle(buf__$1,exh,t);\n}});\nvar G__41078__2 \x3d (function (buf__$1,val){\ntry{return (add_BANG_.cljs$core$IFn$_invoke$arity$2 ? add_BANG_.cljs$core$IFn$_invoke$arity$2(buf__$1,val) : add_BANG_.call(null,buf__$1,val));\n}catch (e40893){var t \x3d e40893;\nreturn cljs.core.async.impl.channels.handle(buf__$1,exh,t);\n}});\nG__41078 \x3d function(buf__$1,val){\nswitch(arguments.length){\ncase 1:\nreturn G__41078__1.call(this,buf__$1);\ncase 2:\nreturn G__41078__2.call(this,buf__$1,val);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__41078.cljs$core$IFn$_invoke$arity$1 \x3d G__41078__1;\nG__41078.cljs$core$IFn$_invoke$arity$2 \x3d G__41078__2;\nreturn G__41078;\n})()\n})()));\n}));\n\n(cljs.core.async.impl.channels.chan.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("cljs.core.async.impl.timers.js", true , "goog.provide(\x27cljs.core.async.impl.timers\x27);\ncljs.core.async.impl.timers.MAX_LEVEL \x3d (15);\ncljs.core.async.impl.timers.P \x3d ((1) / (2));\ncljs.core.async.impl.timers.random_level \x3d (function cljs$core$async$impl$timers$random_level(var_args){\nvar G__42734 \x3d arguments.length;\nswitch (G__42734) {\ncase 0:\nreturn cljs.core.async.impl.timers.random_level.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.async.impl.timers.random_level.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.impl.timers.random_level.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.async.impl.timers.random_level.cljs$core$IFn$_invoke$arity$1((0));\n}));\n\n(cljs.core.async.impl.timers.random_level.cljs$core$IFn$_invoke$arity$1 \x3d (function (level){\nwhile(true){\nif((((Math.random() \x3c cljs.core.async.impl.timers.P)) \x26\x26 ((level \x3c cljs.core.async.impl.timers.MAX_LEVEL)))){\nvar G__42922 \x3d (level + (1));\nlevel \x3d G__42922;\ncontinue;\n} else {\nreturn level;\n}\nbreak;\n}\n}));\n\n(cljs.core.async.impl.timers.random_level.cljs$lang$maxFixedArity \x3d 1);\n\n\n/**\n* @constructor\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IPrintWithWriter}\n*/\ncljs.core.async.impl.timers.SkipListNode \x3d (function (key,val,forward){\nthis.key \x3d key;\nthis.val \x3d val;\nthis.forward \x3d forward;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2155872256;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.timers.SkipListNode.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn (new cljs.core.List(null,self__.key,(new cljs.core.List(null,self__.val,null,(1),null)),(2),null));\n}));\n\n(cljs.core.async.impl.timers.SkipListNode.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22[\x22,\x22 \x22,\x22]\x22,opts,coll__$1);\n}));\n\n(cljs.core.async.impl.timers.SkipListNode.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22forward\x22,\x22forward\x22,1083186224,null)], null);\n}));\n\n(cljs.core.async.impl.timers.SkipListNode.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.timers.SkipListNode.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.timers/SkipListNode\x22);\n\n(cljs.core.async.impl.timers.SkipListNode.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.timers/SkipListNode\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.timers/SkipListNode.\n */\ncljs.core.async.impl.timers.__GT_SkipListNode \x3d (function cljs$core$async$impl$timers$__GT_SkipListNode(key,val,forward){\nreturn (new cljs.core.async.impl.timers.SkipListNode(key,val,forward));\n});\n\ncljs.core.async.impl.timers.skip_list_node \x3d (function cljs$core$async$impl$timers$skip_list_node(var_args){\nvar G__42770 \x3d arguments.length;\nswitch (G__42770) {\ncase 1:\nreturn cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$1 \x3d (function (level){\nreturn cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$3(null,null,level);\n}));\n\n(cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$3 \x3d (function (k,v,level){\nvar arr \x3d (new Array((level + (1))));\nvar i_42934 \x3d (0);\nwhile(true){\nif((i_42934 \x3c arr.length)){\n(arr[i_42934] \x3d null);\n\nvar G__42936 \x3d (i_42934 + (1));\ni_42934 \x3d G__42936;\ncontinue;\n} else {\n}\nbreak;\n}\n\nreturn (new cljs.core.async.impl.timers.SkipListNode(k,v,arr));\n}));\n\n(cljs.core.async.impl.timers.skip_list_node.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.async.impl.timers.least_greater_node \x3d (function cljs$core$async$impl$timers$least_greater_node(var_args){\nvar G__42806 \x3d arguments.length;\nswitch (G__42806) {\ncase 3:\nreturn cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$3 \x3d (function (x,k,level){\nreturn cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$4(x,k,level,null);\n}));\n\n(cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$4 \x3d (function (x,k,level,update){\nwhile(true){\nif((!((level \x3c (0))))){\nvar x__$1 \x3d (function (){var x__$1 \x3d x;\nwhile(true){\nvar temp__5751__auto__ \x3d (((level \x3c x__$1.forward.length))?(x__$1.forward[level]):null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar x_SINGLEQUOTE_ \x3d temp__5751__auto__;\nif((x_SINGLEQUOTE_.key \x3c k)){\nvar G__42944 \x3d x_SINGLEQUOTE_;\nx__$1 \x3d G__42944;\ncontinue;\n} else {\nreturn x__$1;\n}\n} else {\nreturn x__$1;\n}\nbreak;\n}\n})();\nif((update \x3d\x3d null)){\n} else {\n(update[level] \x3d x__$1);\n}\n\nvar G__42946 \x3d x__$1;\nvar G__42947 \x3d k;\nvar G__42948 \x3d (level - (1));\nvar G__42949 \x3d update;\nx \x3d G__42946;\nk \x3d G__42947;\nlevel \x3d G__42948;\nupdate \x3d G__42949;\ncontinue;\n} else {\nreturn x;\n}\nbreak;\n}\n}));\n\n(cljs.core.async.impl.timers.least_greater_node.cljs$lang$maxFixedArity \x3d 4);\n\n\n/**\n* @constructor\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IPrintWithWriter}\n*/\ncljs.core.async.impl.timers.SkipList \x3d (function (header,level){\nthis.header \x3d header;\nthis.level \x3d level;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2155872256;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.timers.SkipList.prototype.put \x3d (function (k,v){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar update \x3d (new Array(cljs.core.async.impl.timers.MAX_LEVEL));\nvar x \x3d cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$4(self__.header,k,self__.level,update);\nvar x__$1 \x3d (x.forward[(0)]);\nif((((!((x__$1 \x3d\x3d null)))) \x26\x26 ((x__$1.key \x3d\x3d\x3d k)))){\nreturn (x__$1.val \x3d v);\n} else {\nvar new_level \x3d cljs.core.async.impl.timers.random_level.cljs$core$IFn$_invoke$arity$0();\nif((new_level \x3e self__.level)){\nvar i_42951 \x3d (self__.level + (1));\nwhile(true){\nif((i_42951 \x3c\x3d (new_level + (1)))){\n(update[i_42951] \x3d self__.header);\n\nvar G__42952 \x3d (i_42951 + (1));\ni_42951 \x3d G__42952;\ncontinue;\n} else {\n}\nbreak;\n}\n\n(self__.level \x3d new_level);\n} else {\n}\n\nvar x__$2 \x3d cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$3(k,v,(new Array(new_level)));\nvar i \x3d (0);\nwhile(true){\nif((i \x3c\x3d self__.level)){\nvar links_42957 \x3d (update[i]).forward;\n(x__$2.forward[i] \x3d (links_42957[i]));\n\n(links_42957[i] \x3d x__$2);\n\nvar G__42961 \x3d (i + (1));\ni \x3d G__42961;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}\n}));\n\n(cljs.core.async.impl.timers.SkipList.prototype.remove \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar update \x3d (new Array(cljs.core.async.impl.timers.MAX_LEVEL));\nvar x \x3d cljs.core.async.impl.timers.least_greater_node.cljs$core$IFn$_invoke$arity$4(self__.header,k,self__.level,update);\nvar x__$1 \x3d (((x.forward.length \x3d\x3d\x3d (0)))?null:(x.forward[(0)]));\nif((((!((x__$1 \x3d\x3d null)))) \x26\x26 ((x__$1.key \x3d\x3d\x3d k)))){\nvar i_42965 \x3d (0);\nwhile(true){\nif((i_42965 \x3c\x3d self__.level)){\nvar links_42971 \x3d (update[i_42965]).forward;\nif((x__$1 \x3d\x3d\x3d (((i_42965 \x3c links_42971.length))?(links_42971[i_42965]):null))){\n(links_42971[i_42965] \x3d (x__$1.forward[i_42965]));\n\nvar G__42975 \x3d (i_42965 + (1));\ni_42965 \x3d G__42975;\ncontinue;\n} else {\nvar G__42977 \x3d (i_42965 + (1));\ni_42965 \x3d G__42977;\ncontinue;\n}\n} else {\n}\nbreak;\n}\n\nwhile(true){\nif(((((((0) \x3c self__.level)) \x26\x26 ((self__.level \x3c self__.header.forward.length)))) \x26\x26 (((self__.header.forward[self__.level]) \x3d\x3d null)))){\n(self__.level \x3d (self__.level - (1)));\n\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.async.impl.timers.SkipList.prototype.ceilingEntry \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar x \x3d self__.header;\nvar level__$1 \x3d self__.level;\nwhile(true){\nif((!((level__$1 \x3c (0))))){\nvar nx \x3d (function (){var x__$1 \x3d x;\nwhile(true){\nvar x_SINGLEQUOTE_ \x3d (((level__$1 \x3c x__$1.forward.length))?(x__$1.forward[level__$1]):null);\nif((!((x_SINGLEQUOTE_ \x3d\x3d null)))){\nif((x_SINGLEQUOTE_.key \x3e k)){\nreturn x__$1;\n} else {\nvar G__42983 \x3d x_SINGLEQUOTE_;\nx__$1 \x3d G__42983;\ncontinue;\n}\n} else {\nif((level__$1 \x3d\x3d\x3d (0))){\nreturn x__$1;\n} else {\nreturn null;\n}\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(nx)){\nvar G__42984 \x3d nx;\nvar G__42985 \x3d (level__$1 - (1));\nx \x3d G__42984;\nlevel__$1 \x3d G__42985;\ncontinue;\n} else {\nvar G__42986 \x3d x;\nvar G__42987 \x3d (level__$1 - (1));\nx \x3d G__42986;\nlevel__$1 \x3d G__42987;\ncontinue;\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(x.key,k)){\nreturn x;\n} else {\nreturn (x.forward[(0)]);\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.async.impl.timers.SkipList.prototype.floorEntry \x3d (function (k){\nvar self__ \x3d this;\nvar coll \x3d this;\nvar x \x3d self__.header;\nvar level__$1 \x3d self__.level;\nwhile(true){\nif((!((level__$1 \x3c (0))))){\nvar nx \x3d (function (){var x__$1 \x3d x;\nwhile(true){\nvar x_SINGLEQUOTE_ \x3d (((level__$1 \x3c x__$1.forward.length))?(x__$1.forward[level__$1]):null);\nif((!((x_SINGLEQUOTE_ \x3d\x3d null)))){\nif((x_SINGLEQUOTE_.key \x3e k)){\nreturn x__$1;\n} else {\nvar G__43002 \x3d x_SINGLEQUOTE_;\nx__$1 \x3d G__43002;\ncontinue;\n}\n} else {\nif((level__$1 \x3d\x3d\x3d (0))){\nreturn x__$1;\n} else {\nreturn null;\n}\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(nx)){\nvar G__43003 \x3d nx;\nvar G__43004 \x3d (level__$1 - (1));\nx \x3d G__43003;\nlevel__$1 \x3d G__43004;\ncontinue;\n} else {\nvar G__43008 \x3d x;\nvar G__43009 \x3d (level__$1 - (1));\nx \x3d G__43008;\nlevel__$1 \x3d G__43009;\ncontinue;\n}\n} else {\nif((x \x3d\x3d\x3d self__.header)){\nreturn null;\n} else {\nreturn x;\n}\n}\nbreak;\n}\n}));\n\n(cljs.core.async.impl.timers.SkipList.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (coll){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar iter \x3d (function cljs$core$async$impl$timers$iter(node){\nreturn (new cljs.core.LazySeq(null,(function (){\nif((node \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [node.key,node.val], null),cljs$core$async$impl$timers$iter((node.forward[(0)])));\n}\n}),null,null));\n});\nreturn iter((self__.header.forward[(0)]));\n}));\n\n(cljs.core.async.impl.timers.SkipList.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (coll,writer,opts){\nvar self__ \x3d this;\nvar coll__$1 \x3d this;\nvar pr_pair \x3d (function (keyval){\nreturn cljs.core.pr_sequential_writer(writer,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts,keyval);\n});\nreturn cljs.core.pr_sequential_writer(writer,pr_pair,\x22{\x22,\x22, \x22,\x22}\x22,opts,coll__$1);\n}));\n\n(cljs.core.async.impl.timers.SkipList.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22header\x22,\x22header\x22,1759972661,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22level\x22,\x22level\x22,-1363938217,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.core.async.impl.timers.SkipList.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.timers.SkipList.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.timers/SkipList\x22);\n\n(cljs.core.async.impl.timers.SkipList.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.timers/SkipList\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.timers/SkipList.\n */\ncljs.core.async.impl.timers.__GT_SkipList \x3d (function cljs$core$async$impl$timers$__GT_SkipList(header,level){\nreturn (new cljs.core.async.impl.timers.SkipList(header,level));\n});\n\ncljs.core.async.impl.timers.skip_list \x3d (function cljs$core$async$impl$timers$skip_list(){\nreturn (new cljs.core.async.impl.timers.SkipList(cljs.core.async.impl.timers.skip_list_node.cljs$core$IFn$_invoke$arity$1((0)),(0)));\n});\ncljs.core.async.impl.timers.timeouts_map \x3d cljs.core.async.impl.timers.skip_list();\ncljs.core.async.impl.timers.TIMEOUT_RESOLUTION_MS \x3d (10);\n/**\n * returns a channel that will close after msecs\n */\ncljs.core.async.impl.timers.timeout \x3d (function cljs$core$async$impl$timers$timeout(msecs){\nvar timeout \x3d ((new Date()).valueOf() + msecs);\nvar me \x3d cljs.core.async.impl.timers.timeouts_map.ceilingEntry(timeout);\nvar or__4160__auto__ \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d me;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (me.key \x3c (timeout + cljs.core.async.impl.timers.TIMEOUT_RESOLUTION_MS));\n} else {\nreturn and__4149__auto__;\n}\n})())?me.val:null);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar timeout_channel \x3d cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$1(null);\ncljs.core.async.impl.timers.timeouts_map.put(timeout,timeout_channel);\n\ncljs.core.async.impl.dispatch.queue_delay((function (){\ncljs.core.async.impl.timers.timeouts_map.remove(timeout);\n\nreturn cljs.core.async.impl.protocols.close_BANG_(timeout_channel);\n}),msecs);\n\nreturn timeout_channel;\n}\n});\n");
SHADOW_ENV.evalLoad("cljs.core.async.impl.ioc_helpers.js", true , "goog.provide(\x27cljs.core.async.impl.ioc_helpers\x27);\ncljs.core.async.impl.ioc_helpers.FN_IDX \x3d (0);\ncljs.core.async.impl.ioc_helpers.STATE_IDX \x3d (1);\ncljs.core.async.impl.ioc_helpers.VALUE_IDX \x3d (2);\ncljs.core.async.impl.ioc_helpers.BINDINGS_IDX \x3d (3);\ncljs.core.async.impl.ioc_helpers.EXCEPTION_FRAMES \x3d (4);\ncljs.core.async.impl.ioc_helpers.CURRENT_EXCEPTION \x3d (5);\ncljs.core.async.impl.ioc_helpers.USER_START_IDX \x3d (6);\ncljs.core.async.impl.ioc_helpers.aset_object \x3d (function cljs$core$async$impl$ioc_helpers$aset_object(arr,idx,o){\nreturn (arr[idx][o]);\n});\ncljs.core.async.impl.ioc_helpers.aget_object \x3d (function cljs$core$async$impl$ioc_helpers$aget_object(arr,idx){\nreturn (arr[idx]);\n});\n/**\n * Returns true if the machine is in a finished state\n */\ncljs.core.async.impl.ioc_helpers.finished_QMARK_ \x3d (function cljs$core$async$impl$ioc_helpers$finished_QMARK_(state_array){\nreturn cljs.core.keyword_identical_QMARK_((state_array[(1)]),new cljs.core.Keyword(null,\x22finished\x22,\x22finished\x22,-1018867731));\n});\ncljs.core.async.impl.ioc_helpers.fn_handler \x3d (function cljs$core$async$impl$ioc_helpers$fn_handler(f){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl.ioc_helpers !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Handler}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777 \x3d (function (f,meta42778){\nthis.f \x3d f;\nthis.meta42778 \x3d meta42778;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_42779,meta42778__$1){\nvar self__ \x3d this;\nvar _42779__$1 \x3d this;\nreturn (new cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777(self__.f,meta42778__$1));\n}));\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_42779){\nvar self__ \x3d this;\nvar _42779__$1 \x3d this;\nreturn self__.meta42778;\n}));\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.prototype.cljs$core$async$impl$protocols$Handler$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn true;\n}));\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn true;\n}));\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.f;\n}));\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22meta42778\x22,\x22meta42778\x22,-180224788,null)], null);\n}));\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.cljs$lang$type \x3d true);\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.cljs$lang$ctorStr \x3d \x22cljs.core.async.impl.ioc-helpers/t_cljs$core$async$impl$ioc_helpers42777\x22);\n\n(cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async.impl.ioc-helpers/t_cljs$core$async$impl$ioc_helpers42777\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async.impl.ioc-helpers/t_cljs$core$async$impl$ioc_helpers42777.\n */\ncljs.core.async.impl.ioc_helpers.__GT_t_cljs$core$async$impl$ioc_helpers42777 \x3d (function cljs$core$async$impl$ioc_helpers$fn_handler_$___GT_t_cljs$core$async$impl$ioc_helpers42777(f__$1,meta42778){\nreturn (new cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777(f__$1,meta42778));\n});\n\n}\n\nreturn (new cljs.core.async.impl.ioc_helpers.t_cljs$core$async$impl$ioc_helpers42777(f,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.core.async.impl.ioc_helpers.run_state_machine \x3d (function cljs$core$async$impl$ioc_helpers$run_state_machine(state){\nvar fexpr__42849 \x3d cljs.core.async.impl.ioc_helpers.aget_object(state,(0));\nreturn (fexpr__42849.cljs$core$IFn$_invoke$arity$1 ? fexpr__42849.cljs$core$IFn$_invoke$arity$1(state) : fexpr__42849.call(null,state));\n});\ncljs.core.async.impl.ioc_helpers.run_state_machine_wrapped \x3d (function cljs$core$async$impl$ioc_helpers$run_state_machine_wrapped(state){\ntry{return cljs.core.async.impl.ioc_helpers.run_state_machine(state);\n}catch (e42863){if((e42863 instanceof Object)){\nvar ex \x3d e42863;\ncljs.core.async.impl.ioc_helpers.aget_object(state,(6)).cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1(null);\n\nthrow ex;\n} else {\nthrow e42863;\n\n}\n}});\ncljs.core.async.impl.ioc_helpers.take_BANG_ \x3d (function cljs$core$async$impl$ioc_helpers$take_BANG_(state,blk,c){\nvar temp__5751__auto__ \x3d c.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2(null,cljs.core.async.impl.ioc_helpers.fn_handler((function (x){\nvar statearr_42865_42956 \x3d state;\n(statearr_42865_42956[(2)] \x3d x);\n\n(statearr_42865_42956[(1)] \x3d blk);\n\n\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state);\n})));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar cb \x3d temp__5751__auto__;\nvar statearr_42869_42962 \x3d state;\n(statearr_42869_42962[(2)] \x3d cljs.core.deref(cb));\n\n(statearr_42869_42962[(1)] \x3d blk);\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n});\ncljs.core.async.impl.ioc_helpers.put_BANG_ \x3d (function cljs$core$async$impl$ioc_helpers$put_BANG_(state,blk,c,val){\nvar temp__5751__auto__ \x3d c.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3(null,val,cljs.core.async.impl.ioc_helpers.fn_handler((function (ret_val){\nvar statearr_42880_42964 \x3d state;\n(statearr_42880_42964[(2)] \x3d ret_val);\n\n(statearr_42880_42964[(1)] \x3d blk);\n\n\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state);\n})));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar cb \x3d temp__5751__auto__;\nvar statearr_42881_42972 \x3d state;\n(statearr_42881_42972[(2)] \x3d cljs.core.deref(cb));\n\n(statearr_42881_42972[(1)] \x3d blk);\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n});\ncljs.core.async.impl.ioc_helpers.return_chan \x3d (function cljs$core$async$impl$ioc_helpers$return_chan(state,value){\nvar c \x3d (state[(6)]);\nif((value \x3d\x3d null)){\n} else {\nc.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3(null,value,cljs.core.async.impl.ioc_helpers.fn_handler((function (){\nreturn null;\n})));\n}\n\nc.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1(null);\n\nreturn c;\n});\n");
SHADOW_ENV.evalLoad("cljs.core.async.js", true , "goog.provide(\x27cljs.core.async\x27);\ncljs.core.async.fn_handler \x3d (function cljs$core$async$fn_handler(var_args){\nvar G__43068 \x3d arguments.length;\nswitch (G__43068) {\ncase 1:\nreturn cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nreturn cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2(f,true);\n}));\n\n(cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,blockable){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async43072 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Handler}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async43072 \x3d (function (f,blockable,meta43073){\nthis.f \x3d f;\nthis.blockable \x3d blockable;\nthis.meta43073 \x3d meta43073;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async43072.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_43074,meta43073__$1){\nvar self__ \x3d this;\nvar _43074__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async43072(self__.f,self__.blockable,meta43073__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async43072.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_43074){\nvar self__ \x3d this;\nvar _43074__$1 \x3d this;\nreturn self__.meta43073;\n}));\n\n(cljs.core.async.t_cljs$core$async43072.prototype.cljs$core$async$impl$protocols$Handler$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async43072.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn true;\n}));\n\n(cljs.core.async.t_cljs$core$async43072.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.blockable;\n}));\n\n(cljs.core.async.t_cljs$core$async43072.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.f;\n}));\n\n(cljs.core.async.t_cljs$core$async43072.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22blockable\x22,\x22blockable\x22,-28395259,null),new cljs.core.Symbol(null,\x22meta43073\x22,\x22meta43073\x22,-1048628449,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async43072.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async43072.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async43072\x22);\n\n(cljs.core.async.t_cljs$core$async43072.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async43072\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async43072.\n */\ncljs.core.async.__GT_t_cljs$core$async43072 \x3d (function cljs$core$async$__GT_t_cljs$core$async43072(f__$1,blockable__$1,meta43073){\nreturn (new cljs.core.async.t_cljs$core$async43072(f__$1,blockable__$1,meta43073));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async43072(f,blockable,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(cljs.core.async.fn_handler.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a fixed buffer of size n. When full, puts will block/park.\n */\ncljs.core.async.buffer \x3d (function cljs$core$async$buffer(n){\nreturn cljs.core.async.impl.buffers.fixed_buffer(n);\n});\n/**\n * Returns a buffer of size n. When full, puts will complete but\n *   val will be dropped (no transfer).\n */\ncljs.core.async.dropping_buffer \x3d (function cljs$core$async$dropping_buffer(n){\nreturn cljs.core.async.impl.buffers.dropping_buffer(n);\n});\n/**\n * Returns a buffer of size n. When full, puts will complete, and be\n *   buffered, but oldest elements in buffer will be dropped (not\n *   transferred).\n */\ncljs.core.async.sliding_buffer \x3d (function cljs$core$async$sliding_buffer(n){\nreturn cljs.core.async.impl.buffers.sliding_buffer(n);\n});\n/**\n * Returns true if a channel created with buff will never block. That is to say,\n * puts into this buffer will never cause the buffer to be full. \n */\ncljs.core.async.unblocking_buffer_QMARK_ \x3d (function cljs$core$async$unblocking_buffer_QMARK_(buff){\nif((!((buff \x3d\x3d null)))){\nif(((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d buff.cljs$core$async$impl$protocols$UnblockingBuffer$)))){\nreturn true;\n} else {\nif((!buff.cljs$lang$protocol_mask$partition$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.async.impl.protocols.UnblockingBuffer,buff);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.async.impl.protocols.UnblockingBuffer,buff);\n}\n});\n/**\n * Creates a channel with an optional buffer, an optional transducer (like (map f),\n *   (filter p) etc or a composition thereof), and an optional exception handler.\n *   If buf-or-n is a number, will create and use a fixed buffer of that size. If a\n *   transducer is supplied a buffer must be specified. ex-handler must be a\n *   fn of one argument - if an exception occurs during transformation it will be called\n *   with the thrown value as an argument, and any non-nil return value will be placed\n *   in the channel.\n */\ncljs.core.async.chan \x3d (function cljs$core$async$chan(var_args){\nvar G__43103 \x3d arguments.length;\nswitch (G__43103) {\ncase 0:\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.chan.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(null);\n}));\n\n(cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1 \x3d (function (buf_or_n){\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3(buf_or_n,null,null);\n}));\n\n(cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2 \x3d (function (buf_or_n,xform){\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3(buf_or_n,xform,null);\n}));\n\n(cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3 \x3d (function (buf_or_n,xform,ex_handler){\nvar buf_or_n__$1 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(buf_or_n,(0)))?null:buf_or_n);\nif(cljs.core.truth_(xform)){\nif(cljs.core.truth_(buf_or_n__$1)){\n} else {\nthrow (new Error([\x22Assert failed: \x22,\x22buffer must be supplied when transducer is\x22,\x22\\n\x22,\x22buf-or-n\x22].join(\x27\x27)));\n}\n} else {\n}\n\nreturn cljs.core.async.impl.channels.chan.cljs$core$IFn$_invoke$arity$3(((typeof buf_or_n__$1 \x3d\x3d\x3d \x27number\x27)?cljs.core.async.buffer(buf_or_n__$1):buf_or_n__$1),xform,ex_handler);\n}));\n\n(cljs.core.async.chan.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Creates a promise channel with an optional transducer, and an optional\n *   exception-handler. A promise channel can take exactly one value that consumers\n *   will receive. Once full, puts complete but val is dropped (no transfer).\n *   Consumers will block until either a value is placed in the channel or the\n *   channel is closed. See chan for the semantics of xform and ex-handler.\n */\ncljs.core.async.promise_chan \x3d (function cljs$core$async$promise_chan(var_args){\nvar G__43132 \x3d arguments.length;\nswitch (G__43132) {\ncase 0:\nreturn cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1(null);\n}));\n\n(cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1 \x3d (function (xform){\nreturn cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$2(xform,null);\n}));\n\n(cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$2 \x3d (function (xform,ex_handler){\nreturn cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3(cljs.core.async.impl.buffers.promise_buffer(),xform,ex_handler);\n}));\n\n(cljs.core.async.promise_chan.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a channel that will close after msecs\n */\ncljs.core.async.timeout \x3d (function cljs$core$async$timeout(msecs){\nreturn cljs.core.async.impl.timers.timeout(msecs);\n});\n/**\n * takes a val from port. Must be called inside a (go ...) block. Will\n *   return nil if closed. Will park if nothing is available.\n *   Returns true unless port is already closed\n */\ncljs.core.async._LT__BANG_ \x3d (function cljs$core$async$_LT__BANG_(port){\nthrow (new Error(\x22\x3c! used not in (go ...) block\x22));\n});\n/**\n * Asynchronously takes a val from port, passing to fn1. Will pass nil\n * if closed. If on-caller? (default true) is true, and value is\n * immediately available, will call fn1 on calling thread.\n * Returns nil.\n */\ncljs.core.async.take_BANG_ \x3d (function cljs$core$async$take_BANG_(var_args){\nvar G__43142 \x3d arguments.length;\nswitch (G__43142) {\ncase 2:\nreturn cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (port,fn1){\nreturn cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3(port,fn1,true);\n}));\n\n(cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (port,fn1,on_caller_QMARK_){\nvar ret \x3d cljs.core.async.impl.protocols.take_BANG_(port,cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1(fn1));\nif(cljs.core.truth_(ret)){\nvar val_46444 \x3d cljs.core.deref(ret);\nif(cljs.core.truth_(on_caller_QMARK_)){\n(fn1.cljs$core$IFn$_invoke$arity$1 ? fn1.cljs$core$IFn$_invoke$arity$1(val_46444) : fn1.call(null,val_46444));\n} else {\ncljs.core.async.impl.dispatch.run((function (){\nreturn (fn1.cljs$core$IFn$_invoke$arity$1 ? fn1.cljs$core$IFn$_invoke$arity$1(val_46444) : fn1.call(null,val_46444));\n}));\n}\n} else {\n}\n\nreturn null;\n}));\n\n(cljs.core.async.take_BANG_.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.async.nop \x3d (function cljs$core$async$nop(_){\nreturn null;\n});\ncljs.core.async.fhnop \x3d cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1(cljs.core.async.nop);\n/**\n * puts a val into port. nil values are not allowed. Must be called\n *   inside a (go ...) block. Will park if no buffer space is available.\n *   Returns true unless port is already closed.\n */\ncljs.core.async._GT__BANG_ \x3d (function cljs$core$async$_GT__BANG_(port,val){\nthrow (new Error(\x22\x3e! used not in (go ...) block\x22));\n});\n/**\n * Asynchronously puts a val into port, calling fn1 (if supplied) when\n * complete. nil values are not allowed. Will throw if closed. If\n * on-caller? (default true) is true, and the put is immediately\n * accepted, will call fn1 on calling thread.  Returns nil.\n */\ncljs.core.async.put_BANG_ \x3d (function cljs$core$async$put_BANG_(var_args){\nvar G__43158 \x3d arguments.length;\nswitch (G__43158) {\ncase 2:\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (port,val){\nvar temp__5751__auto__ \x3d cljs.core.async.impl.protocols.put_BANG_(port,val,cljs.core.async.fhnop);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ret \x3d temp__5751__auto__;\nreturn cljs.core.deref(ret);\n} else {\nreturn true;\n}\n}));\n\n(cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (port,val,fn1){\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$4(port,val,fn1,true);\n}));\n\n(cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$4 \x3d (function (port,val,fn1,on_caller_QMARK_){\nvar temp__5751__auto__ \x3d cljs.core.async.impl.protocols.put_BANG_(port,val,cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1(fn1));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar retb \x3d temp__5751__auto__;\nvar ret \x3d cljs.core.deref(retb);\nif(cljs.core.truth_(on_caller_QMARK_)){\n(fn1.cljs$core$IFn$_invoke$arity$1 ? fn1.cljs$core$IFn$_invoke$arity$1(ret) : fn1.call(null,ret));\n} else {\ncljs.core.async.impl.dispatch.run((function (){\nreturn (fn1.cljs$core$IFn$_invoke$arity$1 ? fn1.cljs$core$IFn$_invoke$arity$1(ret) : fn1.call(null,ret));\n}));\n}\n\nreturn ret;\n} else {\nreturn true;\n}\n}));\n\n(cljs.core.async.put_BANG_.cljs$lang$maxFixedArity \x3d 4);\n\ncljs.core.async.close_BANG_ \x3d (function cljs$core$async$close_BANG_(port){\nreturn cljs.core.async.impl.protocols.close_BANG_(port);\n});\ncljs.core.async.random_array \x3d (function cljs$core$async$random_array(n){\nvar a \x3d (new Array(n));\nvar n__4648__auto___46470 \x3d n;\nvar x_46471 \x3d (0);\nwhile(true){\nif((x_46471 \x3c n__4648__auto___46470)){\n(a[x_46471] \x3d x_46471);\n\nvar G__46472 \x3d (x_46471 + (1));\nx_46471 \x3d G__46472;\ncontinue;\n} else {\n}\nbreak;\n}\n\ngoog.array.shuffle(a);\n\nreturn a;\n});\ncljs.core.async.alt_flag \x3d (function cljs$core$async$alt_flag(){\nvar flag \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(true);\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async43175 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Handler}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async43175 \x3d (function (flag,meta43176){\nthis.flag \x3d flag;\nthis.meta43176 \x3d meta43176;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async43175.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_43177,meta43176__$1){\nvar self__ \x3d this;\nvar _43177__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async43175(self__.flag,meta43176__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async43175.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_43177){\nvar self__ \x3d this;\nvar _43177__$1 \x3d this;\nreturn self__.meta43176;\n}));\n\n(cljs.core.async.t_cljs$core$async43175.prototype.cljs$core$async$impl$protocols$Handler$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async43175.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.deref(self__.flag);\n}));\n\n(cljs.core.async.t_cljs$core$async43175.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn true;\n}));\n\n(cljs.core.async.t_cljs$core$async43175.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.reset_BANG_(self__.flag,null);\n\nreturn true;\n}));\n\n(cljs.core.async.t_cljs$core$async43175.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22flag\x22,\x22flag\x22,-1565787888,null),new cljs.core.Symbol(null,\x22meta43176\x22,\x22meta43176\x22,1202669898,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async43175.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async43175.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async43175\x22);\n\n(cljs.core.async.t_cljs$core$async43175.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async43175\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async43175.\n */\ncljs.core.async.__GT_t_cljs$core$async43175 \x3d (function cljs$core$async$alt_flag_$___GT_t_cljs$core$async43175(flag__$1,meta43176){\nreturn (new cljs.core.async.t_cljs$core$async43175(flag__$1,meta43176));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async43175(flag,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.core.async.alt_handler \x3d (function cljs$core$async$alt_handler(flag,cb){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async43184 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Handler}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async43184 \x3d (function (flag,cb,meta43185){\nthis.flag \x3d flag;\nthis.cb \x3d cb;\nthis.meta43185 \x3d meta43185;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async43184.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_43186,meta43185__$1){\nvar self__ \x3d this;\nvar _43186__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async43184(self__.flag,self__.cb,meta43185__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async43184.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_43186){\nvar self__ \x3d this;\nvar _43186__$1 \x3d this;\nreturn self__.meta43185;\n}));\n\n(cljs.core.async.t_cljs$core$async43184.prototype.cljs$core$async$impl$protocols$Handler$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async43184.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.active_QMARK_(self__.flag);\n}));\n\n(cljs.core.async.t_cljs$core$async43184.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn true;\n}));\n\n(cljs.core.async.t_cljs$core$async43184.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.async.impl.protocols.commit(self__.flag);\n\nreturn self__.cb;\n}));\n\n(cljs.core.async.t_cljs$core$async43184.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22flag\x22,\x22flag\x22,-1565787888,null),new cljs.core.Symbol(null,\x22cb\x22,\x22cb\x22,-2064487928,null),new cljs.core.Symbol(null,\x22meta43185\x22,\x22meta43185\x22,-536433121,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async43184.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async43184.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async43184\x22);\n\n(cljs.core.async.t_cljs$core$async43184.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async43184\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async43184.\n */\ncljs.core.async.__GT_t_cljs$core$async43184 \x3d (function cljs$core$async$alt_handler_$___GT_t_cljs$core$async43184(flag__$1,cb__$1,meta43185){\nreturn (new cljs.core.async.t_cljs$core$async43184(flag__$1,cb__$1,meta43185));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async43184(flag,cb,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * returns derefable [val port] if immediate, nil if enqueued\n */\ncljs.core.async.do_alts \x3d (function cljs$core$async$do_alts(fret,ports,opts){\nif((cljs.core.count(ports) \x3e (0))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,\x22alts must have at least one channel operation\x22,\x22\\n\x22,\x22(pos? (count ports))\x22].join(\x27\x27)));\n}\n\nvar flag \x3d cljs.core.async.alt_flag();\nvar n \x3d cljs.core.count(ports);\nvar idxs \x3d cljs.core.async.random_array(n);\nvar priority \x3d new cljs.core.Keyword(null,\x22priority\x22,\x22priority\x22,1431093715).cljs$core$IFn$_invoke$arity$1(opts);\nvar ret \x3d (function (){var i \x3d (0);\nwhile(true){\nif((i \x3c n)){\nvar idx \x3d (cljs.core.truth_(priority)?i:(idxs[i]));\nvar port \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(ports,idx);\nvar wport \x3d ((cljs.core.vector_QMARK_(port))?(port.cljs$core$IFn$_invoke$arity$1 ? port.cljs$core$IFn$_invoke$arity$1((0)) : port.call(null,(0))):null);\nvar vbox \x3d (cljs.core.truth_(wport)?(function (){var val \x3d (port.cljs$core$IFn$_invoke$arity$1 ? port.cljs$core$IFn$_invoke$arity$1((1)) : port.call(null,(1)));\nreturn cljs.core.async.impl.protocols.put_BANG_(wport,val,cljs.core.async.alt_handler(flag,((function (i,val,idx,port,wport,flag,n,idxs,priority){\nreturn (function (p1__43193_SHARP_){\nvar G__43197 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__43193_SHARP_,wport], null);\nreturn (fret.cljs$core$IFn$_invoke$arity$1 ? fret.cljs$core$IFn$_invoke$arity$1(G__43197) : fret.call(null,G__43197));\n});})(i,val,idx,port,wport,flag,n,idxs,priority))\n));\n})():cljs.core.async.impl.protocols.take_BANG_(port,cljs.core.async.alt_handler(flag,((function (i,idx,port,wport,flag,n,idxs,priority){\nreturn (function (p1__43194_SHARP_){\nvar G__43198 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__43194_SHARP_,port], null);\nreturn (fret.cljs$core$IFn$_invoke$arity$1 ? fret.cljs$core$IFn$_invoke$arity$1(G__43198) : fret.call(null,G__43198));\n});})(i,idx,port,wport,flag,n,idxs,priority))\n)));\nif(cljs.core.truth_(vbox)){\nreturn cljs.core.async.impl.channels.box(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.deref(vbox),(function (){var or__4160__auto__ \x3d wport;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn port;\n}\n})()], null));\n} else {\nvar G__46501 \x3d (i + (1));\ni \x3d G__46501;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n})();\nvar or__4160__auto__ \x3d ret;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nif(cljs.core.contains_QMARK_(opts,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328))){\nvar temp__5753__auto__ \x3d (function (){var and__4149__auto__ \x3d flag.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1(null);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn flag.cljs$core$async$impl$protocols$Handler$commit$arity$1(null);\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(temp__5753__auto__)){\nvar got \x3d temp__5753__auto__;\nreturn cljs.core.async.impl.channels.box(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328).cljs$core$IFn$_invoke$arity$1(opts),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328)], null));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}\n});\n/**\n * Completes at most one of several channel operations. Must be called\n * inside a (go ...) block. ports is a vector of channel endpoints,\n * which can be either a channel to take from or a vector of\n *   [channel-to-put-to val-to-put], in any combination. Takes will be\n *   made as if by \x3c!, and puts will be made as if by \x3e!. Unless\n *   the :priority option is true, if more than one port operation is\n *   ready a non-deterministic choice will be made. If no operation is\n *   ready and a :default value is supplied, [default-val :default] will\n *   be returned, otherwise alts! will park until the first operation to\n *   become ready completes. Returns [val port] of the completed\n *   operation, where val is the value taken for takes, and a\n *   boolean (true unless already closed, as per put!) for puts.\n * \n *   opts are passed as :key val ... Supported options:\n * \n *   :default val - the value to use if none of the operations are immediately ready\n *   :priority true - (default nil) when true, the operations will be tried in order.\n * \n *   Note: there is no guarantee that the port exps or val exprs will be\n *   used, nor in what order should they be, so they should not be\n *   depended upon for side effects.\n */\ncljs.core.async.alts_BANG_ \x3d (function cljs$core$async$alts_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46506 \x3d arguments.length;\nvar i__4772__auto___46507 \x3d (0);\nwhile(true){\nif((i__4772__auto___46507 \x3c len__4771__auto___46506)){\nargs__4777__auto__.push((arguments[i__4772__auto___46507]));\n\nvar G__46510 \x3d (i__4772__auto___46507 + (1));\ni__4772__auto___46507 \x3d G__46510;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ports,p__43212){\nvar map__43213 \x3d p__43212;\nvar map__43213__$1 \x3d cljs.core.__destructure_map(map__43213);\nvar opts \x3d map__43213__$1;\nthrow (new Error(\x22alts! used not in (go ...) block\x22));\n}));\n\n(cljs.core.async.alts_BANG_.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(cljs.core.async.alts_BANG_.cljs$lang$applyTo \x3d (function (seq43199){\nvar G__43200 \x3d cljs.core.first(seq43199);\nvar seq43199__$1 \x3d cljs.core.next(seq43199);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__43200,seq43199__$1);\n}));\n\n/**\n * Puts a val into port if it\x27s possible to do so immediately.\n *   nil values are not allowed. Never blocks. Returns true if offer succeeds.\n */\ncljs.core.async.offer_BANG_ \x3d (function cljs$core$async$offer_BANG_(port,val){\nvar ret \x3d cljs.core.async.impl.protocols.put_BANG_(port,val,cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2(cljs.core.async.nop,false));\nif(cljs.core.truth_(ret)){\nreturn cljs.core.deref(ret);\n} else {\nreturn null;\n}\n});\n/**\n * Takes a val from port if it\x27s possible to do so immediately.\n *   Never blocks. Returns value if successful, nil otherwise.\n */\ncljs.core.async.poll_BANG_ \x3d (function cljs$core$async$poll_BANG_(port){\nvar ret \x3d cljs.core.async.impl.protocols.take_BANG_(port,cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2(cljs.core.async.nop,false));\nif(cljs.core.truth_(ret)){\nreturn cljs.core.deref(ret);\n} else {\nreturn null;\n}\n});\n/**\n * Takes elements from the from channel and supplies them to the to\n * channel. By default, the to channel will be closed when the from\n * channel closes, but can be determined by the close?  parameter. Will\n * stop consuming the from channel if the to channel closes\n */\ncljs.core.async.pipe \x3d (function cljs$core$async$pipe(var_args){\nvar G__43251 \x3d arguments.length;\nswitch (G__43251) {\ncase 2:\nreturn cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$2 \x3d (function (from,to){\nreturn cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3(from,to,true);\n}));\n\n(cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3 \x3d (function (from,to,close_QMARK_){\nvar c__42953__auto___46521 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_43355){\nvar state_val_43356 \x3d (state_43355[(1)]);\nif((state_val_43356 \x3d\x3d\x3d (7))){\nvar inst_43332 \x3d (state_43355[(2)]);\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43386_46526 \x3d state_43355__$1;\n(statearr_43386_46526[(2)] \x3d inst_43332);\n\n(statearr_43386_46526[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (1))){\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43388_46529 \x3d state_43355__$1;\n(statearr_43388_46529[(2)] \x3d null);\n\n(statearr_43388_46529[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (4))){\nvar inst_43304 \x3d (state_43355[(7)]);\nvar inst_43304__$1 \x3d (state_43355[(2)]);\nvar inst_43307 \x3d (inst_43304__$1 \x3d\x3d null);\nvar state_43355__$1 \x3d (function (){var statearr_43389 \x3d state_43355;\n(statearr_43389[(7)] \x3d inst_43304__$1);\n\nreturn statearr_43389;\n})();\nif(cljs.core.truth_(inst_43307)){\nvar statearr_43391_46531 \x3d state_43355__$1;\n(statearr_43391_46531[(1)] \x3d (5));\n\n} else {\nvar statearr_43392_46532 \x3d state_43355__$1;\n(statearr_43392_46532[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (13))){\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43395_46538 \x3d state_43355__$1;\n(statearr_43395_46538[(2)] \x3d null);\n\n(statearr_43395_46538[(1)] \x3d (14));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (6))){\nvar inst_43304 \x3d (state_43355[(7)]);\nvar state_43355__$1 \x3d state_43355;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_43355__$1,(11),to,inst_43304);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (3))){\nvar inst_43340 \x3d (state_43355[(2)]);\nvar state_43355__$1 \x3d state_43355;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43355__$1,inst_43340);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (12))){\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43409_46549 \x3d state_43355__$1;\n(statearr_43409_46549[(2)] \x3d null);\n\n(statearr_43409_46549[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (2))){\nvar state_43355__$1 \x3d state_43355;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43355__$1,(4),from);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (11))){\nvar inst_43317 \x3d (state_43355[(2)]);\nvar state_43355__$1 \x3d state_43355;\nif(cljs.core.truth_(inst_43317)){\nvar statearr_43412_46557 \x3d state_43355__$1;\n(statearr_43412_46557[(1)] \x3d (12));\n\n} else {\nvar statearr_43417_46560 \x3d state_43355__$1;\n(statearr_43417_46560[(1)] \x3d (13));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (9))){\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43420_46561 \x3d state_43355__$1;\n(statearr_43420_46561[(2)] \x3d null);\n\n(statearr_43420_46561[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (5))){\nvar state_43355__$1 \x3d state_43355;\nif(cljs.core.truth_(close_QMARK_)){\nvar statearr_43423_46565 \x3d state_43355__$1;\n(statearr_43423_46565[(1)] \x3d (8));\n\n} else {\nvar statearr_43424_46567 \x3d state_43355__$1;\n(statearr_43424_46567[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (14))){\nvar inst_43330 \x3d (state_43355[(2)]);\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43426_46568 \x3d state_43355__$1;\n(statearr_43426_46568[(2)] \x3d inst_43330);\n\n(statearr_43426_46568[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (10))){\nvar inst_43314 \x3d (state_43355[(2)]);\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43430_46569 \x3d state_43355__$1;\n(statearr_43430_46569[(2)] \x3d inst_43314);\n\n(statearr_43430_46569[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43356 \x3d\x3d\x3d (8))){\nvar inst_43310 \x3d cljs.core.async.close_BANG_(to);\nvar state_43355__$1 \x3d state_43355;\nvar statearr_43432_46573 \x3d state_43355__$1;\n(statearr_43432_46573[(2)] \x3d inst_43310);\n\n(statearr_43432_46573[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43434 \x3d [null,null,null,null,null,null,null,null];\n(statearr_43434[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_43434[(1)] \x3d (1));\n\nreturn statearr_43434;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_43355){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43355);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43435){var ex__42707__auto__ \x3d e43435;\nvar statearr_43437_46576 \x3d state_43355;\n(statearr_43437_46576[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43355[(4)]))){\nvar statearr_43438_46577 \x3d state_43355;\n(statearr_43438_46577[(1)] \x3d cljs.core.first((state_43355[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46579 \x3d state_43355;\nstate_43355 \x3d G__46579;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_43355){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_43355);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43441 \x3d f__42954__auto__();\n(statearr_43441[(6)] \x3d c__42953__auto___46521);\n\nreturn statearr_43441;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn to;\n}));\n\n(cljs.core.async.pipe.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.async.pipeline_STAR_ \x3d (function cljs$core$async$pipeline_STAR_(n,to,xf,from,close_QMARK_,ex_handler,type){\nif((n \x3e (0))){\n} else {\nthrow (new Error(\x22Assert failed: (pos? n)\x22));\n}\n\nvar jobs \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(n);\nvar results \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(n);\nvar process \x3d (function (p__43470){\nvar vec__43472 \x3d p__43470;\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43472,(0),null);\nvar p \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43472,(1),null);\nvar job \x3d vec__43472;\nif((job \x3d\x3d null)){\ncljs.core.async.close_BANG_(results);\n\nreturn null;\n} else {\nvar res \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3((1),xf,ex_handler);\nvar c__42953__auto___46588 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_43481){\nvar state_val_43482 \x3d (state_43481[(1)]);\nif((state_val_43482 \x3d\x3d\x3d (1))){\nvar state_43481__$1 \x3d state_43481;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_43481__$1,(2),res,v);\n} else {\nif((state_val_43482 \x3d\x3d\x3d (2))){\nvar inst_43478 \x3d (state_43481[(2)]);\nvar inst_43479 \x3d cljs.core.async.close_BANG_(res);\nvar state_43481__$1 \x3d (function (){var statearr_43491 \x3d state_43481;\n(statearr_43491[(7)] \x3d inst_43478);\n\nreturn statearr_43491;\n})();\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43481__$1,inst_43479);\n} else {\nreturn null;\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43494 \x3d [null,null,null,null,null,null,null,null];\n(statearr_43494[(0)] \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__);\n\n(statearr_43494[(1)] \x3d (1));\n\nreturn statearr_43494;\n});\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1 \x3d (function (state_43481){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43481);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43496){var ex__42707__auto__ \x3d e43496;\nvar statearr_43497_46595 \x3d state_43481;\n(statearr_43497_46595[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43481[(4)]))){\nvar statearr_43498_46597 \x3d state_43481;\n(statearr_43498_46597[(1)] \x3d cljs.core.first((state_43481[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46599 \x3d state_43481;\nstate_43481 \x3d G__46599;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d function(state_43481){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1.call(this,state_43481);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0;\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1;\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43502 \x3d f__42954__auto__();\n(statearr_43502[(6)] \x3d c__42953__auto___46588);\n\nreturn statearr_43502;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\ncljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(p,res);\n\nreturn true;\n}\n});\nvar async \x3d (function (p__43506){\nvar vec__43508 \x3d p__43506;\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43508,(0),null);\nvar p \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43508,(1),null);\nvar job \x3d vec__43508;\nif((job \x3d\x3d null)){\ncljs.core.async.close_BANG_(results);\n\nreturn null;\n} else {\nvar res \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\n(xf.cljs$core$IFn$_invoke$arity$2 ? xf.cljs$core$IFn$_invoke$arity$2(v,res) : xf.call(null,v,res));\n\ncljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(p,res);\n\nreturn true;\n}\n});\nvar n__4648__auto___46605 \x3d n;\nvar __46606 \x3d (0);\nwhile(true){\nif((__46606 \x3c n__4648__auto___46605)){\nvar G__43514_46607 \x3d type;\nvar G__43514_46608__$1 \x3d (((G__43514_46607 instanceof cljs.core.Keyword))?G__43514_46607.fqn:null);\nswitch (G__43514_46608__$1) {\ncase \x22compute\x22:\nvar c__42953__auto___46610 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run(((function (__46606,c__42953__auto___46610,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async){\nreturn (function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d ((function (__46606,c__42953__auto___46610,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async){\nreturn (function (state_43534){\nvar state_val_43535 \x3d (state_43534[(1)]);\nif((state_val_43535 \x3d\x3d\x3d (1))){\nvar state_43534__$1 \x3d state_43534;\nvar statearr_43542_46615 \x3d state_43534__$1;\n(statearr_43542_46615[(2)] \x3d null);\n\n(statearr_43542_46615[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43535 \x3d\x3d\x3d (2))){\nvar state_43534__$1 \x3d state_43534;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43534__$1,(4),jobs);\n} else {\nif((state_val_43535 \x3d\x3d\x3d (3))){\nvar inst_43532 \x3d (state_43534[(2)]);\nvar state_43534__$1 \x3d state_43534;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43534__$1,inst_43532);\n} else {\nif((state_val_43535 \x3d\x3d\x3d (4))){\nvar inst_43522 \x3d (state_43534[(2)]);\nvar inst_43523 \x3d process(inst_43522);\nvar state_43534__$1 \x3d state_43534;\nif(cljs.core.truth_(inst_43523)){\nvar statearr_43547_46622 \x3d state_43534__$1;\n(statearr_43547_46622[(1)] \x3d (5));\n\n} else {\nvar statearr_43549_46623 \x3d state_43534__$1;\n(statearr_43549_46623[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43535 \x3d\x3d\x3d (5))){\nvar state_43534__$1 \x3d state_43534;\nvar statearr_43550_46626 \x3d state_43534__$1;\n(statearr_43550_46626[(2)] \x3d null);\n\n(statearr_43550_46626[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43535 \x3d\x3d\x3d (6))){\nvar state_43534__$1 \x3d state_43534;\nvar statearr_43551_46628 \x3d state_43534__$1;\n(statearr_43551_46628[(2)] \x3d null);\n\n(statearr_43551_46628[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43535 \x3d\x3d\x3d (7))){\nvar inst_43528 \x3d (state_43534[(2)]);\nvar state_43534__$1 \x3d state_43534;\nvar statearr_43557_46631 \x3d state_43534__$1;\n(statearr_43557_46631[(2)] \x3d inst_43528);\n\n(statearr_43557_46631[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n});})(__46606,c__42953__auto___46610,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async))\n;\nreturn ((function (__46606,switch__42702__auto__,c__42953__auto___46610,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async){\nreturn (function() {\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43560 \x3d [null,null,null,null,null,null,null];\n(statearr_43560[(0)] \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__);\n\n(statearr_43560[(1)] \x3d (1));\n\nreturn statearr_43560;\n});\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1 \x3d (function (state_43534){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43534);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43563){var ex__42707__auto__ \x3d e43563;\nvar statearr_43565_46637 \x3d state_43534;\n(statearr_43565_46637[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43534[(4)]))){\nvar statearr_43568_46639 \x3d state_43534;\n(statearr_43568_46639[(1)] \x3d cljs.core.first((state_43534[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46642 \x3d state_43534;\nstate_43534 \x3d G__46642;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d function(state_43534){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1.call(this,state_43534);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0;\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1;\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__;\n})()\n;})(__46606,switch__42702__auto__,c__42953__auto___46610,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async))\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43573 \x3d f__42954__auto__();\n(statearr_43573[(6)] \x3d c__42953__auto___46610);\n\nreturn statearr_43573;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n});})(__46606,c__42953__auto___46610,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async))\n);\n\n\nbreak;\ncase \x22async\x22:\nvar c__42953__auto___46644 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run(((function (__46606,c__42953__auto___46644,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async){\nreturn (function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d ((function (__46606,c__42953__auto___46644,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async){\nreturn (function (state_43587){\nvar state_val_43588 \x3d (state_43587[(1)]);\nif((state_val_43588 \x3d\x3d\x3d (1))){\nvar state_43587__$1 \x3d state_43587;\nvar statearr_43597_46648 \x3d state_43587__$1;\n(statearr_43597_46648[(2)] \x3d null);\n\n(statearr_43597_46648[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43588 \x3d\x3d\x3d (2))){\nvar state_43587__$1 \x3d state_43587;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43587__$1,(4),jobs);\n} else {\nif((state_val_43588 \x3d\x3d\x3d (3))){\nvar inst_43585 \x3d (state_43587[(2)]);\nvar state_43587__$1 \x3d state_43587;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43587__$1,inst_43585);\n} else {\nif((state_val_43588 \x3d\x3d\x3d (4))){\nvar inst_43577 \x3d (state_43587[(2)]);\nvar inst_43578 \x3d async(inst_43577);\nvar state_43587__$1 \x3d state_43587;\nif(cljs.core.truth_(inst_43578)){\nvar statearr_43601_46653 \x3d state_43587__$1;\n(statearr_43601_46653[(1)] \x3d (5));\n\n} else {\nvar statearr_43602_46654 \x3d state_43587__$1;\n(statearr_43602_46654[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43588 \x3d\x3d\x3d (5))){\nvar state_43587__$1 \x3d state_43587;\nvar statearr_43604_46656 \x3d state_43587__$1;\n(statearr_43604_46656[(2)] \x3d null);\n\n(statearr_43604_46656[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43588 \x3d\x3d\x3d (6))){\nvar state_43587__$1 \x3d state_43587;\nvar statearr_43607_46659 \x3d state_43587__$1;\n(statearr_43607_46659[(2)] \x3d null);\n\n(statearr_43607_46659[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43588 \x3d\x3d\x3d (7))){\nvar inst_43583 \x3d (state_43587[(2)]);\nvar state_43587__$1 \x3d state_43587;\nvar statearr_43608_46662 \x3d state_43587__$1;\n(statearr_43608_46662[(2)] \x3d inst_43583);\n\n(statearr_43608_46662[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n});})(__46606,c__42953__auto___46644,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async))\n;\nreturn ((function (__46606,switch__42702__auto__,c__42953__auto___46644,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async){\nreturn (function() {\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43610 \x3d [null,null,null,null,null,null,null];\n(statearr_43610[(0)] \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__);\n\n(statearr_43610[(1)] \x3d (1));\n\nreturn statearr_43610;\n});\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1 \x3d (function (state_43587){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43587);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43611){var ex__42707__auto__ \x3d e43611;\nvar statearr_43612_46667 \x3d state_43587;\n(statearr_43612_46667[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43587[(4)]))){\nvar statearr_43614_46671 \x3d state_43587;\n(statearr_43614_46671[(1)] \x3d cljs.core.first((state_43587[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46672 \x3d state_43587;\nstate_43587 \x3d G__46672;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d function(state_43587){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1.call(this,state_43587);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0;\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1;\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__;\n})()\n;})(__46606,switch__42702__auto__,c__42953__auto___46644,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async))\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43621 \x3d f__42954__auto__();\n(statearr_43621[(6)] \x3d c__42953__auto___46644);\n\nreturn statearr_43621;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n});})(__46606,c__42953__auto___46644,G__43514_46607,G__43514_46608__$1,n__4648__auto___46605,jobs,results,process,async))\n);\n\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__43514_46608__$1)].join(\x27\x27)));\n\n}\n\nvar G__46678 \x3d (__46606 + (1));\n__46606 \x3d G__46678;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar c__42953__auto___46679 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_43648){\nvar state_val_43650 \x3d (state_43648[(1)]);\nif((state_val_43650 \x3d\x3d\x3d (7))){\nvar inst_43644 \x3d (state_43648[(2)]);\nvar state_43648__$1 \x3d state_43648;\nvar statearr_43655_46682 \x3d state_43648__$1;\n(statearr_43655_46682[(2)] \x3d inst_43644);\n\n(statearr_43655_46682[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (1))){\nvar state_43648__$1 \x3d state_43648;\nvar statearr_43656_46685 \x3d state_43648__$1;\n(statearr_43656_46685[(2)] \x3d null);\n\n(statearr_43656_46685[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (4))){\nvar inst_43625 \x3d (state_43648[(7)]);\nvar inst_43625__$1 \x3d (state_43648[(2)]);\nvar inst_43628 \x3d (inst_43625__$1 \x3d\x3d null);\nvar state_43648__$1 \x3d (function (){var statearr_43666 \x3d state_43648;\n(statearr_43666[(7)] \x3d inst_43625__$1);\n\nreturn statearr_43666;\n})();\nif(cljs.core.truth_(inst_43628)){\nvar statearr_43668_46688 \x3d state_43648__$1;\n(statearr_43668_46688[(1)] \x3d (5));\n\n} else {\nvar statearr_43669_46690 \x3d state_43648__$1;\n(statearr_43669_46690[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (6))){\nvar inst_43633 \x3d (state_43648[(8)]);\nvar inst_43625 \x3d (state_43648[(7)]);\nvar inst_43633__$1 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\nvar inst_43635 \x3d cljs.core.PersistentVector.EMPTY_NODE;\nvar inst_43636 \x3d [inst_43625,inst_43633__$1];\nvar inst_43637 \x3d (new cljs.core.PersistentVector(null,2,(5),inst_43635,inst_43636,null));\nvar state_43648__$1 \x3d (function (){var statearr_43677 \x3d state_43648;\n(statearr_43677[(8)] \x3d inst_43633__$1);\n\nreturn statearr_43677;\n})();\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_43648__$1,(8),jobs,inst_43637);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (3))){\nvar inst_43646 \x3d (state_43648[(2)]);\nvar state_43648__$1 \x3d state_43648;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43648__$1,inst_43646);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (2))){\nvar state_43648__$1 \x3d state_43648;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43648__$1,(4),from);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (9))){\nvar inst_43641 \x3d (state_43648[(2)]);\nvar state_43648__$1 \x3d (function (){var statearr_43678 \x3d state_43648;\n(statearr_43678[(9)] \x3d inst_43641);\n\nreturn statearr_43678;\n})();\nvar statearr_43679_46696 \x3d state_43648__$1;\n(statearr_43679_46696[(2)] \x3d null);\n\n(statearr_43679_46696[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (5))){\nvar inst_43630 \x3d cljs.core.async.close_BANG_(jobs);\nvar state_43648__$1 \x3d state_43648;\nvar statearr_43680_46701 \x3d state_43648__$1;\n(statearr_43680_46701[(2)] \x3d inst_43630);\n\n(statearr_43680_46701[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43650 \x3d\x3d\x3d (8))){\nvar inst_43633 \x3d (state_43648[(8)]);\nvar inst_43639 \x3d (state_43648[(2)]);\nvar state_43648__$1 \x3d (function (){var statearr_43685 \x3d state_43648;\n(statearr_43685[(10)] \x3d inst_43639);\n\nreturn statearr_43685;\n})();\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_43648__$1,(9),results,inst_43633);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43687 \x3d [null,null,null,null,null,null,null,null,null,null,null];\n(statearr_43687[(0)] \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__);\n\n(statearr_43687[(1)] \x3d (1));\n\nreturn statearr_43687;\n});\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1 \x3d (function (state_43648){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43648);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43688){var ex__42707__auto__ \x3d e43688;\nvar statearr_43689_46708 \x3d state_43648;\n(statearr_43689_46708[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43648[(4)]))){\nvar statearr_43690_46711 \x3d state_43648;\n(statearr_43690_46711[(1)] \x3d cljs.core.first((state_43648[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46716 \x3d state_43648;\nstate_43648 \x3d G__46716;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d function(state_43648){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1.call(this,state_43648);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0;\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1;\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43691 \x3d f__42954__auto__();\n(statearr_43691[(6)] \x3d c__42953__auto___46679);\n\nreturn statearr_43691;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_43735){\nvar state_val_43736 \x3d (state_43735[(1)]);\nif((state_val_43736 \x3d\x3d\x3d (7))){\nvar inst_43731 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43737_46721 \x3d state_43735__$1;\n(statearr_43737_46721[(2)] \x3d inst_43731);\n\n(statearr_43737_46721[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (20))){\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43738_46722 \x3d state_43735__$1;\n(statearr_43738_46722[(2)] \x3d null);\n\n(statearr_43738_46722[(1)] \x3d (21));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (1))){\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43739_46725 \x3d state_43735__$1;\n(statearr_43739_46725[(2)] \x3d null);\n\n(statearr_43739_46725[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (4))){\nvar inst_43694 \x3d (state_43735[(7)]);\nvar inst_43694__$1 \x3d (state_43735[(2)]);\nvar inst_43695 \x3d (inst_43694__$1 \x3d\x3d null);\nvar state_43735__$1 \x3d (function (){var statearr_43744 \x3d state_43735;\n(statearr_43744[(7)] \x3d inst_43694__$1);\n\nreturn statearr_43744;\n})();\nif(cljs.core.truth_(inst_43695)){\nvar statearr_43745_46729 \x3d state_43735__$1;\n(statearr_43745_46729[(1)] \x3d (5));\n\n} else {\nvar statearr_43746_46730 \x3d state_43735__$1;\n(statearr_43746_46730[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (15))){\nvar inst_43710 \x3d (state_43735[(8)]);\nvar state_43735__$1 \x3d state_43735;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_43735__$1,(18),to,inst_43710);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (21))){\nvar inst_43726 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43752_46735 \x3d state_43735__$1;\n(statearr_43752_46735[(2)] \x3d inst_43726);\n\n(statearr_43752_46735[(1)] \x3d (13));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (13))){\nvar inst_43728 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d (function (){var statearr_43754 \x3d state_43735;\n(statearr_43754[(9)] \x3d inst_43728);\n\nreturn statearr_43754;\n})();\nvar statearr_43755_46737 \x3d state_43735__$1;\n(statearr_43755_46737[(2)] \x3d null);\n\n(statearr_43755_46737[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (6))){\nvar inst_43694 \x3d (state_43735[(7)]);\nvar state_43735__$1 \x3d state_43735;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43735__$1,(11),inst_43694);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (17))){\nvar inst_43721 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d state_43735;\nif(cljs.core.truth_(inst_43721)){\nvar statearr_43757_46740 \x3d state_43735__$1;\n(statearr_43757_46740[(1)] \x3d (19));\n\n} else {\nvar statearr_43758_46745 \x3d state_43735__$1;\n(statearr_43758_46745[(1)] \x3d (20));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (3))){\nvar inst_43733 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d state_43735;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43735__$1,inst_43733);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (12))){\nvar inst_43706 \x3d (state_43735[(10)]);\nvar state_43735__$1 \x3d state_43735;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43735__$1,(14),inst_43706);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (2))){\nvar state_43735__$1 \x3d state_43735;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43735__$1,(4),results);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (19))){\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43763_46748 \x3d state_43735__$1;\n(statearr_43763_46748[(2)] \x3d null);\n\n(statearr_43763_46748[(1)] \x3d (12));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (11))){\nvar inst_43706 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d (function (){var statearr_43767 \x3d state_43735;\n(statearr_43767[(10)] \x3d inst_43706);\n\nreturn statearr_43767;\n})();\nvar statearr_43768_46753 \x3d state_43735__$1;\n(statearr_43768_46753[(2)] \x3d null);\n\n(statearr_43768_46753[(1)] \x3d (12));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (9))){\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43769_46754 \x3d state_43735__$1;\n(statearr_43769_46754[(2)] \x3d null);\n\n(statearr_43769_46754[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (5))){\nvar state_43735__$1 \x3d state_43735;\nif(cljs.core.truth_(close_QMARK_)){\nvar statearr_43773_46756 \x3d state_43735__$1;\n(statearr_43773_46756[(1)] \x3d (8));\n\n} else {\nvar statearr_43775_46758 \x3d state_43735__$1;\n(statearr_43775_46758[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (14))){\nvar inst_43710 \x3d (state_43735[(8)]);\nvar inst_43710__$1 \x3d (state_43735[(2)]);\nvar inst_43713 \x3d (inst_43710__$1 \x3d\x3d null);\nvar inst_43714 \x3d cljs.core.not(inst_43713);\nvar state_43735__$1 \x3d (function (){var statearr_43780 \x3d state_43735;\n(statearr_43780[(8)] \x3d inst_43710__$1);\n\nreturn statearr_43780;\n})();\nif(inst_43714){\nvar statearr_43781_46761 \x3d state_43735__$1;\n(statearr_43781_46761[(1)] \x3d (15));\n\n} else {\nvar statearr_43782_46762 \x3d state_43735__$1;\n(statearr_43782_46762[(1)] \x3d (16));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (16))){\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43783_46763 \x3d state_43735__$1;\n(statearr_43783_46763[(2)] \x3d false);\n\n(statearr_43783_46763[(1)] \x3d (17));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (10))){\nvar inst_43703 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43788_46768 \x3d state_43735__$1;\n(statearr_43788_46768[(2)] \x3d inst_43703);\n\n(statearr_43788_46768[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (18))){\nvar inst_43718 \x3d (state_43735[(2)]);\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43793_46770 \x3d state_43735__$1;\n(statearr_43793_46770[(2)] \x3d inst_43718);\n\n(statearr_43793_46770[(1)] \x3d (17));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43736 \x3d\x3d\x3d (8))){\nvar inst_43700 \x3d cljs.core.async.close_BANG_(to);\nvar state_43735__$1 \x3d state_43735;\nvar statearr_43794_46775 \x3d state_43735__$1;\n(statearr_43794_46775[(2)] \x3d inst_43700);\n\n(statearr_43794_46775[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43796 \x3d [null,null,null,null,null,null,null,null,null,null,null];\n(statearr_43796[(0)] \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__);\n\n(statearr_43796[(1)] \x3d (1));\n\nreturn statearr_43796;\n});\nvar cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1 \x3d (function (state_43735){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43735);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43804){var ex__42707__auto__ \x3d e43804;\nvar statearr_43805_46788 \x3d state_43735;\n(statearr_43805_46788[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43735[(4)]))){\nvar statearr_43806_46789 \x3d state_43735;\n(statearr_43806_46789[(1)] \x3d cljs.core.first((state_43735[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46798 \x3d state_43735;\nstate_43735 \x3d G__46798;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__ \x3d function(state_43735){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1.call(this,state_43735);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____0;\ncljs$core$async$pipeline_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$pipeline_STAR__$_state_machine__42703__auto____1;\nreturn cljs$core$async$pipeline_STAR__$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43808 \x3d f__42954__auto__();\n(statearr_43808[(6)] \x3d c__42953__auto__);\n\nreturn statearr_43808;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n});\n/**\n * Takes elements from the from channel and supplies them to the to\n *   channel, subject to the async function af, with parallelism n. af\n *   must be a function of two arguments, the first an input value and\n *   the second a channel on which to place the result(s). af must close!\n *   the channel before returning.  The presumption is that af will\n *   return immediately, having launched some asynchronous operation\n *   whose completion/callback will manipulate the result channel. Outputs\n *   will be returned in order relative to  the inputs. By default, the to\n *   channel will be closed when the from channel closes, but can be\n *   determined by the close?  parameter. Will stop consuming the from\n *   channel if the to channel closes.\n */\ncljs.core.async.pipeline_async \x3d (function cljs$core$async$pipeline_async(var_args){\nvar G__43814 \x3d arguments.length;\nswitch (G__43814) {\ncase 4:\nreturn cljs.core.async.pipeline_async.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.async.pipeline_async.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.pipeline_async.cljs$core$IFn$_invoke$arity$4 \x3d (function (n,to,af,from){\nreturn cljs.core.async.pipeline_async.cljs$core$IFn$_invoke$arity$5(n,to,af,from,true);\n}));\n\n(cljs.core.async.pipeline_async.cljs$core$IFn$_invoke$arity$5 \x3d (function (n,to,af,from,close_QMARK_){\nreturn cljs.core.async.pipeline_STAR_(n,to,af,from,close_QMARK_,null,new cljs.core.Keyword(null,\x22async\x22,\x22async\x22,1050769601));\n}));\n\n(cljs.core.async.pipeline_async.cljs$lang$maxFixedArity \x3d 5);\n\n/**\n * Takes elements from the from channel and supplies them to the to\n *   channel, subject to the transducer xf, with parallelism n. Because\n *   it is parallel, the transducer will be applied independently to each\n *   element, not across elements, and may produce zero or more outputs\n *   per input.  Outputs will be returned in order relative to the\n *   inputs. By default, the to channel will be closed when the from\n *   channel closes, but can be determined by the close?  parameter. Will\n *   stop consuming the from channel if the to channel closes.\n * \n *   Note this is supplied for API compatibility with the Clojure version.\n *   Values of N \x3e 1 will not result in actual concurrency in a\n *   single-threaded runtime.\n */\ncljs.core.async.pipeline \x3d (function cljs$core$async$pipeline(var_args){\nvar G__43823 \x3d arguments.length;\nswitch (G__43823) {\ncase 4:\nreturn cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$4 \x3d (function (n,to,xf,from){\nreturn cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$5(n,to,xf,from,true);\n}));\n\n(cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$5 \x3d (function (n,to,xf,from,close_QMARK_){\nreturn cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$6(n,to,xf,from,close_QMARK_,null);\n}));\n\n(cljs.core.async.pipeline.cljs$core$IFn$_invoke$arity$6 \x3d (function (n,to,xf,from,close_QMARK_,ex_handler){\nreturn cljs.core.async.pipeline_STAR_(n,to,xf,from,close_QMARK_,ex_handler,new cljs.core.Keyword(null,\x22compute\x22,\x22compute\x22,1555393130));\n}));\n\n(cljs.core.async.pipeline.cljs$lang$maxFixedArity \x3d 6);\n\n/**\n * Takes a predicate and a source channel and returns a vector of two\n *   channels, the first of which will contain the values for which the\n *   predicate returned true, the second those for which it returned\n *   false.\n * \n *   The out channels will be unbuffered by default, or two buf-or-ns can\n *   be supplied. The channels will close after the source channel has\n *   closed.\n */\ncljs.core.async.split \x3d (function cljs$core$async$split(var_args){\nvar G__43826 \x3d arguments.length;\nswitch (G__43826) {\ncase 2:\nreturn cljs.core.async.split.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 4:\nreturn cljs.core.async.split.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.split.cljs$core$IFn$_invoke$arity$2 \x3d (function (p,ch){\nreturn cljs.core.async.split.cljs$core$IFn$_invoke$arity$4(p,ch,null,null);\n}));\n\n(cljs.core.async.split.cljs$core$IFn$_invoke$arity$4 \x3d (function (p,ch,t_buf_or_n,f_buf_or_n){\nvar tc \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(t_buf_or_n);\nvar fc \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(f_buf_or_n);\nvar c__42953__auto___46841 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_43861){\nvar state_val_43862 \x3d (state_43861[(1)]);\nif((state_val_43862 \x3d\x3d\x3d (7))){\nvar inst_43857 \x3d (state_43861[(2)]);\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43865_46845 \x3d state_43861__$1;\n(statearr_43865_46845[(2)] \x3d inst_43857);\n\n(statearr_43865_46845[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (1))){\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43866_46846 \x3d state_43861__$1;\n(statearr_43866_46846[(2)] \x3d null);\n\n(statearr_43866_46846[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (4))){\nvar inst_43834 \x3d (state_43861[(7)]);\nvar inst_43834__$1 \x3d (state_43861[(2)]);\nvar inst_43835 \x3d (inst_43834__$1 \x3d\x3d null);\nvar state_43861__$1 \x3d (function (){var statearr_43867 \x3d state_43861;\n(statearr_43867[(7)] \x3d inst_43834__$1);\n\nreturn statearr_43867;\n})();\nif(cljs.core.truth_(inst_43835)){\nvar statearr_43869_46848 \x3d state_43861__$1;\n(statearr_43869_46848[(1)] \x3d (5));\n\n} else {\nvar statearr_43871_46849 \x3d state_43861__$1;\n(statearr_43871_46849[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (13))){\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43873_46853 \x3d state_43861__$1;\n(statearr_43873_46853[(2)] \x3d null);\n\n(statearr_43873_46853[(1)] \x3d (14));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (6))){\nvar inst_43834 \x3d (state_43861[(7)]);\nvar inst_43843 \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(inst_43834) : p.call(null,inst_43834));\nvar state_43861__$1 \x3d state_43861;\nif(cljs.core.truth_(inst_43843)){\nvar statearr_43874_46854 \x3d state_43861__$1;\n(statearr_43874_46854[(1)] \x3d (9));\n\n} else {\nvar statearr_43875_46855 \x3d state_43861__$1;\n(statearr_43875_46855[(1)] \x3d (10));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (3))){\nvar inst_43859 \x3d (state_43861[(2)]);\nvar state_43861__$1 \x3d state_43861;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43861__$1,inst_43859);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (12))){\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43881_46859 \x3d state_43861__$1;\n(statearr_43881_46859[(2)] \x3d null);\n\n(statearr_43881_46859[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (2))){\nvar state_43861__$1 \x3d state_43861;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43861__$1,(4),ch);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (11))){\nvar inst_43834 \x3d (state_43861[(7)]);\nvar inst_43847 \x3d (state_43861[(2)]);\nvar state_43861__$1 \x3d state_43861;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_43861__$1,(8),inst_43847,inst_43834);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (9))){\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43888_46860 \x3d state_43861__$1;\n(statearr_43888_46860[(2)] \x3d tc);\n\n(statearr_43888_46860[(1)] \x3d (11));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (5))){\nvar inst_43839 \x3d cljs.core.async.close_BANG_(tc);\nvar inst_43841 \x3d cljs.core.async.close_BANG_(fc);\nvar state_43861__$1 \x3d (function (){var statearr_43903 \x3d state_43861;\n(statearr_43903[(8)] \x3d inst_43839);\n\nreturn statearr_43903;\n})();\nvar statearr_43904_46866 \x3d state_43861__$1;\n(statearr_43904_46866[(2)] \x3d inst_43841);\n\n(statearr_43904_46866[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (14))){\nvar inst_43855 \x3d (state_43861[(2)]);\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43905_46868 \x3d state_43861__$1;\n(statearr_43905_46868[(2)] \x3d inst_43855);\n\n(statearr_43905_46868[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (10))){\nvar state_43861__$1 \x3d state_43861;\nvar statearr_43906_46869 \x3d state_43861__$1;\n(statearr_43906_46869[(2)] \x3d fc);\n\n(statearr_43906_46869[(1)] \x3d (11));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43862 \x3d\x3d\x3d (8))){\nvar inst_43849 \x3d (state_43861[(2)]);\nvar state_43861__$1 \x3d state_43861;\nif(cljs.core.truth_(inst_43849)){\nvar statearr_43907_46870 \x3d state_43861__$1;\n(statearr_43907_46870[(1)] \x3d (12));\n\n} else {\nvar statearr_43908_46871 \x3d state_43861__$1;\n(statearr_43908_46871[(1)] \x3d (13));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_43911 \x3d [null,null,null,null,null,null,null,null,null];\n(statearr_43911[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_43911[(1)] \x3d (1));\n\nreturn statearr_43911;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_43861){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43861);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e43914){var ex__42707__auto__ \x3d e43914;\nvar statearr_43916_46874 \x3d state_43861;\n(statearr_43916_46874[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43861[(4)]))){\nvar statearr_43921_46877 \x3d state_43861;\n(statearr_43921_46877[(1)] \x3d cljs.core.first((state_43861[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46886 \x3d state_43861;\nstate_43861 \x3d G__46886;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_43861){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_43861);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_43922 \x3d f__42954__auto__();\n(statearr_43922[(6)] \x3d c__42953__auto___46841);\n\nreturn statearr_43922;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [tc,fc], null);\n}));\n\n(cljs.core.async.split.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * f should be a function of 2 arguments. Returns a channel containing\n *   the single result of applying f to init and the first item from the\n *   channel, then applying f to that result and the 2nd item, etc. If\n *   the channel closes without yielding items, returns init and f is not\n *   called. ch must close before reduce produces a result.\n */\ncljs.core.async.reduce \x3d (function cljs$core$async$reduce(f,init,ch){\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_43958){\nvar state_val_43959 \x3d (state_43958[(1)]);\nif((state_val_43959 \x3d\x3d\x3d (7))){\nvar inst_43953 \x3d (state_43958[(2)]);\nvar state_43958__$1 \x3d state_43958;\nvar statearr_43979_46889 \x3d state_43958__$1;\n(statearr_43979_46889[(2)] \x3d inst_43953);\n\n(statearr_43979_46889[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (1))){\nvar inst_43933 \x3d init;\nvar inst_43934 \x3d inst_43933;\nvar state_43958__$1 \x3d (function (){var statearr_43982 \x3d state_43958;\n(statearr_43982[(7)] \x3d inst_43934);\n\nreturn statearr_43982;\n})();\nvar statearr_43983_46891 \x3d state_43958__$1;\n(statearr_43983_46891[(2)] \x3d null);\n\n(statearr_43983_46891[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (4))){\nvar inst_43939 \x3d (state_43958[(8)]);\nvar inst_43939__$1 \x3d (state_43958[(2)]);\nvar inst_43940 \x3d (inst_43939__$1 \x3d\x3d null);\nvar state_43958__$1 \x3d (function (){var statearr_43987 \x3d state_43958;\n(statearr_43987[(8)] \x3d inst_43939__$1);\n\nreturn statearr_43987;\n})();\nif(cljs.core.truth_(inst_43940)){\nvar statearr_43989_46898 \x3d state_43958__$1;\n(statearr_43989_46898[(1)] \x3d (5));\n\n} else {\nvar statearr_43990_46900 \x3d state_43958__$1;\n(statearr_43990_46900[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (6))){\nvar inst_43934 \x3d (state_43958[(7)]);\nvar inst_43939 \x3d (state_43958[(8)]);\nvar inst_43943 \x3d (state_43958[(9)]);\nvar inst_43943__$1 \x3d (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(inst_43934,inst_43939) : f.call(null,inst_43934,inst_43939));\nvar inst_43944 \x3d cljs.core.reduced_QMARK_(inst_43943__$1);\nvar state_43958__$1 \x3d (function (){var statearr_43991 \x3d state_43958;\n(statearr_43991[(9)] \x3d inst_43943__$1);\n\nreturn statearr_43991;\n})();\nif(inst_43944){\nvar statearr_43993_46904 \x3d state_43958__$1;\n(statearr_43993_46904[(1)] \x3d (8));\n\n} else {\nvar statearr_43994_46905 \x3d state_43958__$1;\n(statearr_43994_46905[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (3))){\nvar inst_43955 \x3d (state_43958[(2)]);\nvar state_43958__$1 \x3d state_43958;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_43958__$1,inst_43955);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (2))){\nvar state_43958__$1 \x3d state_43958;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_43958__$1,(4),ch);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (9))){\nvar inst_43943 \x3d (state_43958[(9)]);\nvar inst_43934 \x3d inst_43943;\nvar state_43958__$1 \x3d (function (){var statearr_43998 \x3d state_43958;\n(statearr_43998[(7)] \x3d inst_43934);\n\nreturn statearr_43998;\n})();\nvar statearr_44001_46913 \x3d state_43958__$1;\n(statearr_44001_46913[(2)] \x3d null);\n\n(statearr_44001_46913[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (5))){\nvar inst_43934 \x3d (state_43958[(7)]);\nvar state_43958__$1 \x3d state_43958;\nvar statearr_44004_46916 \x3d state_43958__$1;\n(statearr_44004_46916[(2)] \x3d inst_43934);\n\n(statearr_44004_46916[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (10))){\nvar inst_43951 \x3d (state_43958[(2)]);\nvar state_43958__$1 \x3d state_43958;\nvar statearr_44007_46918 \x3d state_43958__$1;\n(statearr_44007_46918[(2)] \x3d inst_43951);\n\n(statearr_44007_46918[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_43959 \x3d\x3d\x3d (8))){\nvar inst_43943 \x3d (state_43958[(9)]);\nvar inst_43947 \x3d cljs.core.deref(inst_43943);\nvar state_43958__$1 \x3d state_43958;\nvar statearr_44011_46923 \x3d state_43958__$1;\n(statearr_44011_46923[(2)] \x3d inst_43947);\n\n(statearr_44011_46923[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$reduce_$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$reduce_$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_44015 \x3d [null,null,null,null,null,null,null,null,null,null];\n(statearr_44015[(0)] \x3d cljs$core$async$reduce_$_state_machine__42703__auto__);\n\n(statearr_44015[(1)] \x3d (1));\n\nreturn statearr_44015;\n});\nvar cljs$core$async$reduce_$_state_machine__42703__auto____1 \x3d (function (state_43958){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_43958);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e44020){var ex__42707__auto__ \x3d e44020;\nvar statearr_44021_46937 \x3d state_43958;\n(statearr_44021_46937[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_43958[(4)]))){\nvar statearr_44029_46942 \x3d state_43958;\n(statearr_44029_46942[(1)] \x3d cljs.core.first((state_43958[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46943 \x3d state_43958;\nstate_43958 \x3d G__46943;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$reduce_$_state_machine__42703__auto__ \x3d function(state_43958){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$reduce_$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$reduce_$_state_machine__42703__auto____1.call(this,state_43958);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$reduce_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$reduce_$_state_machine__42703__auto____0;\ncljs$core$async$reduce_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$reduce_$_state_machine__42703__auto____1;\nreturn cljs$core$async$reduce_$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_44031 \x3d f__42954__auto__();\n(statearr_44031[(6)] \x3d c__42953__auto__);\n\nreturn statearr_44031;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n});\n/**\n * async/reduces a channel with a transformation (xform f).\n *   Returns a channel containing the result.  ch must close before\n *   transduce produces a result.\n */\ncljs.core.async.transduce \x3d (function cljs$core$async$transduce(xform,f,init,ch){\nvar f__$1 \x3d (xform.cljs$core$IFn$_invoke$arity$1 ? xform.cljs$core$IFn$_invoke$arity$1(f) : xform.call(null,f));\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_44043){\nvar state_val_44044 \x3d (state_44043[(1)]);\nif((state_val_44044 \x3d\x3d\x3d (1))){\nvar inst_44038 \x3d cljs.core.async.reduce(f__$1,init,ch);\nvar state_44043__$1 \x3d state_44043;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_44043__$1,(2),inst_44038);\n} else {\nif((state_val_44044 \x3d\x3d\x3d (2))){\nvar inst_44040 \x3d (state_44043[(2)]);\nvar inst_44041 \x3d (f__$1.cljs$core$IFn$_invoke$arity$1 ? f__$1.cljs$core$IFn$_invoke$arity$1(inst_44040) : f__$1.call(null,inst_44040));\nvar state_44043__$1 \x3d state_44043;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_44043__$1,inst_44041);\n} else {\nreturn null;\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$transduce_$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$transduce_$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_44058 \x3d [null,null,null,null,null,null,null];\n(statearr_44058[(0)] \x3d cljs$core$async$transduce_$_state_machine__42703__auto__);\n\n(statearr_44058[(1)] \x3d (1));\n\nreturn statearr_44058;\n});\nvar cljs$core$async$transduce_$_state_machine__42703__auto____1 \x3d (function (state_44043){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_44043);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e44060){var ex__42707__auto__ \x3d e44060;\nvar statearr_44061_46973 \x3d state_44043;\n(statearr_44061_46973[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_44043[(4)]))){\nvar statearr_44064_46975 \x3d state_44043;\n(statearr_44064_46975[(1)] \x3d cljs.core.first((state_44043[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__46977 \x3d state_44043;\nstate_44043 \x3d G__46977;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$transduce_$_state_machine__42703__auto__ \x3d function(state_44043){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$transduce_$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$transduce_$_state_machine__42703__auto____1.call(this,state_44043);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$transduce_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$transduce_$_state_machine__42703__auto____0;\ncljs$core$async$transduce_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$transduce_$_state_machine__42703__auto____1;\nreturn cljs$core$async$transduce_$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_44067 \x3d f__42954__auto__();\n(statearr_44067[(6)] \x3d c__42953__auto__);\n\nreturn statearr_44067;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n});\n/**\n * Puts the contents of coll into the supplied channel.\n * \n *   By default the channel will be closed after the items are copied,\n *   but can be determined by the close? parameter.\n * \n *   Returns a channel which will close after the items are copied.\n */\ncljs.core.async.onto_chan_BANG_ \x3d (function cljs$core$async$onto_chan_BANG_(var_args){\nvar G__44079 \x3d arguments.length;\nswitch (G__44079) {\ncase 2:\nreturn cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (ch,coll){\nreturn cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$3(ch,coll,true);\n}));\n\n(cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (ch,coll,close_QMARK_){\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_44127){\nvar state_val_44128 \x3d (state_44127[(1)]);\nif((state_val_44128 \x3d\x3d\x3d (7))){\nvar inst_44108 \x3d (state_44127[(2)]);\nvar state_44127__$1 \x3d state_44127;\nvar statearr_44138_46995 \x3d state_44127__$1;\n(statearr_44138_46995[(2)] \x3d inst_44108);\n\n(statearr_44138_46995[(1)] \x3d (6));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (1))){\nvar inst_44095 \x3d cljs.core.seq(coll);\nvar inst_44096 \x3d inst_44095;\nvar state_44127__$1 \x3d (function (){var statearr_44139 \x3d state_44127;\n(statearr_44139[(7)] \x3d inst_44096);\n\nreturn statearr_44139;\n})();\nvar statearr_44142_46998 \x3d state_44127__$1;\n(statearr_44142_46998[(2)] \x3d null);\n\n(statearr_44142_46998[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (4))){\nvar inst_44096 \x3d (state_44127[(7)]);\nvar inst_44106 \x3d cljs.core.first(inst_44096);\nvar state_44127__$1 \x3d state_44127;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_44127__$1,(7),ch,inst_44106);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (13))){\nvar inst_44120 \x3d (state_44127[(2)]);\nvar state_44127__$1 \x3d state_44127;\nvar statearr_44149_47005 \x3d state_44127__$1;\n(statearr_44149_47005[(2)] \x3d inst_44120);\n\n(statearr_44149_47005[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (6))){\nvar inst_44111 \x3d (state_44127[(2)]);\nvar state_44127__$1 \x3d state_44127;\nif(cljs.core.truth_(inst_44111)){\nvar statearr_44151_47013 \x3d state_44127__$1;\n(statearr_44151_47013[(1)] \x3d (8));\n\n} else {\nvar statearr_44152_47014 \x3d state_44127__$1;\n(statearr_44152_47014[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (3))){\nvar inst_44124 \x3d (state_44127[(2)]);\nvar state_44127__$1 \x3d state_44127;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_44127__$1,inst_44124);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (12))){\nvar state_44127__$1 \x3d state_44127;\nvar statearr_44156_47020 \x3d state_44127__$1;\n(statearr_44156_47020[(2)] \x3d null);\n\n(statearr_44156_47020[(1)] \x3d (13));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (2))){\nvar inst_44096 \x3d (state_44127[(7)]);\nvar state_44127__$1 \x3d state_44127;\nif(cljs.core.truth_(inst_44096)){\nvar statearr_44159_47024 \x3d state_44127__$1;\n(statearr_44159_47024[(1)] \x3d (4));\n\n} else {\nvar statearr_44161_47025 \x3d state_44127__$1;\n(statearr_44161_47025[(1)] \x3d (5));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (11))){\nvar inst_44117 \x3d cljs.core.async.close_BANG_(ch);\nvar state_44127__$1 \x3d state_44127;\nvar statearr_44164_47026 \x3d state_44127__$1;\n(statearr_44164_47026[(2)] \x3d inst_44117);\n\n(statearr_44164_47026[(1)] \x3d (13));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (9))){\nvar state_44127__$1 \x3d state_44127;\nif(cljs.core.truth_(close_QMARK_)){\nvar statearr_44166_47027 \x3d state_44127__$1;\n(statearr_44166_47027[(1)] \x3d (11));\n\n} else {\nvar statearr_44167_47030 \x3d state_44127__$1;\n(statearr_44167_47030[(1)] \x3d (12));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (5))){\nvar inst_44096 \x3d (state_44127[(7)]);\nvar state_44127__$1 \x3d state_44127;\nvar statearr_44168_47033 \x3d state_44127__$1;\n(statearr_44168_47033[(2)] \x3d inst_44096);\n\n(statearr_44168_47033[(1)] \x3d (6));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (10))){\nvar inst_44122 \x3d (state_44127[(2)]);\nvar state_44127__$1 \x3d state_44127;\nvar statearr_44171_47038 \x3d state_44127__$1;\n(statearr_44171_47038[(2)] \x3d inst_44122);\n\n(statearr_44171_47038[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44128 \x3d\x3d\x3d (8))){\nvar inst_44096 \x3d (state_44127[(7)]);\nvar inst_44113 \x3d cljs.core.next(inst_44096);\nvar inst_44096__$1 \x3d inst_44113;\nvar state_44127__$1 \x3d (function (){var statearr_44173 \x3d state_44127;\n(statearr_44173[(7)] \x3d inst_44096__$1);\n\nreturn statearr_44173;\n})();\nvar statearr_44176_47041 \x3d state_44127__$1;\n(statearr_44176_47041[(2)] \x3d null);\n\n(statearr_44176_47041[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_44181 \x3d [null,null,null,null,null,null,null,null];\n(statearr_44181[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_44181[(1)] \x3d (1));\n\nreturn statearr_44181;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_44127){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_44127);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e44183){var ex__42707__auto__ \x3d e44183;\nvar statearr_44184_47058 \x3d state_44127;\n(statearr_44184_47058[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_44127[(4)]))){\nvar statearr_44185_47067 \x3d state_44127;\n(statearr_44185_47067[(1)] \x3d cljs.core.first((state_44127[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__47071 \x3d state_44127;\nstate_44127 \x3d G__47071;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_44127){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_44127);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_44192 \x3d f__42954__auto__();\n(statearr_44192[(6)] \x3d c__42953__auto__);\n\nreturn statearr_44192;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n}));\n\n(cljs.core.async.onto_chan_BANG_.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Creates and returns a channel which contains the contents of coll,\n *   closing when exhausted.\n */\ncljs.core.async.to_chan_BANG_ \x3d (function cljs$core$async$to_chan_BANG_(coll){\nvar ch \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(cljs.core.bounded_count((100),coll));\ncljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$2(ch,coll);\n\nreturn ch;\n});\n/**\n * Deprecated - use onto-chan!\n */\ncljs.core.async.onto_chan \x3d (function cljs$core$async$onto_chan(var_args){\nvar G__44230 \x3d arguments.length;\nswitch (G__44230) {\ncase 2:\nreturn cljs.core.async.onto_chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.onto_chan.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.onto_chan.cljs$core$IFn$_invoke$arity$2 \x3d (function (ch,coll){\nreturn cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$3(ch,coll,true);\n}));\n\n(cljs.core.async.onto_chan.cljs$core$IFn$_invoke$arity$3 \x3d (function (ch,coll,close_QMARK_){\nreturn cljs.core.async.onto_chan_BANG_.cljs$core$IFn$_invoke$arity$3(ch,coll,close_QMARK_);\n}));\n\n(cljs.core.async.onto_chan.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Deprecated - use to-chan!\n */\ncljs.core.async.to_chan \x3d (function cljs$core$async$to_chan(coll){\nreturn cljs.core.async.to_chan_BANG_(coll);\n});\n\n/**\n * @interface\n */\ncljs.core.async.Mux \x3d function(){};\n\nvar cljs$core$async$Mux$muxch_STAR_$dyn_47087 \x3d (function (_){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (cljs.core.async.muxch_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4464__auto__.call(null,_));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.muxch_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4461__auto__.call(null,_));\n} else {\nthrow cljs.core.missing_protocol(\x22Mux.muxch*\x22,_);\n}\n}\n});\ncljs.core.async.muxch_STAR_ \x3d (function cljs$core$async$muxch_STAR_(_){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.cljs$core$async$Mux$muxch_STAR_$arity$1 \x3d\x3d null)))))){\nreturn _.cljs$core$async$Mux$muxch_STAR_$arity$1(_);\n} else {\nreturn cljs$core$async$Mux$muxch_STAR_$dyn_47087(_);\n}\n});\n\n\n/**\n * @interface\n */\ncljs.core.async.Mult \x3d function(){};\n\nvar cljs$core$async$Mult$tap_STAR_$dyn_47090 \x3d (function (m,ch,close_QMARK_){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.tap_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(m,ch,close_QMARK_) : m__4464__auto__.call(null,m,ch,close_QMARK_));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.tap_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(m,ch,close_QMARK_) : m__4461__auto__.call(null,m,ch,close_QMARK_));\n} else {\nthrow cljs.core.missing_protocol(\x22Mult.tap*\x22,m);\n}\n}\n});\ncljs.core.async.tap_STAR_ \x3d (function cljs$core$async$tap_STAR_(m,ch,close_QMARK_){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mult$tap_STAR_$arity$3 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mult$tap_STAR_$arity$3(m,ch,close_QMARK_);\n} else {\nreturn cljs$core$async$Mult$tap_STAR_$dyn_47090(m,ch,close_QMARK_);\n}\n});\n\nvar cljs$core$async$Mult$untap_STAR_$dyn_47103 \x3d (function (m,ch){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.untap_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(m,ch) : m__4464__auto__.call(null,m,ch));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.untap_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(m,ch) : m__4461__auto__.call(null,m,ch));\n} else {\nthrow cljs.core.missing_protocol(\x22Mult.untap*\x22,m);\n}\n}\n});\ncljs.core.async.untap_STAR_ \x3d (function cljs$core$async$untap_STAR_(m,ch){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mult$untap_STAR_$arity$2 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mult$untap_STAR_$arity$2(m,ch);\n} else {\nreturn cljs$core$async$Mult$untap_STAR_$dyn_47103(m,ch);\n}\n});\n\nvar cljs$core$async$Mult$untap_all_STAR_$dyn_47105 \x3d (function (m){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.untap_all_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(m) : m__4464__auto__.call(null,m));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.untap_all_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(m) : m__4461__auto__.call(null,m));\n} else {\nthrow cljs.core.missing_protocol(\x22Mult.untap-all*\x22,m);\n}\n}\n});\ncljs.core.async.untap_all_STAR_ \x3d (function cljs$core$async$untap_all_STAR_(m){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mult$untap_all_STAR_$arity$1 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mult$untap_all_STAR_$arity$1(m);\n} else {\nreturn cljs$core$async$Mult$untap_all_STAR_$dyn_47105(m);\n}\n});\n\n/**\n * Creates and returns a mult(iple) of the supplied channel. Channels\n *   containing copies of the channel can be created with \x27tap\x27, and\n *   detached with \x27untap\x27.\n * \n *   Each item is distributed to all taps in parallel and synchronously,\n *   i.e. each tap must accept before the next item is distributed. Use\n *   buffering/windowing to prevent slow taps from holding up the mult.\n * \n *   Items received when there are no taps get dropped.\n * \n *   If a tap puts to a closed channel, it will be removed from the mult.\n */\ncljs.core.async.mult \x3d (function cljs$core$async$mult(ch){\nvar cs \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar m \x3d (function (){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async44290 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.Mult}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.async.Mux}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async44290 \x3d (function (ch,cs,meta44291){\nthis.ch \x3d ch;\nthis.cs \x3d cs;\nthis.meta44291 \x3d meta44291;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_44292,meta44291__$1){\nvar self__ \x3d this;\nvar _44292__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async44290(self__.ch,self__.cs,meta44291__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_44292){\nvar self__ \x3d this;\nvar _44292__$1 \x3d this;\nreturn self__.meta44291;\n}));\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$async$Mux$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$async$Mux$muxch_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.ch;\n}));\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$async$Mult$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$async$Mult$tap_STAR_$arity$3 \x3d (function (_,ch__$1,close_QMARK_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.cs,cljs.core.assoc,ch__$1,close_QMARK_);\n\nreturn null;\n}));\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$async$Mult$untap_STAR_$arity$2 \x3d (function (_,ch__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(self__.cs,cljs.core.dissoc,ch__$1);\n\nreturn null;\n}));\n\n(cljs.core.async.t_cljs$core$async44290.prototype.cljs$core$async$Mult$untap_all_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.reset_BANG_(self__.cs,cljs.core.PersistentArrayMap.EMPTY);\n\nreturn null;\n}));\n\n(cljs.core.async.t_cljs$core$async44290.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ch\x22,\x22ch\x22,1085813622,null),new cljs.core.Symbol(null,\x22cs\x22,\x22cs\x22,-117024463,null),new cljs.core.Symbol(null,\x22meta44291\x22,\x22meta44291\x22,1556735453,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async44290.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async44290.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async44290\x22);\n\n(cljs.core.async.t_cljs$core$async44290.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async44290\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async44290.\n */\ncljs.core.async.__GT_t_cljs$core$async44290 \x3d (function cljs$core$async$mult_$___GT_t_cljs$core$async44290(ch__$1,cs__$1,meta44291){\nreturn (new cljs.core.async.t_cljs$core$async44290(ch__$1,cs__$1,meta44291));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async44290(ch,cs,cljs.core.PersistentArrayMap.EMPTY));\n})()\n;\nvar dchan \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\nvar dctr \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(null);\nvar done \x3d (function (_){\nif((cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(dctr,cljs.core.dec) \x3d\x3d\x3d (0))){\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(dchan,true);\n} else {\nreturn null;\n}\n});\nvar c__42953__auto___47195 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_44488){\nvar state_val_44490 \x3d (state_44488[(1)]);\nif((state_val_44490 \x3d\x3d\x3d (7))){\nvar inst_44483 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44495_47205 \x3d state_44488__$1;\n(statearr_44495_47205[(2)] \x3d inst_44483);\n\n(statearr_44495_47205[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (20))){\nvar inst_44363 \x3d (state_44488[(7)]);\nvar inst_44383 \x3d cljs.core.first(inst_44363);\nvar inst_44384 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_44383,(0),null);\nvar inst_44385 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_44383,(1),null);\nvar state_44488__$1 \x3d (function (){var statearr_44502 \x3d state_44488;\n(statearr_44502[(8)] \x3d inst_44384);\n\nreturn statearr_44502;\n})();\nif(cljs.core.truth_(inst_44385)){\nvar statearr_44505_47223 \x3d state_44488__$1;\n(statearr_44505_47223[(1)] \x3d (22));\n\n} else {\nvar statearr_44512_47230 \x3d state_44488__$1;\n(statearr_44512_47230[(1)] \x3d (23));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (27))){\nvar inst_44420 \x3d (state_44488[(9)]);\nvar inst_44429 \x3d (state_44488[(10)]);\nvar inst_44326 \x3d (state_44488[(11)]);\nvar inst_44424 \x3d (state_44488[(12)]);\nvar inst_44429__$1 \x3d cljs.core._nth(inst_44420,inst_44424);\nvar inst_44431 \x3d cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3(inst_44429__$1,inst_44326,done);\nvar state_44488__$1 \x3d (function (){var statearr_44520 \x3d state_44488;\n(statearr_44520[(10)] \x3d inst_44429__$1);\n\nreturn statearr_44520;\n})();\nif(cljs.core.truth_(inst_44431)){\nvar statearr_44522_47246 \x3d state_44488__$1;\n(statearr_44522_47246[(1)] \x3d (30));\n\n} else {\nvar statearr_44524_47247 \x3d state_44488__$1;\n(statearr_44524_47247[(1)] \x3d (31));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (1))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44525_47255 \x3d state_44488__$1;\n(statearr_44525_47255[(2)] \x3d null);\n\n(statearr_44525_47255[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (24))){\nvar inst_44363 \x3d (state_44488[(7)]);\nvar inst_44393 \x3d (state_44488[(2)]);\nvar inst_44394 \x3d cljs.core.next(inst_44363);\nvar inst_44336 \x3d inst_44394;\nvar inst_44337 \x3d null;\nvar inst_44338 \x3d (0);\nvar inst_44339 \x3d (0);\nvar state_44488__$1 \x3d (function (){var statearr_44529 \x3d state_44488;\n(statearr_44529[(13)] \x3d inst_44336);\n\n(statearr_44529[(14)] \x3d inst_44338);\n\n(statearr_44529[(15)] \x3d inst_44337);\n\n(statearr_44529[(16)] \x3d inst_44393);\n\n(statearr_44529[(17)] \x3d inst_44339);\n\nreturn statearr_44529;\n})();\nvar statearr_44530_47262 \x3d state_44488__$1;\n(statearr_44530_47262[(2)] \x3d null);\n\n(statearr_44530_47262[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (39))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44539_47269 \x3d state_44488__$1;\n(statearr_44539_47269[(2)] \x3d null);\n\n(statearr_44539_47269[(1)] \x3d (41));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (4))){\nvar inst_44326 \x3d (state_44488[(11)]);\nvar inst_44326__$1 \x3d (state_44488[(2)]);\nvar inst_44327 \x3d (inst_44326__$1 \x3d\x3d null);\nvar state_44488__$1 \x3d (function (){var statearr_44541 \x3d state_44488;\n(statearr_44541[(11)] \x3d inst_44326__$1);\n\nreturn statearr_44541;\n})();\nif(cljs.core.truth_(inst_44327)){\nvar statearr_44542_47288 \x3d state_44488__$1;\n(statearr_44542_47288[(1)] \x3d (5));\n\n} else {\nvar statearr_44543_47292 \x3d state_44488__$1;\n(statearr_44543_47292[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (15))){\nvar inst_44336 \x3d (state_44488[(13)]);\nvar inst_44338 \x3d (state_44488[(14)]);\nvar inst_44337 \x3d (state_44488[(15)]);\nvar inst_44339 \x3d (state_44488[(17)]);\nvar inst_44357 \x3d (state_44488[(2)]);\nvar inst_44358 \x3d (inst_44339 + (1));\nvar tmp44536 \x3d inst_44336;\nvar tmp44537 \x3d inst_44338;\nvar tmp44538 \x3d inst_44337;\nvar inst_44336__$1 \x3d tmp44536;\nvar inst_44337__$1 \x3d tmp44538;\nvar inst_44338__$1 \x3d tmp44537;\nvar inst_44339__$1 \x3d inst_44358;\nvar state_44488__$1 \x3d (function (){var statearr_44547 \x3d state_44488;\n(statearr_44547[(13)] \x3d inst_44336__$1);\n\n(statearr_44547[(14)] \x3d inst_44338__$1);\n\n(statearr_44547[(15)] \x3d inst_44337__$1);\n\n(statearr_44547[(17)] \x3d inst_44339__$1);\n\n(statearr_44547[(18)] \x3d inst_44357);\n\nreturn statearr_44547;\n})();\nvar statearr_44555_47309 \x3d state_44488__$1;\n(statearr_44555_47309[(2)] \x3d null);\n\n(statearr_44555_47309[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (21))){\nvar inst_44398 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44562_47316 \x3d state_44488__$1;\n(statearr_44562_47316[(2)] \x3d inst_44398);\n\n(statearr_44562_47316[(1)] \x3d (18));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (31))){\nvar inst_44429 \x3d (state_44488[(10)]);\nvar inst_44434 \x3d m.cljs$core$async$Mult$untap_STAR_$arity$2(null,inst_44429);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44564_47318 \x3d state_44488__$1;\n(statearr_44564_47318[(2)] \x3d inst_44434);\n\n(statearr_44564_47318[(1)] \x3d (32));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (32))){\nvar inst_44420 \x3d (state_44488[(9)]);\nvar inst_44419 \x3d (state_44488[(19)]);\nvar inst_44424 \x3d (state_44488[(12)]);\nvar inst_44422 \x3d (state_44488[(20)]);\nvar inst_44436 \x3d (state_44488[(2)]);\nvar inst_44437 \x3d (inst_44424 + (1));\nvar tmp44557 \x3d inst_44420;\nvar tmp44558 \x3d inst_44419;\nvar tmp44559 \x3d inst_44422;\nvar inst_44419__$1 \x3d tmp44558;\nvar inst_44420__$1 \x3d tmp44557;\nvar inst_44422__$1 \x3d tmp44559;\nvar inst_44424__$1 \x3d inst_44437;\nvar state_44488__$1 \x3d (function (){var statearr_44570 \x3d state_44488;\n(statearr_44570[(9)] \x3d inst_44420__$1);\n\n(statearr_44570[(19)] \x3d inst_44419__$1);\n\n(statearr_44570[(12)] \x3d inst_44424__$1);\n\n(statearr_44570[(21)] \x3d inst_44436);\n\n(statearr_44570[(20)] \x3d inst_44422__$1);\n\nreturn statearr_44570;\n})();\nvar statearr_44575_47326 \x3d state_44488__$1;\n(statearr_44575_47326[(2)] \x3d null);\n\n(statearr_44575_47326[(1)] \x3d (25));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (40))){\nvar inst_44452 \x3d (state_44488[(22)]);\nvar inst_44457 \x3d m.cljs$core$async$Mult$untap_STAR_$arity$2(null,inst_44452);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44581_47327 \x3d state_44488__$1;\n(statearr_44581_47327[(2)] \x3d inst_44457);\n\n(statearr_44581_47327[(1)] \x3d (41));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (33))){\nvar inst_44440 \x3d (state_44488[(23)]);\nvar inst_44445 \x3d cljs.core.chunked_seq_QMARK_(inst_44440);\nvar state_44488__$1 \x3d state_44488;\nif(inst_44445){\nvar statearr_44595_47329 \x3d state_44488__$1;\n(statearr_44595_47329[(1)] \x3d (36));\n\n} else {\nvar statearr_44596_47330 \x3d state_44488__$1;\n(statearr_44596_47330[(1)] \x3d (37));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (13))){\nvar inst_44350 \x3d (state_44488[(24)]);\nvar inst_44354 \x3d cljs.core.async.close_BANG_(inst_44350);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44598_47333 \x3d state_44488__$1;\n(statearr_44598_47333[(2)] \x3d inst_44354);\n\n(statearr_44598_47333[(1)] \x3d (15));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (22))){\nvar inst_44384 \x3d (state_44488[(8)]);\nvar inst_44390 \x3d cljs.core.async.close_BANG_(inst_44384);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44605_47337 \x3d state_44488__$1;\n(statearr_44605_47337[(2)] \x3d inst_44390);\n\n(statearr_44605_47337[(1)] \x3d (24));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (36))){\nvar inst_44440 \x3d (state_44488[(23)]);\nvar inst_44447 \x3d cljs.core.chunk_first(inst_44440);\nvar inst_44448 \x3d cljs.core.chunk_rest(inst_44440);\nvar inst_44449 \x3d cljs.core.count(inst_44447);\nvar inst_44419 \x3d inst_44448;\nvar inst_44420 \x3d inst_44447;\nvar inst_44422 \x3d inst_44449;\nvar inst_44424 \x3d (0);\nvar state_44488__$1 \x3d (function (){var statearr_44610 \x3d state_44488;\n(statearr_44610[(9)] \x3d inst_44420);\n\n(statearr_44610[(19)] \x3d inst_44419);\n\n(statearr_44610[(12)] \x3d inst_44424);\n\n(statearr_44610[(20)] \x3d inst_44422);\n\nreturn statearr_44610;\n})();\nvar statearr_44614_47343 \x3d state_44488__$1;\n(statearr_44614_47343[(2)] \x3d null);\n\n(statearr_44614_47343[(1)] \x3d (25));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (41))){\nvar inst_44440 \x3d (state_44488[(23)]);\nvar inst_44459 \x3d (state_44488[(2)]);\nvar inst_44460 \x3d cljs.core.next(inst_44440);\nvar inst_44419 \x3d inst_44460;\nvar inst_44420 \x3d null;\nvar inst_44422 \x3d (0);\nvar inst_44424 \x3d (0);\nvar state_44488__$1 \x3d (function (){var statearr_44616 \x3d state_44488;\n(statearr_44616[(25)] \x3d inst_44459);\n\n(statearr_44616[(9)] \x3d inst_44420);\n\n(statearr_44616[(19)] \x3d inst_44419);\n\n(statearr_44616[(12)] \x3d inst_44424);\n\n(statearr_44616[(20)] \x3d inst_44422);\n\nreturn statearr_44616;\n})();\nvar statearr_44621_47344 \x3d state_44488__$1;\n(statearr_44621_47344[(2)] \x3d null);\n\n(statearr_44621_47344[(1)] \x3d (25));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (43))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44629_47346 \x3d state_44488__$1;\n(statearr_44629_47346[(2)] \x3d null);\n\n(statearr_44629_47346[(1)] \x3d (44));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (29))){\nvar inst_44468 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44632_47349 \x3d state_44488__$1;\n(statearr_44632_47349[(2)] \x3d inst_44468);\n\n(statearr_44632_47349[(1)] \x3d (26));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (44))){\nvar inst_44480 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d (function (){var statearr_44634 \x3d state_44488;\n(statearr_44634[(26)] \x3d inst_44480);\n\nreturn statearr_44634;\n})();\nvar statearr_44635_47357 \x3d state_44488__$1;\n(statearr_44635_47357[(2)] \x3d null);\n\n(statearr_44635_47357[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (6))){\nvar inst_44411 \x3d (state_44488[(27)]);\nvar inst_44410 \x3d cljs.core.deref(cs);\nvar inst_44411__$1 \x3d cljs.core.keys(inst_44410);\nvar inst_44412 \x3d cljs.core.count(inst_44411__$1);\nvar inst_44413 \x3d cljs.core.reset_BANG_(dctr,inst_44412);\nvar inst_44418 \x3d cljs.core.seq(inst_44411__$1);\nvar inst_44419 \x3d inst_44418;\nvar inst_44420 \x3d null;\nvar inst_44422 \x3d (0);\nvar inst_44424 \x3d (0);\nvar state_44488__$1 \x3d (function (){var statearr_44647 \x3d state_44488;\n(statearr_44647[(9)] \x3d inst_44420);\n\n(statearr_44647[(27)] \x3d inst_44411__$1);\n\n(statearr_44647[(19)] \x3d inst_44419);\n\n(statearr_44647[(12)] \x3d inst_44424);\n\n(statearr_44647[(20)] \x3d inst_44422);\n\n(statearr_44647[(28)] \x3d inst_44413);\n\nreturn statearr_44647;\n})();\nvar statearr_44651_47374 \x3d state_44488__$1;\n(statearr_44651_47374[(2)] \x3d null);\n\n(statearr_44651_47374[(1)] \x3d (25));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (28))){\nvar inst_44419 \x3d (state_44488[(19)]);\nvar inst_44440 \x3d (state_44488[(23)]);\nvar inst_44440__$1 \x3d cljs.core.seq(inst_44419);\nvar state_44488__$1 \x3d (function (){var statearr_44657 \x3d state_44488;\n(statearr_44657[(23)] \x3d inst_44440__$1);\n\nreturn statearr_44657;\n})();\nif(inst_44440__$1){\nvar statearr_44658_47381 \x3d state_44488__$1;\n(statearr_44658_47381[(1)] \x3d (33));\n\n} else {\nvar statearr_44659_47389 \x3d state_44488__$1;\n(statearr_44659_47389[(1)] \x3d (34));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (25))){\nvar inst_44424 \x3d (state_44488[(12)]);\nvar inst_44422 \x3d (state_44488[(20)]);\nvar inst_44426 \x3d (inst_44424 \x3c inst_44422);\nvar inst_44427 \x3d inst_44426;\nvar state_44488__$1 \x3d state_44488;\nif(cljs.core.truth_(inst_44427)){\nvar statearr_44665_47405 \x3d state_44488__$1;\n(statearr_44665_47405[(1)] \x3d (27));\n\n} else {\nvar statearr_44666_47412 \x3d state_44488__$1;\n(statearr_44666_47412[(1)] \x3d (28));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (34))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44668_47419 \x3d state_44488__$1;\n(statearr_44668_47419[(2)] \x3d null);\n\n(statearr_44668_47419[(1)] \x3d (35));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (17))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44671_47427 \x3d state_44488__$1;\n(statearr_44671_47427[(2)] \x3d null);\n\n(statearr_44671_47427[(1)] \x3d (18));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (3))){\nvar inst_44486 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_44488__$1,inst_44486);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (12))){\nvar inst_44404 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44675_47432 \x3d state_44488__$1;\n(statearr_44675_47432[(2)] \x3d inst_44404);\n\n(statearr_44675_47432[(1)] \x3d (9));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (2))){\nvar state_44488__$1 \x3d state_44488;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_44488__$1,(4),ch);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (23))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44678_47433 \x3d state_44488__$1;\n(statearr_44678_47433[(2)] \x3d null);\n\n(statearr_44678_47433[(1)] \x3d (24));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (35))){\nvar inst_44466 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44681_47442 \x3d state_44488__$1;\n(statearr_44681_47442[(2)] \x3d inst_44466);\n\n(statearr_44681_47442[(1)] \x3d (29));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (19))){\nvar inst_44363 \x3d (state_44488[(7)]);\nvar inst_44368 \x3d cljs.core.chunk_first(inst_44363);\nvar inst_44369 \x3d cljs.core.chunk_rest(inst_44363);\nvar inst_44370 \x3d cljs.core.count(inst_44368);\nvar inst_44336 \x3d inst_44369;\nvar inst_44337 \x3d inst_44368;\nvar inst_44338 \x3d inst_44370;\nvar inst_44339 \x3d (0);\nvar state_44488__$1 \x3d (function (){var statearr_44690 \x3d state_44488;\n(statearr_44690[(13)] \x3d inst_44336);\n\n(statearr_44690[(14)] \x3d inst_44338);\n\n(statearr_44690[(15)] \x3d inst_44337);\n\n(statearr_44690[(17)] \x3d inst_44339);\n\nreturn statearr_44690;\n})();\nvar statearr_44691_47449 \x3d state_44488__$1;\n(statearr_44691_47449[(2)] \x3d null);\n\n(statearr_44691_47449[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (11))){\nvar inst_44336 \x3d (state_44488[(13)]);\nvar inst_44363 \x3d (state_44488[(7)]);\nvar inst_44363__$1 \x3d cljs.core.seq(inst_44336);\nvar state_44488__$1 \x3d (function (){var statearr_44697 \x3d state_44488;\n(statearr_44697[(7)] \x3d inst_44363__$1);\n\nreturn statearr_44697;\n})();\nif(inst_44363__$1){\nvar statearr_44698_47454 \x3d state_44488__$1;\n(statearr_44698_47454[(1)] \x3d (16));\n\n} else {\nvar statearr_44699_47455 \x3d state_44488__$1;\n(statearr_44699_47455[(1)] \x3d (17));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (9))){\nvar inst_44406 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44701_47457 \x3d state_44488__$1;\n(statearr_44701_47457[(2)] \x3d inst_44406);\n\n(statearr_44701_47457[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (5))){\nvar inst_44334 \x3d cljs.core.deref(cs);\nvar inst_44335 \x3d cljs.core.seq(inst_44334);\nvar inst_44336 \x3d inst_44335;\nvar inst_44337 \x3d null;\nvar inst_44338 \x3d (0);\nvar inst_44339 \x3d (0);\nvar state_44488__$1 \x3d (function (){var statearr_44707 \x3d state_44488;\n(statearr_44707[(13)] \x3d inst_44336);\n\n(statearr_44707[(14)] \x3d inst_44338);\n\n(statearr_44707[(15)] \x3d inst_44337);\n\n(statearr_44707[(17)] \x3d inst_44339);\n\nreturn statearr_44707;\n})();\nvar statearr_44711_47465 \x3d state_44488__$1;\n(statearr_44711_47465[(2)] \x3d null);\n\n(statearr_44711_47465[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (14))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44714_47469 \x3d state_44488__$1;\n(statearr_44714_47469[(2)] \x3d null);\n\n(statearr_44714_47469[(1)] \x3d (15));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (45))){\nvar inst_44477 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44718_47475 \x3d state_44488__$1;\n(statearr_44718_47475[(2)] \x3d inst_44477);\n\n(statearr_44718_47475[(1)] \x3d (44));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (26))){\nvar inst_44411 \x3d (state_44488[(27)]);\nvar inst_44471 \x3d (state_44488[(2)]);\nvar inst_44472 \x3d cljs.core.seq(inst_44411);\nvar state_44488__$1 \x3d (function (){var statearr_44721 \x3d state_44488;\n(statearr_44721[(29)] \x3d inst_44471);\n\nreturn statearr_44721;\n})();\nif(inst_44472){\nvar statearr_44722_47491 \x3d state_44488__$1;\n(statearr_44722_47491[(1)] \x3d (42));\n\n} else {\nvar statearr_44723_47498 \x3d state_44488__$1;\n(statearr_44723_47498[(1)] \x3d (43));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (16))){\nvar inst_44363 \x3d (state_44488[(7)]);\nvar inst_44366 \x3d cljs.core.chunked_seq_QMARK_(inst_44363);\nvar state_44488__$1 \x3d state_44488;\nif(inst_44366){\nvar statearr_44727_47504 \x3d state_44488__$1;\n(statearr_44727_47504[(1)] \x3d (19));\n\n} else {\nvar statearr_44730_47507 \x3d state_44488__$1;\n(statearr_44730_47507[(1)] \x3d (20));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (38))){\nvar inst_44463 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44733_47508 \x3d state_44488__$1;\n(statearr_44733_47508[(2)] \x3d inst_44463);\n\n(statearr_44733_47508[(1)] \x3d (35));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (30))){\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44736_47510 \x3d state_44488__$1;\n(statearr_44736_47510[(2)] \x3d null);\n\n(statearr_44736_47510[(1)] \x3d (32));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (10))){\nvar inst_44337 \x3d (state_44488[(15)]);\nvar inst_44339 \x3d (state_44488[(17)]);\nvar inst_44348 \x3d cljs.core._nth(inst_44337,inst_44339);\nvar inst_44350 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_44348,(0),null);\nvar inst_44351 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_44348,(1),null);\nvar state_44488__$1 \x3d (function (){var statearr_44739 \x3d state_44488;\n(statearr_44739[(24)] \x3d inst_44350);\n\nreturn statearr_44739;\n})();\nif(cljs.core.truth_(inst_44351)){\nvar statearr_44741_47524 \x3d state_44488__$1;\n(statearr_44741_47524[(1)] \x3d (13));\n\n} else {\nvar statearr_44742_47525 \x3d state_44488__$1;\n(statearr_44742_47525[(1)] \x3d (14));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (18))){\nvar inst_44401 \x3d (state_44488[(2)]);\nvar state_44488__$1 \x3d state_44488;\nvar statearr_44743_47526 \x3d state_44488__$1;\n(statearr_44743_47526[(2)] \x3d inst_44401);\n\n(statearr_44743_47526[(1)] \x3d (12));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (42))){\nvar state_44488__$1 \x3d state_44488;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_44488__$1,(45),dchan);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (37))){\nvar inst_44326 \x3d (state_44488[(11)]);\nvar inst_44452 \x3d (state_44488[(22)]);\nvar inst_44440 \x3d (state_44488[(23)]);\nvar inst_44452__$1 \x3d cljs.core.first(inst_44440);\nvar inst_44453 \x3d cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3(inst_44452__$1,inst_44326,done);\nvar state_44488__$1 \x3d (function (){var statearr_44756 \x3d state_44488;\n(statearr_44756[(22)] \x3d inst_44452__$1);\n\nreturn statearr_44756;\n})();\nif(cljs.core.truth_(inst_44453)){\nvar statearr_44758_47543 \x3d state_44488__$1;\n(statearr_44758_47543[(1)] \x3d (39));\n\n} else {\nvar statearr_44759_47545 \x3d state_44488__$1;\n(statearr_44759_47545[(1)] \x3d (40));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44490 \x3d\x3d\x3d (8))){\nvar inst_44338 \x3d (state_44488[(14)]);\nvar inst_44339 \x3d (state_44488[(17)]);\nvar inst_44341 \x3d (inst_44339 \x3c inst_44338);\nvar inst_44342 \x3d inst_44341;\nvar state_44488__$1 \x3d state_44488;\nif(cljs.core.truth_(inst_44342)){\nvar statearr_44760_47552 \x3d state_44488__$1;\n(statearr_44760_47552[(1)] \x3d (10));\n\n} else {\nvar statearr_44765_47553 \x3d state_44488__$1;\n(statearr_44765_47553[(1)] \x3d (11));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$mult_$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$mult_$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_44774 \x3d [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];\n(statearr_44774[(0)] \x3d cljs$core$async$mult_$_state_machine__42703__auto__);\n\n(statearr_44774[(1)] \x3d (1));\n\nreturn statearr_44774;\n});\nvar cljs$core$async$mult_$_state_machine__42703__auto____1 \x3d (function (state_44488){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_44488);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e44777){var ex__42707__auto__ \x3d e44777;\nvar statearr_44781_47563 \x3d state_44488;\n(statearr_44781_47563[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_44488[(4)]))){\nvar statearr_44782_47568 \x3d state_44488;\n(statearr_44782_47568[(1)] \x3d cljs.core.first((state_44488[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__47573 \x3d state_44488;\nstate_44488 \x3d G__47573;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$mult_$_state_machine__42703__auto__ \x3d function(state_44488){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$mult_$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$mult_$_state_machine__42703__auto____1.call(this,state_44488);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$mult_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$mult_$_state_machine__42703__auto____0;\ncljs$core$async$mult_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$mult_$_state_machine__42703__auto____1;\nreturn cljs$core$async$mult_$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_44786 \x3d f__42954__auto__();\n(statearr_44786[(6)] \x3d c__42953__auto___47195);\n\nreturn statearr_44786;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn m;\n});\n/**\n * Copies the mult source onto the supplied channel.\n * \n *   By default the channel will be closed when the source closes,\n *   but can be determined by the close? parameter.\n */\ncljs.core.async.tap \x3d (function cljs$core$async$tap(var_args){\nvar G__44800 \x3d arguments.length;\nswitch (G__44800) {\ncase 2:\nreturn cljs.core.async.tap.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.tap.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.tap.cljs$core$IFn$_invoke$arity$2 \x3d (function (mult,ch){\nreturn cljs.core.async.tap.cljs$core$IFn$_invoke$arity$3(mult,ch,true);\n}));\n\n(cljs.core.async.tap.cljs$core$IFn$_invoke$arity$3 \x3d (function (mult,ch,close_QMARK_){\ncljs.core.async.tap_STAR_(mult,ch,close_QMARK_);\n\nreturn ch;\n}));\n\n(cljs.core.async.tap.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Disconnects a target channel from a mult\n */\ncljs.core.async.untap \x3d (function cljs$core$async$untap(mult,ch){\nreturn cljs.core.async.untap_STAR_(mult,ch);\n});\n/**\n * Disconnects all target channels from a mult\n */\ncljs.core.async.untap_all \x3d (function cljs$core$async$untap_all(mult){\nreturn cljs.core.async.untap_all_STAR_(mult);\n});\n\n/**\n * @interface\n */\ncljs.core.async.Mix \x3d function(){};\n\nvar cljs$core$async$Mix$admix_STAR_$dyn_47596 \x3d (function (m,ch){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.admix_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(m,ch) : m__4464__auto__.call(null,m,ch));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.admix_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(m,ch) : m__4461__auto__.call(null,m,ch));\n} else {\nthrow cljs.core.missing_protocol(\x22Mix.admix*\x22,m);\n}\n}\n});\ncljs.core.async.admix_STAR_ \x3d (function cljs$core$async$admix_STAR_(m,ch){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mix$admix_STAR_$arity$2 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mix$admix_STAR_$arity$2(m,ch);\n} else {\nreturn cljs$core$async$Mix$admix_STAR_$dyn_47596(m,ch);\n}\n});\n\nvar cljs$core$async$Mix$unmix_STAR_$dyn_47606 \x3d (function (m,ch){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.unmix_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(m,ch) : m__4464__auto__.call(null,m,ch));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.unmix_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(m,ch) : m__4461__auto__.call(null,m,ch));\n} else {\nthrow cljs.core.missing_protocol(\x22Mix.unmix*\x22,m);\n}\n}\n});\ncljs.core.async.unmix_STAR_ \x3d (function cljs$core$async$unmix_STAR_(m,ch){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mix$unmix_STAR_$arity$2 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mix$unmix_STAR_$arity$2(m,ch);\n} else {\nreturn cljs$core$async$Mix$unmix_STAR_$dyn_47606(m,ch);\n}\n});\n\nvar cljs$core$async$Mix$unmix_all_STAR_$dyn_47612 \x3d (function (m){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.unmix_all_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(m) : m__4464__auto__.call(null,m));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.unmix_all_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(m) : m__4461__auto__.call(null,m));\n} else {\nthrow cljs.core.missing_protocol(\x22Mix.unmix-all*\x22,m);\n}\n}\n});\ncljs.core.async.unmix_all_STAR_ \x3d (function cljs$core$async$unmix_all_STAR_(m){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mix$unmix_all_STAR_$arity$1 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mix$unmix_all_STAR_$arity$1(m);\n} else {\nreturn cljs$core$async$Mix$unmix_all_STAR_$dyn_47612(m);\n}\n});\n\nvar cljs$core$async$Mix$toggle_STAR_$dyn_47623 \x3d (function (m,state_map){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.toggle_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(m,state_map) : m__4464__auto__.call(null,m,state_map));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.toggle_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(m,state_map) : m__4461__auto__.call(null,m,state_map));\n} else {\nthrow cljs.core.missing_protocol(\x22Mix.toggle*\x22,m);\n}\n}\n});\ncljs.core.async.toggle_STAR_ \x3d (function cljs$core$async$toggle_STAR_(m,state_map){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mix$toggle_STAR_$arity$2 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mix$toggle_STAR_$arity$2(m,state_map);\n} else {\nreturn cljs$core$async$Mix$toggle_STAR_$dyn_47623(m,state_map);\n}\n});\n\nvar cljs$core$async$Mix$solo_mode_STAR_$dyn_47630 \x3d (function (m,mode){\nvar x__4463__auto__ \x3d (((m \x3d\x3d null))?null:m);\nvar m__4464__auto__ \x3d (cljs.core.async.solo_mode_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(m,mode) : m__4464__auto__.call(null,m,mode));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.solo_mode_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(m,mode) : m__4461__auto__.call(null,m,mode));\n} else {\nthrow cljs.core.missing_protocol(\x22Mix.solo-mode*\x22,m);\n}\n}\n});\ncljs.core.async.solo_mode_STAR_ \x3d (function cljs$core$async$solo_mode_STAR_(m,mode){\nif((((!((m \x3d\x3d null)))) \x26\x26 ((!((m.cljs$core$async$Mix$solo_mode_STAR_$arity$2 \x3d\x3d null)))))){\nreturn m.cljs$core$async$Mix$solo_mode_STAR_$arity$2(m,mode);\n} else {\nreturn cljs$core$async$Mix$solo_mode_STAR_$dyn_47630(m,mode);\n}\n});\n\ncljs.core.async.ioc_alts_BANG_ \x3d (function cljs$core$async$ioc_alts_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___47640 \x3d arguments.length;\nvar i__4772__auto___47641 \x3d (0);\nwhile(true){\nif((i__4772__auto___47641 \x3c len__4771__auto___47640)){\nargs__4777__auto__.push((arguments[i__4772__auto___47641]));\n\nvar G__47644 \x3d (i__4772__auto___47641 + (1));\ni__4772__auto___47641 \x3d G__47644;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn cljs.core.async.ioc_alts_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(cljs.core.async.ioc_alts_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (state,cont_block,ports,p__44842){\nvar map__44843 \x3d p__44842;\nvar map__44843__$1 \x3d cljs.core.__destructure_map(map__44843);\nvar opts \x3d map__44843__$1;\nvar statearr_44844_47647 \x3d state;\n(statearr_44844_47647[(1)] \x3d cont_block);\n\n\nvar temp__5753__auto__ \x3d cljs.core.async.do_alts((function (val){\nvar statearr_44845_47650 \x3d state;\n(statearr_44845_47650[(2)] \x3d val);\n\n\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state);\n}),ports,opts);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar cb \x3d temp__5753__auto__;\nvar statearr_44848_47654 \x3d state;\n(statearr_44848_47654[(2)] \x3d cljs.core.deref(cb));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.async.ioc_alts_BANG_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(cljs.core.async.ioc_alts_BANG_.cljs$lang$applyTo \x3d (function (seq44836){\nvar G__44837 \x3d cljs.core.first(seq44836);\nvar seq44836__$1 \x3d cljs.core.next(seq44836);\nvar G__44838 \x3d cljs.core.first(seq44836__$1);\nvar seq44836__$2 \x3d cljs.core.next(seq44836__$1);\nvar G__44839 \x3d cljs.core.first(seq44836__$2);\nvar seq44836__$3 \x3d cljs.core.next(seq44836__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__44837,G__44838,G__44839,seq44836__$3);\n}));\n\n/**\n * Creates and returns a mix of one or more input channels which will\n *   be put on the supplied out channel. Input sources can be added to\n *   the mix with \x27admix\x27, and removed with \x27unmix\x27. A mix supports\n *   soloing, muting and pausing multiple inputs atomically using\n *   \x27toggle\x27, and can solo using either muting or pausing as determined\n *   by \x27solo-mode\x27.\n * \n *   Each channel can have zero or more boolean modes set via \x27toggle\x27:\n * \n *   :solo - when true, only this (ond other soloed) channel(s) will appear\n *        in the mix output channel. :mute and :pause states of soloed\n *        channels are ignored. If solo-mode is :mute, non-soloed\n *        channels are muted, if :pause, non-soloed channels are\n *        paused.\n * \n *   :mute - muted channels will have their contents consumed but not included in the mix\n *   :pause - paused channels will not have their contents consumed (and thus also not included in the mix)\n */\ncljs.core.async.mix \x3d (function cljs$core$async$mix(out){\nvar cs \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar solo_modes \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22pause\x22,\x22pause\x22,-2095325672),null,new cljs.core.Keyword(null,\x22mute\x22,\x22mute\x22,1151223646),null], null), null);\nvar attrs \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(solo_modes,new cljs.core.Keyword(null,\x22solo\x22,\x22solo\x22,-316350075));\nvar solo_mode \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22mute\x22,\x22mute\x22,1151223646));\nvar change \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(cljs.core.async.sliding_buffer((1)));\nvar changed \x3d (function (){\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(change,true);\n});\nvar pick \x3d (function (attr,chs){\nreturn cljs.core.reduce_kv((function (ret,c,v){\nif(cljs.core.truth_((attr.cljs$core$IFn$_invoke$arity$1 ? attr.cljs$core$IFn$_invoke$arity$1(v) : attr.call(null,v)))){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,c);\n} else {\nreturn ret;\n}\n}),cljs.core.PersistentHashSet.EMPTY,chs);\n});\nvar calc_state \x3d (function (){\nvar chs \x3d cljs.core.deref(cs);\nvar mode \x3d cljs.core.deref(solo_mode);\nvar solos \x3d pick(new cljs.core.Keyword(null,\x22solo\x22,\x22solo\x22,-316350075),chs);\nvar pauses \x3d pick(new cljs.core.Keyword(null,\x22pause\x22,\x22pause\x22,-2095325672),chs);\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22solos\x22,\x22solos\x22,1441458643),solos,new cljs.core.Keyword(null,\x22mutes\x22,\x22mutes\x22,1068806309),pick(new cljs.core.Keyword(null,\x22mute\x22,\x22mute\x22,1151223646),chs),new cljs.core.Keyword(null,\x22reads\x22,\x22reads\x22,-1215067361),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(mode,new cljs.core.Keyword(null,\x22pause\x22,\x22pause\x22,-2095325672))) \x26\x26 ((!(cljs.core.empty_QMARK_(solos))))))?cljs.core.vec(solos):cljs.core.vec(cljs.core.remove.cljs$core$IFn$_invoke$arity$2(pauses,cljs.core.keys(chs)))),change)], null);\n});\nvar m \x3d (function (){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async44853 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.async.Mix}\n * @implements {cljs.core.async.Mux}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async44853 \x3d (function (change,solo_mode,pick,cs,calc_state,out,changed,solo_modes,attrs,meta44854){\nthis.change \x3d change;\nthis.solo_mode \x3d solo_mode;\nthis.pick \x3d pick;\nthis.cs \x3d cs;\nthis.calc_state \x3d calc_state;\nthis.out \x3d out;\nthis.changed \x3d changed;\nthis.solo_modes \x3d solo_modes;\nthis.attrs \x3d attrs;\nthis.meta44854 \x3d meta44854;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_44855,meta44854__$1){\nvar self__ \x3d this;\nvar _44855__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async44853(self__.change,self__.solo_mode,self__.pick,self__.cs,self__.calc_state,self__.out,self__.changed,self__.solo_modes,self__.attrs,meta44854__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_44855){\nvar self__ \x3d this;\nvar _44855__$1 \x3d this;\nreturn self__.meta44854;\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mux$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mux$muxch_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.out;\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mix$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mix$admix_STAR_$arity$2 \x3d (function (_,ch){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.cs,cljs.core.assoc,ch,cljs.core.PersistentArrayMap.EMPTY);\n\nreturn (self__.changed.cljs$core$IFn$_invoke$arity$0 ? self__.changed.cljs$core$IFn$_invoke$arity$0() : self__.changed.call(null));\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mix$unmix_STAR_$arity$2 \x3d (function (_,ch){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(self__.cs,cljs.core.dissoc,ch);\n\nreturn (self__.changed.cljs$core$IFn$_invoke$arity$0 ? self__.changed.cljs$core$IFn$_invoke$arity$0() : self__.changed.call(null));\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mix$unmix_all_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.reset_BANG_(self__.cs,cljs.core.PersistentArrayMap.EMPTY);\n\nreturn (self__.changed.cljs$core$IFn$_invoke$arity$0 ? self__.changed.cljs$core$IFn$_invoke$arity$0() : self__.changed.call(null));\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mix$toggle_STAR_$arity$2 \x3d (function (_,state_map){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(self__.cs,cljs.core.partial.cljs$core$IFn$_invoke$arity$2(cljs.core.merge_with,cljs.core.merge),state_map);\n\nreturn (self__.changed.cljs$core$IFn$_invoke$arity$0 ? self__.changed.cljs$core$IFn$_invoke$arity$0() : self__.changed.call(null));\n}));\n\n(cljs.core.async.t_cljs$core$async44853.prototype.cljs$core$async$Mix$solo_mode_STAR_$arity$2 \x3d (function (_,mode){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_((self__.solo_modes.cljs$core$IFn$_invoke$arity$1 ? self__.solo_modes.cljs$core$IFn$_invoke$arity$1(mode) : self__.solo_modes.call(null,mode)))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,[\x22mode must be one of: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.solo_modes)].join(\x27\x27),\x22\\n\x22,\x22(solo-modes mode)\x22].join(\x27\x27)));\n}\n\ncljs.core.reset_BANG_(self__.solo_mode,mode);\n\nreturn (self__.changed.cljs$core$IFn$_invoke$arity$0 ? self__.changed.cljs$core$IFn$_invoke$arity$0() : self__.changed.call(null));\n}));\n\n(cljs.core.async.t_cljs$core$async44853.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22change\x22,\x22change\x22,477485025,null),new cljs.core.Symbol(null,\x22solo-mode\x22,\x22solo-mode\x22,2031788074,null),new cljs.core.Symbol(null,\x22pick\x22,\x22pick\x22,1300068175,null),new cljs.core.Symbol(null,\x22cs\x22,\x22cs\x22,-117024463,null),new cljs.core.Symbol(null,\x22calc-state\x22,\x22calc-state\x22,-349968968,null),new cljs.core.Symbol(null,\x22out\x22,\x22out\x22,729986010,null),new cljs.core.Symbol(null,\x22changed\x22,\x22changed\x22,-2083710852,null),new cljs.core.Symbol(null,\x22solo-modes\x22,\x22solo-modes\x22,882180540,null),new cljs.core.Symbol(null,\x22attrs\x22,\x22attrs\x22,-450137186,null),new cljs.core.Symbol(null,\x22meta44854\x22,\x22meta44854\x22,-1980131530,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async44853.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async44853.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async44853\x22);\n\n(cljs.core.async.t_cljs$core$async44853.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async44853\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async44853.\n */\ncljs.core.async.__GT_t_cljs$core$async44853 \x3d (function cljs$core$async$mix_$___GT_t_cljs$core$async44853(change__$1,solo_mode__$1,pick__$1,cs__$1,calc_state__$1,out__$1,changed__$1,solo_modes__$1,attrs__$1,meta44854){\nreturn (new cljs.core.async.t_cljs$core$async44853(change__$1,solo_mode__$1,pick__$1,cs__$1,calc_state__$1,out__$1,changed__$1,solo_modes__$1,attrs__$1,meta44854));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async44853(change,solo_mode,pick,cs,calc_state,out,changed,solo_modes,attrs,cljs.core.PersistentArrayMap.EMPTY));\n})()\n;\nvar c__42953__auto___47733 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_44946){\nvar state_val_44947 \x3d (state_44946[(1)]);\nif((state_val_44947 \x3d\x3d\x3d (7))){\nvar inst_44938 \x3d (state_44946[(2)]);\nvar state_44946__$1 \x3d state_44946;\nvar statearr_44956_47736 \x3d state_44946__$1;\n(statearr_44956_47736[(2)] \x3d inst_44938);\n\n(statearr_44956_47736[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (20))){\nvar inst_44932 \x3d (state_44946[(2)]);\nvar state_44946__$1 \x3d state_44946;\nvar statearr_44958_47738 \x3d state_44946__$1;\n(statearr_44958_47738[(2)] \x3d inst_44932);\n\n(statearr_44958_47738[(1)] \x3d (16));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (1))){\nvar inst_44875 \x3d calc_state();\nvar inst_44876 \x3d cljs.core.__destructure_map(inst_44875);\nvar inst_44879 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_44876,new cljs.core.Keyword(null,\x22solos\x22,\x22solos\x22,1441458643));\nvar inst_44880 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_44876,new cljs.core.Keyword(null,\x22mutes\x22,\x22mutes\x22,1068806309));\nvar inst_44881 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_44876,new cljs.core.Keyword(null,\x22reads\x22,\x22reads\x22,-1215067361));\nvar inst_44882 \x3d inst_44875;\nvar state_44946__$1 \x3d (function (){var statearr_44963 \x3d state_44946;\n(statearr_44963[(7)] \x3d inst_44879);\n\n(statearr_44963[(8)] \x3d inst_44881);\n\n(statearr_44963[(9)] \x3d inst_44882);\n\n(statearr_44963[(10)] \x3d inst_44880);\n\nreturn statearr_44963;\n})();\nvar statearr_44964_47740 \x3d state_44946__$1;\n(statearr_44964_47740[(2)] \x3d null);\n\n(statearr_44964_47740[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (4))){\nvar inst_44897 \x3d (state_44946[(11)]);\nvar inst_44896 \x3d (state_44946[(12)]);\nvar inst_44895 \x3d (state_44946[(2)]);\nvar inst_44896__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_44895,(0),null);\nvar inst_44897__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_44895,(1),null);\nvar inst_44899 \x3d (inst_44896__$1 \x3d\x3d null);\nvar inst_44900 \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(inst_44897__$1,change);\nvar inst_44901 \x3d ((inst_44899) || (inst_44900));\nvar state_44946__$1 \x3d (function (){var statearr_44965 \x3d state_44946;\n(statearr_44965[(11)] \x3d inst_44897__$1);\n\n(statearr_44965[(12)] \x3d inst_44896__$1);\n\nreturn statearr_44965;\n})();\nif(cljs.core.truth_(inst_44901)){\nvar statearr_44966_47749 \x3d state_44946__$1;\n(statearr_44966_47749[(1)] \x3d (5));\n\n} else {\nvar statearr_44967_47751 \x3d state_44946__$1;\n(statearr_44967_47751[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (15))){\nvar inst_44887 \x3d (state_44946[(13)]);\nvar inst_44882 \x3d inst_44887;\nvar state_44946__$1 \x3d (function (){var statearr_44968 \x3d state_44946;\n(statearr_44968[(9)] \x3d inst_44882);\n\nreturn statearr_44968;\n})();\nvar statearr_44969_47752 \x3d state_44946__$1;\n(statearr_44969_47752[(2)] \x3d null);\n\n(statearr_44969_47752[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (13))){\nvar inst_44924 \x3d (state_44946[(2)]);\nvar state_44946__$1 \x3d state_44946;\nif(cljs.core.truth_(inst_44924)){\nvar statearr_44970_47753 \x3d state_44946__$1;\n(statearr_44970_47753[(1)] \x3d (14));\n\n} else {\nvar statearr_44973_47754 \x3d state_44946__$1;\n(statearr_44973_47754[(1)] \x3d (15));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (6))){\nvar inst_44897 \x3d (state_44946[(11)]);\nvar inst_44888 \x3d (state_44946[(14)]);\nvar inst_44915 \x3d (state_44946[(15)]);\nvar inst_44915__$1 \x3d (inst_44888.cljs$core$IFn$_invoke$arity$1 ? inst_44888.cljs$core$IFn$_invoke$arity$1(inst_44897) : inst_44888.call(null,inst_44897));\nvar state_44946__$1 \x3d (function (){var statearr_44976 \x3d state_44946;\n(statearr_44976[(15)] \x3d inst_44915__$1);\n\nreturn statearr_44976;\n})();\nif(cljs.core.truth_(inst_44915__$1)){\nvar statearr_44977_47756 \x3d state_44946__$1;\n(statearr_44977_47756[(1)] \x3d (11));\n\n} else {\nvar statearr_44979_47757 \x3d state_44946__$1;\n(statearr_44979_47757[(1)] \x3d (12));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (17))){\nvar inst_44927 \x3d (state_44946[(2)]);\nvar state_44946__$1 \x3d state_44946;\nif(cljs.core.truth_(inst_44927)){\nvar statearr_44981_47759 \x3d state_44946__$1;\n(statearr_44981_47759[(1)] \x3d (18));\n\n} else {\nvar statearr_44982_47760 \x3d state_44946__$1;\n(statearr_44982_47760[(1)] \x3d (19));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (3))){\nvar inst_44940 \x3d (state_44946[(2)]);\nvar state_44946__$1 \x3d state_44946;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_44946__$1,inst_44940);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (12))){\nvar inst_44897 \x3d (state_44946[(11)]);\nvar inst_44888 \x3d (state_44946[(14)]);\nvar inst_44889 \x3d (state_44946[(16)]);\nvar inst_44919 \x3d cljs.core.empty_QMARK_(inst_44888);\nvar inst_44920 \x3d (inst_44889.cljs$core$IFn$_invoke$arity$1 ? inst_44889.cljs$core$IFn$_invoke$arity$1(inst_44897) : inst_44889.call(null,inst_44897));\nvar inst_44921 \x3d cljs.core.not(inst_44920);\nvar inst_44922 \x3d ((inst_44919) \x26\x26 (inst_44921));\nvar state_44946__$1 \x3d state_44946;\nvar statearr_44985_47762 \x3d state_44946__$1;\n(statearr_44985_47762[(2)] \x3d inst_44922);\n\n(statearr_44985_47762[(1)] \x3d (13));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (2))){\nvar inst_44882 \x3d (state_44946[(9)]);\nvar inst_44887 \x3d (state_44946[(13)]);\nvar inst_44887__$1 \x3d cljs.core.__destructure_map(inst_44882);\nvar inst_44888 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_44887__$1,new cljs.core.Keyword(null,\x22solos\x22,\x22solos\x22,1441458643));\nvar inst_44889 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_44887__$1,new cljs.core.Keyword(null,\x22mutes\x22,\x22mutes\x22,1068806309));\nvar inst_44890 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_44887__$1,new cljs.core.Keyword(null,\x22reads\x22,\x22reads\x22,-1215067361));\nvar state_44946__$1 \x3d (function (){var statearr_44991 \x3d state_44946;\n(statearr_44991[(14)] \x3d inst_44888);\n\n(statearr_44991[(16)] \x3d inst_44889);\n\n(statearr_44991[(13)] \x3d inst_44887__$1);\n\nreturn statearr_44991;\n})();\nreturn cljs.core.async.ioc_alts_BANG_(state_44946__$1,(4),inst_44890);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (19))){\nvar state_44946__$1 \x3d state_44946;\nvar statearr_44993_47766 \x3d state_44946__$1;\n(statearr_44993_47766[(2)] \x3d null);\n\n(statearr_44993_47766[(1)] \x3d (20));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (11))){\nvar inst_44915 \x3d (state_44946[(15)]);\nvar state_44946__$1 \x3d state_44946;\nvar statearr_44996_47768 \x3d state_44946__$1;\n(statearr_44996_47768[(2)] \x3d inst_44915);\n\n(statearr_44996_47768[(1)] \x3d (13));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (9))){\nvar state_44946__$1 \x3d state_44946;\nvar statearr_44998_47769 \x3d state_44946__$1;\n(statearr_44998_47769[(2)] \x3d null);\n\n(statearr_44998_47769[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (5))){\nvar inst_44896 \x3d (state_44946[(12)]);\nvar inst_44904 \x3d (inst_44896 \x3d\x3d null);\nvar state_44946__$1 \x3d state_44946;\nif(cljs.core.truth_(inst_44904)){\nvar statearr_45000_47771 \x3d state_44946__$1;\n(statearr_45000_47771[(1)] \x3d (8));\n\n} else {\nvar statearr_45001_47772 \x3d state_44946__$1;\n(statearr_45001_47772[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (14))){\nvar inst_44896 \x3d (state_44946[(12)]);\nvar state_44946__$1 \x3d state_44946;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_44946__$1,(17),out,inst_44896);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (16))){\nvar inst_44936 \x3d (state_44946[(2)]);\nvar state_44946__$1 \x3d state_44946;\nvar statearr_45003_47774 \x3d state_44946__$1;\n(statearr_45003_47774[(2)] \x3d inst_44936);\n\n(statearr_45003_47774[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (10))){\nvar inst_44909 \x3d (state_44946[(2)]);\nvar inst_44910 \x3d calc_state();\nvar inst_44882 \x3d inst_44910;\nvar state_44946__$1 \x3d (function (){var statearr_45006 \x3d state_44946;\n(statearr_45006[(17)] \x3d inst_44909);\n\n(statearr_45006[(9)] \x3d inst_44882);\n\nreturn statearr_45006;\n})();\nvar statearr_45007_47779 \x3d state_44946__$1;\n(statearr_45007_47779[(2)] \x3d null);\n\n(statearr_45007_47779[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (18))){\nvar inst_44887 \x3d (state_44946[(13)]);\nvar inst_44882 \x3d inst_44887;\nvar state_44946__$1 \x3d (function (){var statearr_45008 \x3d state_44946;\n(statearr_45008[(9)] \x3d inst_44882);\n\nreturn statearr_45008;\n})();\nvar statearr_45009_47781 \x3d state_44946__$1;\n(statearr_45009_47781[(2)] \x3d null);\n\n(statearr_45009_47781[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_44947 \x3d\x3d\x3d (8))){\nvar inst_44897 \x3d (state_44946[(11)]);\nvar inst_44906 \x3d cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cs,cljs.core.dissoc,inst_44897);\nvar state_44946__$1 \x3d state_44946;\nvar statearr_45013_47783 \x3d state_44946__$1;\n(statearr_45013_47783[(2)] \x3d inst_44906);\n\n(statearr_45013_47783[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$mix_$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$mix_$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_45017 \x3d [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_45017[(0)] \x3d cljs$core$async$mix_$_state_machine__42703__auto__);\n\n(statearr_45017[(1)] \x3d (1));\n\nreturn statearr_45017;\n});\nvar cljs$core$async$mix_$_state_machine__42703__auto____1 \x3d (function (state_44946){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_44946);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e45018){var ex__42707__auto__ \x3d e45018;\nvar statearr_45019_47787 \x3d state_44946;\n(statearr_45019_47787[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_44946[(4)]))){\nvar statearr_45020_47789 \x3d state_44946;\n(statearr_45020_47789[(1)] \x3d cljs.core.first((state_44946[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__47792 \x3d state_44946;\nstate_44946 \x3d G__47792;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$mix_$_state_machine__42703__auto__ \x3d function(state_44946){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$mix_$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$mix_$_state_machine__42703__auto____1.call(this,state_44946);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$mix_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$mix_$_state_machine__42703__auto____0;\ncljs$core$async$mix_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$mix_$_state_machine__42703__auto____1;\nreturn cljs$core$async$mix_$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_45024 \x3d f__42954__auto__();\n(statearr_45024[(6)] \x3d c__42953__auto___47733);\n\nreturn statearr_45024;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn m;\n});\n/**\n * Adds ch as an input to the mix\n */\ncljs.core.async.admix \x3d (function cljs$core$async$admix(mix,ch){\nreturn cljs.core.async.admix_STAR_(mix,ch);\n});\n/**\n * Removes ch as an input to the mix\n */\ncljs.core.async.unmix \x3d (function cljs$core$async$unmix(mix,ch){\nreturn cljs.core.async.unmix_STAR_(mix,ch);\n});\n/**\n * removes all inputs from the mix\n */\ncljs.core.async.unmix_all \x3d (function cljs$core$async$unmix_all(mix){\nreturn cljs.core.async.unmix_all_STAR_(mix);\n});\n/**\n * Atomically sets the state(s) of one or more channels in a mix. The\n *   state map is a map of channels -\x3e channel-state-map. A\n *   channel-state-map is a map of attrs -\x3e boolean, where attr is one or\n *   more of :mute, :pause or :solo. Any states supplied are merged with\n *   the current state.\n * \n *   Note that channels can be added to a mix via toggle, which can be\n *   used to add channels in a particular (e.g. paused) state.\n */\ncljs.core.async.toggle \x3d (function cljs$core$async$toggle(mix,state_map){\nreturn cljs.core.async.toggle_STAR_(mix,state_map);\n});\n/**\n * Sets the solo mode of the mix. mode must be one of :mute or :pause\n */\ncljs.core.async.solo_mode \x3d (function cljs$core$async$solo_mode(mix,mode){\nreturn cljs.core.async.solo_mode_STAR_(mix,mode);\n});\n\n/**\n * @interface\n */\ncljs.core.async.Pub \x3d function(){};\n\nvar cljs$core$async$Pub$sub_STAR_$dyn_47801 \x3d (function (p,v,ch,close_QMARK_){\nvar x__4463__auto__ \x3d (((p \x3d\x3d null))?null:p);\nvar m__4464__auto__ \x3d (cljs.core.async.sub_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$4(p,v,ch,close_QMARK_) : m__4464__auto__.call(null,p,v,ch,close_QMARK_));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.sub_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$4(p,v,ch,close_QMARK_) : m__4461__auto__.call(null,p,v,ch,close_QMARK_));\n} else {\nthrow cljs.core.missing_protocol(\x22Pub.sub*\x22,p);\n}\n}\n});\ncljs.core.async.sub_STAR_ \x3d (function cljs$core$async$sub_STAR_(p,v,ch,close_QMARK_){\nif((((!((p \x3d\x3d null)))) \x26\x26 ((!((p.cljs$core$async$Pub$sub_STAR_$arity$4 \x3d\x3d null)))))){\nreturn p.cljs$core$async$Pub$sub_STAR_$arity$4(p,v,ch,close_QMARK_);\n} else {\nreturn cljs$core$async$Pub$sub_STAR_$dyn_47801(p,v,ch,close_QMARK_);\n}\n});\n\nvar cljs$core$async$Pub$unsub_STAR_$dyn_47806 \x3d (function (p,v,ch){\nvar x__4463__auto__ \x3d (((p \x3d\x3d null))?null:p);\nvar m__4464__auto__ \x3d (cljs.core.async.unsub_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(p,v,ch) : m__4464__auto__.call(null,p,v,ch));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.unsub_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(p,v,ch) : m__4461__auto__.call(null,p,v,ch));\n} else {\nthrow cljs.core.missing_protocol(\x22Pub.unsub*\x22,p);\n}\n}\n});\ncljs.core.async.unsub_STAR_ \x3d (function cljs$core$async$unsub_STAR_(p,v,ch){\nif((((!((p \x3d\x3d null)))) \x26\x26 ((!((p.cljs$core$async$Pub$unsub_STAR_$arity$3 \x3d\x3d null)))))){\nreturn p.cljs$core$async$Pub$unsub_STAR_$arity$3(p,v,ch);\n} else {\nreturn cljs$core$async$Pub$unsub_STAR_$dyn_47806(p,v,ch);\n}\n});\n\nvar cljs$core$async$Pub$unsub_all_STAR_$dyn_47810 \x3d (function() {\nvar G__47811 \x3d null;\nvar G__47811__1 \x3d (function (p){\nvar x__4463__auto__ \x3d (((p \x3d\x3d null))?null:p);\nvar m__4464__auto__ \x3d (cljs.core.async.unsub_all_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(p) : m__4464__auto__.call(null,p));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.unsub_all_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(p) : m__4461__auto__.call(null,p));\n} else {\nthrow cljs.core.missing_protocol(\x22Pub.unsub-all*\x22,p);\n}\n}\n});\nvar G__47811__2 \x3d (function (p,v){\nvar x__4463__auto__ \x3d (((p \x3d\x3d null))?null:p);\nvar m__4464__auto__ \x3d (cljs.core.async.unsub_all_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(p,v) : m__4464__auto__.call(null,p,v));\n} else {\nvar m__4461__auto__ \x3d (cljs.core.async.unsub_all_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(p,v) : m__4461__auto__.call(null,p,v));\n} else {\nthrow cljs.core.missing_protocol(\x22Pub.unsub-all*\x22,p);\n}\n}\n});\nG__47811 \x3d function(p,v){\nswitch(arguments.length){\ncase 1:\nreturn G__47811__1.call(this,p);\ncase 2:\nreturn G__47811__2.call(this,p,v);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47811.cljs$core$IFn$_invoke$arity$1 \x3d G__47811__1;\nG__47811.cljs$core$IFn$_invoke$arity$2 \x3d G__47811__2;\nreturn G__47811;\n})()\n;\ncljs.core.async.unsub_all_STAR_ \x3d (function cljs$core$async$unsub_all_STAR_(var_args){\nvar G__45092 \x3d arguments.length;\nswitch (G__45092) {\ncase 1:\nreturn cljs.core.async.unsub_all_STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.unsub_all_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.unsub_all_STAR_.cljs$core$IFn$_invoke$arity$1 \x3d (function (p){\nif((((!((p \x3d\x3d null)))) \x26\x26 ((!((p.cljs$core$async$Pub$unsub_all_STAR_$arity$1 \x3d\x3d null)))))){\nreturn p.cljs$core$async$Pub$unsub_all_STAR_$arity$1(p);\n} else {\nreturn cljs$core$async$Pub$unsub_all_STAR_$dyn_47810(p);\n}\n}));\n\n(cljs.core.async.unsub_all_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (p,v){\nif((((!((p \x3d\x3d null)))) \x26\x26 ((!((p.cljs$core$async$Pub$unsub_all_STAR_$arity$2 \x3d\x3d null)))))){\nreturn p.cljs$core$async$Pub$unsub_all_STAR_$arity$2(p,v);\n} else {\nreturn cljs$core$async$Pub$unsub_all_STAR_$dyn_47810(p,v);\n}\n}));\n\n(cljs.core.async.unsub_all_STAR_.cljs$lang$maxFixedArity \x3d 2);\n\n\n/**\n * Creates and returns a pub(lication) of the supplied channel,\n *   partitioned into topics by the topic-fn. topic-fn will be applied to\n *   each value on the channel and the result will determine the \x27topic\x27\n *   on which that value will be put. Channels can be subscribed to\n *   receive copies of topics using \x27sub\x27, and unsubscribed using\n *   \x27unsub\x27. Each topic will be handled by an internal mult on a\n *   dedicated channel. By default these internal channels are\n *   unbuffered, but a buf-fn can be supplied which, given a topic,\n *   creates a buffer with desired properties.\n * \n *   Each item is distributed to all subs in parallel and synchronously,\n *   i.e. each sub must accept before the next item is distributed. Use\n *   buffering/windowing to prevent slow subs from holding up the pub.\n * \n *   Items received when there are no matching subs get dropped.\n * \n *   Note that if buf-fns are used then each topic is handled\n *   asynchronously, i.e. if a channel is subscribed to more than one\n *   topic it should not expect them to be interleaved identically with\n *   the source.\n */\ncljs.core.async.pub \x3d (function cljs$core$async$pub(var_args){\nvar G__45105 \x3d arguments.length;\nswitch (G__45105) {\ncase 2:\nreturn cljs.core.async.pub.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.pub.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.pub.cljs$core$IFn$_invoke$arity$2 \x3d (function (ch,topic_fn){\nreturn cljs.core.async.pub.cljs$core$IFn$_invoke$arity$3(ch,topic_fn,cljs.core.constantly(null));\n}));\n\n(cljs.core.async.pub.cljs$core$IFn$_invoke$arity$3 \x3d (function (ch,topic_fn,buf_fn){\nvar mults \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar ensure_mult \x3d (function (topic){\nvar or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(mults),topic);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(mults,(function (p1__45101_SHARP_){\nif(cljs.core.truth_((p1__45101_SHARP_.cljs$core$IFn$_invoke$arity$1 ? p1__45101_SHARP_.cljs$core$IFn$_invoke$arity$1(topic) : p1__45101_SHARP_.call(null,topic)))){\nreturn p1__45101_SHARP_;\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__45101_SHARP_,topic,cljs.core.async.mult(cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((buf_fn.cljs$core$IFn$_invoke$arity$1 ? buf_fn.cljs$core$IFn$_invoke$arity$1(topic) : buf_fn.call(null,topic)))));\n}\n})),topic);\n}\n});\nvar p \x3d (function (){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async45111 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.Pub}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.async.Mux}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async45111 \x3d (function (ch,topic_fn,buf_fn,mults,ensure_mult,meta45112){\nthis.ch \x3d ch;\nthis.topic_fn \x3d topic_fn;\nthis.buf_fn \x3d buf_fn;\nthis.mults \x3d mults;\nthis.ensure_mult \x3d ensure_mult;\nthis.meta45112 \x3d meta45112;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45113,meta45112__$1){\nvar self__ \x3d this;\nvar _45113__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async45111(self__.ch,self__.topic_fn,self__.buf_fn,self__.mults,self__.ensure_mult,meta45112__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45113){\nvar self__ \x3d this;\nvar _45113__$1 \x3d this;\nreturn self__.meta45112;\n}));\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Mux$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Mux$muxch_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.ch;\n}));\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Pub$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Pub$sub_STAR_$arity$4 \x3d (function (p,topic,ch__$1,close_QMARK_){\nvar self__ \x3d this;\nvar p__$1 \x3d this;\nvar m \x3d (self__.ensure_mult.cljs$core$IFn$_invoke$arity$1 ? self__.ensure_mult.cljs$core$IFn$_invoke$arity$1(topic) : self__.ensure_mult.call(null,topic));\nreturn cljs.core.async.tap.cljs$core$IFn$_invoke$arity$3(m,ch__$1,close_QMARK_);\n}));\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Pub$unsub_STAR_$arity$3 \x3d (function (p,topic,ch__$1){\nvar self__ \x3d this;\nvar p__$1 \x3d this;\nvar temp__5753__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(self__.mults),topic);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar m \x3d temp__5753__auto__;\nreturn cljs.core.async.untap(m,ch__$1);\n} else {\nreturn null;\n}\n}));\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Pub$unsub_all_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.reset_BANG_(self__.mults,cljs.core.PersistentArrayMap.EMPTY);\n}));\n\n(cljs.core.async.t_cljs$core$async45111.prototype.cljs$core$async$Pub$unsub_all_STAR_$arity$2 \x3d (function (_,topic){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(self__.mults,cljs.core.dissoc,topic);\n}));\n\n(cljs.core.async.t_cljs$core$async45111.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ch\x22,\x22ch\x22,1085813622,null),new cljs.core.Symbol(null,\x22topic-fn\x22,\x22topic-fn\x22,-862449736,null),new cljs.core.Symbol(null,\x22buf-fn\x22,\x22buf-fn\x22,-1200281591,null),new cljs.core.Symbol(null,\x22mults\x22,\x22mults\x22,-461114485,null),new cljs.core.Symbol(null,\x22ensure-mult\x22,\x22ensure-mult\x22,1796584816,null),new cljs.core.Symbol(null,\x22meta45112\x22,\x22meta45112\x22,91216242,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async45111.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async45111.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async45111\x22);\n\n(cljs.core.async.t_cljs$core$async45111.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async45111\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async45111.\n */\ncljs.core.async.__GT_t_cljs$core$async45111 \x3d (function cljs$core$async$__GT_t_cljs$core$async45111(ch__$1,topic_fn__$1,buf_fn__$1,mults__$1,ensure_mult__$1,meta45112){\nreturn (new cljs.core.async.t_cljs$core$async45111(ch__$1,topic_fn__$1,buf_fn__$1,mults__$1,ensure_mult__$1,meta45112));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async45111(ch,topic_fn,buf_fn,mults,ensure_mult,cljs.core.PersistentArrayMap.EMPTY));\n})()\n;\nvar c__42953__auto___47889 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_45215){\nvar state_val_45216 \x3d (state_45215[(1)]);\nif((state_val_45216 \x3d\x3d\x3d (7))){\nvar inst_45210 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45221_47894 \x3d state_45215__$1;\n(statearr_45221_47894[(2)] \x3d inst_45210);\n\n(statearr_45221_47894[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (20))){\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45224_47897 \x3d state_45215__$1;\n(statearr_45224_47897[(2)] \x3d null);\n\n(statearr_45224_47897[(1)] \x3d (21));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (1))){\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45226_47899 \x3d state_45215__$1;\n(statearr_45226_47899[(2)] \x3d null);\n\n(statearr_45226_47899[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (24))){\nvar inst_45189 \x3d (state_45215[(7)]);\nvar inst_45202 \x3d cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(mults,cljs.core.dissoc,inst_45189);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45230_47904 \x3d state_45215__$1;\n(statearr_45230_47904[(2)] \x3d inst_45202);\n\n(statearr_45230_47904[(1)] \x3d (25));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (4))){\nvar inst_45126 \x3d (state_45215[(8)]);\nvar inst_45126__$1 \x3d (state_45215[(2)]);\nvar inst_45127 \x3d (inst_45126__$1 \x3d\x3d null);\nvar state_45215__$1 \x3d (function (){var statearr_45231 \x3d state_45215;\n(statearr_45231[(8)] \x3d inst_45126__$1);\n\nreturn statearr_45231;\n})();\nif(cljs.core.truth_(inst_45127)){\nvar statearr_45232_47911 \x3d state_45215__$1;\n(statearr_45232_47911[(1)] \x3d (5));\n\n} else {\nvar statearr_45233_47912 \x3d state_45215__$1;\n(statearr_45233_47912[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (15))){\nvar inst_45178 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45234_47915 \x3d state_45215__$1;\n(statearr_45234_47915[(2)] \x3d inst_45178);\n\n(statearr_45234_47915[(1)] \x3d (12));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (21))){\nvar inst_45207 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d (function (){var statearr_45237 \x3d state_45215;\n(statearr_45237[(9)] \x3d inst_45207);\n\nreturn statearr_45237;\n})();\nvar statearr_45238_47922 \x3d state_45215__$1;\n(statearr_45238_47922[(2)] \x3d null);\n\n(statearr_45238_47922[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (13))){\nvar inst_45151 \x3d (state_45215[(10)]);\nvar inst_45153 \x3d cljs.core.chunked_seq_QMARK_(inst_45151);\nvar state_45215__$1 \x3d state_45215;\nif(inst_45153){\nvar statearr_45242_47928 \x3d state_45215__$1;\n(statearr_45242_47928[(1)] \x3d (16));\n\n} else {\nvar statearr_45243_47930 \x3d state_45215__$1;\n(statearr_45243_47930[(1)] \x3d (17));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (22))){\nvar inst_45199 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nif(cljs.core.truth_(inst_45199)){\nvar statearr_45244_47935 \x3d state_45215__$1;\n(statearr_45244_47935[(1)] \x3d (23));\n\n} else {\nvar statearr_45245_47937 \x3d state_45215__$1;\n(statearr_45245_47937[(1)] \x3d (24));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (6))){\nvar inst_45189 \x3d (state_45215[(7)]);\nvar inst_45126 \x3d (state_45215[(8)]);\nvar inst_45194 \x3d (state_45215[(11)]);\nvar inst_45189__$1 \x3d (topic_fn.cljs$core$IFn$_invoke$arity$1 ? topic_fn.cljs$core$IFn$_invoke$arity$1(inst_45126) : topic_fn.call(null,inst_45126));\nvar inst_45193 \x3d cljs.core.deref(mults);\nvar inst_45194__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(inst_45193,inst_45189__$1);\nvar state_45215__$1 \x3d (function (){var statearr_45250 \x3d state_45215;\n(statearr_45250[(7)] \x3d inst_45189__$1);\n\n(statearr_45250[(11)] \x3d inst_45194__$1);\n\nreturn statearr_45250;\n})();\nif(cljs.core.truth_(inst_45194__$1)){\nvar statearr_45251_47945 \x3d state_45215__$1;\n(statearr_45251_47945[(1)] \x3d (19));\n\n} else {\nvar statearr_45252_47946 \x3d state_45215__$1;\n(statearr_45252_47946[(1)] \x3d (20));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (25))){\nvar inst_45204 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45253_47947 \x3d state_45215__$1;\n(statearr_45253_47947[(2)] \x3d inst_45204);\n\n(statearr_45253_47947[(1)] \x3d (21));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (17))){\nvar inst_45151 \x3d (state_45215[(10)]);\nvar inst_45160 \x3d cljs.core.first(inst_45151);\nvar inst_45167 \x3d cljs.core.async.muxch_STAR_(inst_45160);\nvar inst_45168 \x3d cljs.core.async.close_BANG_(inst_45167);\nvar inst_45169 \x3d cljs.core.next(inst_45151);\nvar inst_45136 \x3d inst_45169;\nvar inst_45137 \x3d null;\nvar inst_45138 \x3d (0);\nvar inst_45139 \x3d (0);\nvar state_45215__$1 \x3d (function (){var statearr_45258 \x3d state_45215;\n(statearr_45258[(12)] \x3d inst_45139);\n\n(statearr_45258[(13)] \x3d inst_45138);\n\n(statearr_45258[(14)] \x3d inst_45168);\n\n(statearr_45258[(15)] \x3d inst_45137);\n\n(statearr_45258[(16)] \x3d inst_45136);\n\nreturn statearr_45258;\n})();\nvar statearr_45260_47950 \x3d state_45215__$1;\n(statearr_45260_47950[(2)] \x3d null);\n\n(statearr_45260_47950[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (3))){\nvar inst_45212 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_45215__$1,inst_45212);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (12))){\nvar inst_45180 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45261_47952 \x3d state_45215__$1;\n(statearr_45261_47952[(2)] \x3d inst_45180);\n\n(statearr_45261_47952[(1)] \x3d (9));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (2))){\nvar state_45215__$1 \x3d state_45215;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_45215__$1,(4),ch);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (23))){\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45262_47957 \x3d state_45215__$1;\n(statearr_45262_47957[(2)] \x3d null);\n\n(statearr_45262_47957[(1)] \x3d (25));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (19))){\nvar inst_45126 \x3d (state_45215[(8)]);\nvar inst_45194 \x3d (state_45215[(11)]);\nvar inst_45197 \x3d cljs.core.async.muxch_STAR_(inst_45194);\nvar state_45215__$1 \x3d state_45215;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45215__$1,(22),inst_45197,inst_45126);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (11))){\nvar inst_45151 \x3d (state_45215[(10)]);\nvar inst_45136 \x3d (state_45215[(16)]);\nvar inst_45151__$1 \x3d cljs.core.seq(inst_45136);\nvar state_45215__$1 \x3d (function (){var statearr_45263 \x3d state_45215;\n(statearr_45263[(10)] \x3d inst_45151__$1);\n\nreturn statearr_45263;\n})();\nif(inst_45151__$1){\nvar statearr_45264_47960 \x3d state_45215__$1;\n(statearr_45264_47960[(1)] \x3d (13));\n\n} else {\nvar statearr_45265_47963 \x3d state_45215__$1;\n(statearr_45265_47963[(1)] \x3d (14));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (9))){\nvar inst_45182 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45266_47968 \x3d state_45215__$1;\n(statearr_45266_47968[(2)] \x3d inst_45182);\n\n(statearr_45266_47968[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (5))){\nvar inst_45133 \x3d cljs.core.deref(mults);\nvar inst_45134 \x3d cljs.core.vals(inst_45133);\nvar inst_45135 \x3d cljs.core.seq(inst_45134);\nvar inst_45136 \x3d inst_45135;\nvar inst_45137 \x3d null;\nvar inst_45138 \x3d (0);\nvar inst_45139 \x3d (0);\nvar state_45215__$1 \x3d (function (){var statearr_45267 \x3d state_45215;\n(statearr_45267[(12)] \x3d inst_45139);\n\n(statearr_45267[(13)] \x3d inst_45138);\n\n(statearr_45267[(15)] \x3d inst_45137);\n\n(statearr_45267[(16)] \x3d inst_45136);\n\nreturn statearr_45267;\n})();\nvar statearr_45268_47974 \x3d state_45215__$1;\n(statearr_45268_47974[(2)] \x3d null);\n\n(statearr_45268_47974[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (14))){\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45275_47977 \x3d state_45215__$1;\n(statearr_45275_47977[(2)] \x3d null);\n\n(statearr_45275_47977[(1)] \x3d (15));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (16))){\nvar inst_45151 \x3d (state_45215[(10)]);\nvar inst_45155 \x3d cljs.core.chunk_first(inst_45151);\nvar inst_45156 \x3d cljs.core.chunk_rest(inst_45151);\nvar inst_45157 \x3d cljs.core.count(inst_45155);\nvar inst_45136 \x3d inst_45156;\nvar inst_45137 \x3d inst_45155;\nvar inst_45138 \x3d inst_45157;\nvar inst_45139 \x3d (0);\nvar state_45215__$1 \x3d (function (){var statearr_45276 \x3d state_45215;\n(statearr_45276[(12)] \x3d inst_45139);\n\n(statearr_45276[(13)] \x3d inst_45138);\n\n(statearr_45276[(15)] \x3d inst_45137);\n\n(statearr_45276[(16)] \x3d inst_45136);\n\nreturn statearr_45276;\n})();\nvar statearr_45277_47984 \x3d state_45215__$1;\n(statearr_45277_47984[(2)] \x3d null);\n\n(statearr_45277_47984[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (10))){\nvar inst_45139 \x3d (state_45215[(12)]);\nvar inst_45138 \x3d (state_45215[(13)]);\nvar inst_45137 \x3d (state_45215[(15)]);\nvar inst_45136 \x3d (state_45215[(16)]);\nvar inst_45144 \x3d cljs.core._nth(inst_45137,inst_45139);\nvar inst_45145 \x3d cljs.core.async.muxch_STAR_(inst_45144);\nvar inst_45146 \x3d cljs.core.async.close_BANG_(inst_45145);\nvar inst_45147 \x3d (inst_45139 + (1));\nvar tmp45271 \x3d inst_45138;\nvar tmp45272 \x3d inst_45137;\nvar tmp45273 \x3d inst_45136;\nvar inst_45136__$1 \x3d tmp45273;\nvar inst_45137__$1 \x3d tmp45272;\nvar inst_45138__$1 \x3d tmp45271;\nvar inst_45139__$1 \x3d inst_45147;\nvar state_45215__$1 \x3d (function (){var statearr_45281 \x3d state_45215;\n(statearr_45281[(12)] \x3d inst_45139__$1);\n\n(statearr_45281[(17)] \x3d inst_45146);\n\n(statearr_45281[(13)] \x3d inst_45138__$1);\n\n(statearr_45281[(15)] \x3d inst_45137__$1);\n\n(statearr_45281[(16)] \x3d inst_45136__$1);\n\nreturn statearr_45281;\n})();\nvar statearr_45282_47991 \x3d state_45215__$1;\n(statearr_45282_47991[(2)] \x3d null);\n\n(statearr_45282_47991[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (18))){\nvar inst_45175 \x3d (state_45215[(2)]);\nvar state_45215__$1 \x3d state_45215;\nvar statearr_45283_47996 \x3d state_45215__$1;\n(statearr_45283_47996[(2)] \x3d inst_45175);\n\n(statearr_45283_47996[(1)] \x3d (15));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45216 \x3d\x3d\x3d (8))){\nvar inst_45139 \x3d (state_45215[(12)]);\nvar inst_45138 \x3d (state_45215[(13)]);\nvar inst_45141 \x3d (inst_45139 \x3c inst_45138);\nvar inst_45142 \x3d inst_45141;\nvar state_45215__$1 \x3d state_45215;\nif(cljs.core.truth_(inst_45142)){\nvar statearr_45284_47997 \x3d state_45215__$1;\n(statearr_45284_47997[(1)] \x3d (10));\n\n} else {\nvar statearr_45285_47998 \x3d state_45215__$1;\n(statearr_45285_47998[(1)] \x3d (11));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_45286 \x3d [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_45286[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_45286[(1)] \x3d (1));\n\nreturn statearr_45286;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_45215){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_45215);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e45287){var ex__42707__auto__ \x3d e45287;\nvar statearr_45288_48003 \x3d state_45215;\n(statearr_45288_48003[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_45215[(4)]))){\nvar statearr_45290_48004 \x3d state_45215;\n(statearr_45290_48004[(1)] \x3d cljs.core.first((state_45215[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48005 \x3d state_45215;\nstate_45215 \x3d G__48005;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_45215){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_45215);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_45292 \x3d f__42954__auto__();\n(statearr_45292[(6)] \x3d c__42953__auto___47889);\n\nreturn statearr_45292;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn p;\n}));\n\n(cljs.core.async.pub.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Subscribes a channel to a topic of a pub.\n * \n *   By default the channel will be closed when the source closes,\n *   but can be determined by the close? parameter.\n */\ncljs.core.async.sub \x3d (function cljs$core$async$sub(var_args){\nvar G__45294 \x3d arguments.length;\nswitch (G__45294) {\ncase 3:\nreturn cljs.core.async.sub.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.core.async.sub.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.sub.cljs$core$IFn$_invoke$arity$3 \x3d (function (p,topic,ch){\nreturn cljs.core.async.sub.cljs$core$IFn$_invoke$arity$4(p,topic,ch,true);\n}));\n\n(cljs.core.async.sub.cljs$core$IFn$_invoke$arity$4 \x3d (function (p,topic,ch,close_QMARK_){\nreturn cljs.core.async.sub_STAR_(p,topic,ch,close_QMARK_);\n}));\n\n(cljs.core.async.sub.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Unsubscribes a channel from a topic of a pub\n */\ncljs.core.async.unsub \x3d (function cljs$core$async$unsub(p,topic,ch){\nreturn cljs.core.async.unsub_STAR_(p,topic,ch);\n});\n/**\n * Unsubscribes all channels from a pub, or a topic of a pub\n */\ncljs.core.async.unsub_all \x3d (function cljs$core$async$unsub_all(var_args){\nvar G__45296 \x3d arguments.length;\nswitch (G__45296) {\ncase 1:\nreturn cljs.core.async.unsub_all.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.unsub_all.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.unsub_all.cljs$core$IFn$_invoke$arity$1 \x3d (function (p){\nreturn cljs.core.async.unsub_all_STAR_(p);\n}));\n\n(cljs.core.async.unsub_all.cljs$core$IFn$_invoke$arity$2 \x3d (function (p,topic){\nreturn cljs.core.async.unsub_all_STAR_(p,topic);\n}));\n\n(cljs.core.async.unsub_all.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Takes a function and a collection of source channels, and returns a\n *   channel which contains the values produced by applying f to the set\n *   of first items taken from each source channel, followed by applying\n *   f to the set of second items from each channel, until any one of the\n *   channels is closed, at which point the output channel will be\n *   closed. The returned channel will be unbuffered by default, or a\n *   buf-or-n can be supplied\n */\ncljs.core.async.map \x3d (function cljs$core$async$map(var_args){\nvar G__45301 \x3d arguments.length;\nswitch (G__45301) {\ncase 2:\nreturn cljs.core.async.map.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.map.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.map.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,chs){\nreturn cljs.core.async.map.cljs$core$IFn$_invoke$arity$3(f,chs,null);\n}));\n\n(cljs.core.async.map.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,chs,buf_or_n){\nvar chs__$1 \x3d cljs.core.vec(chs);\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar cnt \x3d cljs.core.count(chs__$1);\nvar rets \x3d cljs.core.object_array.cljs$core$IFn$_invoke$arity$1(cnt);\nvar dchan \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\nvar dctr \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(null);\nvar done \x3d cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((function (i){\nreturn (function (ret){\n(rets[i] \x3d ret);\n\nif((cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(dctr,cljs.core.dec) \x3d\x3d\x3d (0))){\nreturn cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(dchan,rets.slice((0)));\n} else {\nreturn null;\n}\n});\n}),cljs.core.range.cljs$core$IFn$_invoke$arity$1(cnt));\nvar c__42953__auto___48016 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_45348){\nvar state_val_45349 \x3d (state_45348[(1)]);\nif((state_val_45349 \x3d\x3d\x3d (7))){\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45350_48021 \x3d state_45348__$1;\n(statearr_45350_48021[(2)] \x3d null);\n\n(statearr_45350_48021[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (1))){\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45351_48022 \x3d state_45348__$1;\n(statearr_45351_48022[(2)] \x3d null);\n\n(statearr_45351_48022[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (4))){\nvar inst_45306 \x3d (state_45348[(7)]);\nvar inst_45305 \x3d (state_45348[(8)]);\nvar inst_45308 \x3d (inst_45306 \x3c inst_45305);\nvar state_45348__$1 \x3d state_45348;\nif(cljs.core.truth_(inst_45308)){\nvar statearr_45353_48025 \x3d state_45348__$1;\n(statearr_45353_48025[(1)] \x3d (6));\n\n} else {\nvar statearr_45354_48026 \x3d state_45348__$1;\n(statearr_45354_48026[(1)] \x3d (7));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (15))){\nvar inst_45331 \x3d (state_45348[(9)]);\nvar inst_45339 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,inst_45331);\nvar state_45348__$1 \x3d state_45348;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45348__$1,(17),out,inst_45339);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (13))){\nvar inst_45331 \x3d (state_45348[(9)]);\nvar inst_45331__$1 \x3d (state_45348[(2)]);\nvar inst_45332 \x3d cljs.core.some(cljs.core.nil_QMARK_,inst_45331__$1);\nvar state_45348__$1 \x3d (function (){var statearr_45361 \x3d state_45348;\n(statearr_45361[(9)] \x3d inst_45331__$1);\n\nreturn statearr_45361;\n})();\nif(cljs.core.truth_(inst_45332)){\nvar statearr_45362_48028 \x3d state_45348__$1;\n(statearr_45362_48028[(1)] \x3d (14));\n\n} else {\nvar statearr_45363_48029 \x3d state_45348__$1;\n(statearr_45363_48029[(1)] \x3d (15));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (6))){\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45366_48030 \x3d state_45348__$1;\n(statearr_45366_48030[(2)] \x3d null);\n\n(statearr_45366_48030[(1)] \x3d (9));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (17))){\nvar inst_45341 \x3d (state_45348[(2)]);\nvar state_45348__$1 \x3d (function (){var statearr_45369 \x3d state_45348;\n(statearr_45369[(10)] \x3d inst_45341);\n\nreturn statearr_45369;\n})();\nvar statearr_45370_48031 \x3d state_45348__$1;\n(statearr_45370_48031[(2)] \x3d null);\n\n(statearr_45370_48031[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (3))){\nvar inst_45346 \x3d (state_45348[(2)]);\nvar state_45348__$1 \x3d state_45348;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_45348__$1,inst_45346);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (12))){\nvar _ \x3d (function (){var statearr_45371 \x3d state_45348;\n(statearr_45371[(4)] \x3d cljs.core.rest((state_45348[(4)])));\n\nreturn statearr_45371;\n})();\nvar state_45348__$1 \x3d state_45348;\nvar ex45368 \x3d (state_45348__$1[(2)]);\nvar statearr_45374_48035 \x3d state_45348__$1;\n(statearr_45374_48035[(5)] \x3d ex45368);\n\n\nif((ex45368 instanceof Object)){\nvar statearr_45375_48036 \x3d state_45348__$1;\n(statearr_45375_48036[(1)] \x3d (11));\n\n(statearr_45375_48036[(5)] \x3d null);\n\n} else {\nthrow ex45368;\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (2))){\nvar inst_45303 \x3d cljs.core.reset_BANG_(dctr,cnt);\nvar inst_45305 \x3d cnt;\nvar inst_45306 \x3d (0);\nvar state_45348__$1 \x3d (function (){var statearr_45376 \x3d state_45348;\n(statearr_45376[(7)] \x3d inst_45306);\n\n(statearr_45376[(11)] \x3d inst_45303);\n\n(statearr_45376[(8)] \x3d inst_45305);\n\nreturn statearr_45376;\n})();\nvar statearr_45377_48040 \x3d state_45348__$1;\n(statearr_45377_48040[(2)] \x3d null);\n\n(statearr_45377_48040[(1)] \x3d (4));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (11))){\nvar inst_45310 \x3d (state_45348[(2)]);\nvar inst_45311 \x3d cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(dctr,cljs.core.dec);\nvar state_45348__$1 \x3d (function (){var statearr_45386 \x3d state_45348;\n(statearr_45386[(12)] \x3d inst_45310);\n\nreturn statearr_45386;\n})();\nvar statearr_45399_48047 \x3d state_45348__$1;\n(statearr_45399_48047[(2)] \x3d inst_45311);\n\n(statearr_45399_48047[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (9))){\nvar inst_45306 \x3d (state_45348[(7)]);\nvar _ \x3d (function (){var statearr_45403 \x3d state_45348;\n(statearr_45403[(4)] \x3d cljs.core.cons((12),(state_45348[(4)])));\n\nreturn statearr_45403;\n})();\nvar inst_45317 \x3d (chs__$1.cljs$core$IFn$_invoke$arity$1 ? chs__$1.cljs$core$IFn$_invoke$arity$1(inst_45306) : chs__$1.call(null,inst_45306));\nvar inst_45318 \x3d (done.cljs$core$IFn$_invoke$arity$1 ? done.cljs$core$IFn$_invoke$arity$1(inst_45306) : done.call(null,inst_45306));\nvar inst_45319 \x3d cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2(inst_45317,inst_45318);\nvar ___$1 \x3d (function (){var statearr_45407 \x3d state_45348;\n(statearr_45407[(4)] \x3d cljs.core.rest((state_45348[(4)])));\n\nreturn statearr_45407;\n})();\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45408_48049 \x3d state_45348__$1;\n(statearr_45408_48049[(2)] \x3d inst_45319);\n\n(statearr_45408_48049[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (5))){\nvar inst_45329 \x3d (state_45348[(2)]);\nvar state_45348__$1 \x3d (function (){var statearr_45409 \x3d state_45348;\n(statearr_45409[(13)] \x3d inst_45329);\n\nreturn statearr_45409;\n})();\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_45348__$1,(13),dchan);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (14))){\nvar inst_45334 \x3d cljs.core.async.close_BANG_(out);\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45410_48050 \x3d state_45348__$1;\n(statearr_45410_48050[(2)] \x3d inst_45334);\n\n(statearr_45410_48050[(1)] \x3d (16));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (16))){\nvar inst_45344 \x3d (state_45348[(2)]);\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45425_48052 \x3d state_45348__$1;\n(statearr_45425_48052[(2)] \x3d inst_45344);\n\n(statearr_45425_48052[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (10))){\nvar inst_45306 \x3d (state_45348[(7)]);\nvar inst_45322 \x3d (state_45348[(2)]);\nvar inst_45323 \x3d (inst_45306 + (1));\nvar inst_45306__$1 \x3d inst_45323;\nvar state_45348__$1 \x3d (function (){var statearr_45433 \x3d state_45348;\n(statearr_45433[(7)] \x3d inst_45306__$1);\n\n(statearr_45433[(14)] \x3d inst_45322);\n\nreturn statearr_45433;\n})();\nvar statearr_45434_48056 \x3d state_45348__$1;\n(statearr_45434_48056[(2)] \x3d null);\n\n(statearr_45434_48056[(1)] \x3d (4));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45349 \x3d\x3d\x3d (8))){\nvar inst_45327 \x3d (state_45348[(2)]);\nvar state_45348__$1 \x3d state_45348;\nvar statearr_45435_48057 \x3d state_45348__$1;\n(statearr_45435_48057[(2)] \x3d inst_45327);\n\n(statearr_45435_48057[(1)] \x3d (5));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_45438 \x3d [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_45438[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_45438[(1)] \x3d (1));\n\nreturn statearr_45438;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_45348){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_45348);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e45439){var ex__42707__auto__ \x3d e45439;\nvar statearr_45440_48060 \x3d state_45348;\n(statearr_45440_48060[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_45348[(4)]))){\nvar statearr_45441_48061 \x3d state_45348;\n(statearr_45441_48061[(1)] \x3d cljs.core.first((state_45348[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48062 \x3d state_45348;\nstate_45348 \x3d G__48062;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_45348){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_45348);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_45443 \x3d f__42954__auto__();\n(statearr_45443[(6)] \x3d c__42953__auto___48016);\n\nreturn statearr_45443;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.map.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Takes a collection of source channels and returns a channel which\n *   contains all values taken from them. The returned channel will be\n *   unbuffered by default, or a buf-or-n can be supplied. The channel\n *   will close after all the source channels have closed.\n */\ncljs.core.async.merge \x3d (function cljs$core$async$merge(var_args){\nvar G__45452 \x3d arguments.length;\nswitch (G__45452) {\ncase 1:\nreturn cljs.core.async.merge.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.merge.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.merge.cljs$core$IFn$_invoke$arity$1 \x3d (function (chs){\nreturn cljs.core.async.merge.cljs$core$IFn$_invoke$arity$2(chs,null);\n}));\n\n(cljs.core.async.merge.cljs$core$IFn$_invoke$arity$2 \x3d (function (chs,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar c__42953__auto___48066 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_45494){\nvar state_val_45498 \x3d (state_45494[(1)]);\nif((state_val_45498 \x3d\x3d\x3d (7))){\nvar inst_45469 \x3d (state_45494[(7)]);\nvar inst_45468 \x3d (state_45494[(8)]);\nvar inst_45468__$1 \x3d (state_45494[(2)]);\nvar inst_45469__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_45468__$1,(0),null);\nvar inst_45470 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(inst_45468__$1,(1),null);\nvar inst_45472 \x3d (inst_45469__$1 \x3d\x3d null);\nvar state_45494__$1 \x3d (function (){var statearr_45509 \x3d state_45494;\n(statearr_45509[(7)] \x3d inst_45469__$1);\n\n(statearr_45509[(8)] \x3d inst_45468__$1);\n\n(statearr_45509[(9)] \x3d inst_45470);\n\nreturn statearr_45509;\n})();\nif(cljs.core.truth_(inst_45472)){\nvar statearr_45510_48070 \x3d state_45494__$1;\n(statearr_45510_48070[(1)] \x3d (8));\n\n} else {\nvar statearr_45511_48071 \x3d state_45494__$1;\n(statearr_45511_48071[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (1))){\nvar inst_45458 \x3d cljs.core.vec(chs);\nvar inst_45459 \x3d inst_45458;\nvar state_45494__$1 \x3d (function (){var statearr_45514 \x3d state_45494;\n(statearr_45514[(10)] \x3d inst_45459);\n\nreturn statearr_45514;\n})();\nvar statearr_45515_48077 \x3d state_45494__$1;\n(statearr_45515_48077[(2)] \x3d null);\n\n(statearr_45515_48077[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (4))){\nvar inst_45459 \x3d (state_45494[(10)]);\nvar state_45494__$1 \x3d state_45494;\nreturn cljs.core.async.ioc_alts_BANG_(state_45494__$1,(7),inst_45459);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (6))){\nvar inst_45487 \x3d (state_45494[(2)]);\nvar state_45494__$1 \x3d state_45494;\nvar statearr_45522_48078 \x3d state_45494__$1;\n(statearr_45522_48078[(2)] \x3d inst_45487);\n\n(statearr_45522_48078[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (3))){\nvar inst_45491 \x3d (state_45494[(2)]);\nvar state_45494__$1 \x3d state_45494;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_45494__$1,inst_45491);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (2))){\nvar inst_45459 \x3d (state_45494[(10)]);\nvar inst_45461 \x3d cljs.core.count(inst_45459);\nvar inst_45462 \x3d (inst_45461 \x3e (0));\nvar state_45494__$1 \x3d state_45494;\nif(cljs.core.truth_(inst_45462)){\nvar statearr_45529_48097 \x3d state_45494__$1;\n(statearr_45529_48097[(1)] \x3d (4));\n\n} else {\nvar statearr_45530_48098 \x3d state_45494__$1;\n(statearr_45530_48098[(1)] \x3d (5));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (11))){\nvar inst_45459 \x3d (state_45494[(10)]);\nvar inst_45480 \x3d (state_45494[(2)]);\nvar tmp45524 \x3d inst_45459;\nvar inst_45459__$1 \x3d tmp45524;\nvar state_45494__$1 \x3d (function (){var statearr_45531 \x3d state_45494;\n(statearr_45531[(10)] \x3d inst_45459__$1);\n\n(statearr_45531[(11)] \x3d inst_45480);\n\nreturn statearr_45531;\n})();\nvar statearr_45532_48120 \x3d state_45494__$1;\n(statearr_45532_48120[(2)] \x3d null);\n\n(statearr_45532_48120[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (9))){\nvar inst_45469 \x3d (state_45494[(7)]);\nvar state_45494__$1 \x3d state_45494;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45494__$1,(11),out,inst_45469);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (5))){\nvar inst_45485 \x3d cljs.core.async.close_BANG_(out);\nvar state_45494__$1 \x3d state_45494;\nvar statearr_45535_48125 \x3d state_45494__$1;\n(statearr_45535_48125[(2)] \x3d inst_45485);\n\n(statearr_45535_48125[(1)] \x3d (6));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (10))){\nvar inst_45483 \x3d (state_45494[(2)]);\nvar state_45494__$1 \x3d state_45494;\nvar statearr_45536_48126 \x3d state_45494__$1;\n(statearr_45536_48126[(2)] \x3d inst_45483);\n\n(statearr_45536_48126[(1)] \x3d (6));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45498 \x3d\x3d\x3d (8))){\nvar inst_45469 \x3d (state_45494[(7)]);\nvar inst_45468 \x3d (state_45494[(8)]);\nvar inst_45470 \x3d (state_45494[(9)]);\nvar inst_45459 \x3d (state_45494[(10)]);\nvar inst_45474 \x3d (function (){var cs \x3d inst_45459;\nvar vec__45464 \x3d inst_45468;\nvar v \x3d inst_45469;\nvar c \x3d inst_45470;\nreturn (function (p1__45448_SHARP_){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(c,p1__45448_SHARP_);\n});\n})();\nvar inst_45475 \x3d cljs.core.filterv(inst_45474,inst_45459);\nvar inst_45459__$1 \x3d inst_45475;\nvar state_45494__$1 \x3d (function (){var statearr_45537 \x3d state_45494;\n(statearr_45537[(10)] \x3d inst_45459__$1);\n\nreturn statearr_45537;\n})();\nvar statearr_45538_48130 \x3d state_45494__$1;\n(statearr_45538_48130[(2)] \x3d null);\n\n(statearr_45538_48130[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_45541 \x3d [null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_45541[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_45541[(1)] \x3d (1));\n\nreturn statearr_45541;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_45494){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_45494);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e45549){var ex__42707__auto__ \x3d e45549;\nvar statearr_45550_48135 \x3d state_45494;\n(statearr_45550_48135[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_45494[(4)]))){\nvar statearr_45551_48137 \x3d state_45494;\n(statearr_45551_48137[(1)] \x3d cljs.core.first((state_45494[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48141 \x3d state_45494;\nstate_45494 \x3d G__48141;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_45494){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_45494);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_45555 \x3d f__42954__auto__();\n(statearr_45555[(6)] \x3d c__42953__auto___48066);\n\nreturn statearr_45555;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.merge.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Returns a channel containing the single (collection) result of the\n *   items taken from the channel conjoined to the supplied\n *   collection. ch must close before into produces a result.\n */\ncljs.core.async.into \x3d (function cljs$core$async$into(coll,ch){\nreturn cljs.core.async.reduce(cljs.core.conj,coll,ch);\n});\n/**\n * Returns a channel that will return, at most, n items from ch. After n items\n * have been returned, or ch has been closed, the return chanel will close.\n * \n *   The output channel is unbuffered by default, unless buf-or-n is given.\n */\ncljs.core.async.take \x3d (function cljs$core$async$take(var_args){\nvar G__45559 \x3d arguments.length;\nswitch (G__45559) {\ncase 2:\nreturn cljs.core.async.take.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.take.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.take.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,ch){\nreturn cljs.core.async.take.cljs$core$IFn$_invoke$arity$3(n,ch,null);\n}));\n\n(cljs.core.async.take.cljs$core$IFn$_invoke$arity$3 \x3d (function (n,ch,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar c__42953__auto___48153 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_45587){\nvar state_val_45588 \x3d (state_45587[(1)]);\nif((state_val_45588 \x3d\x3d\x3d (7))){\nvar inst_45569 \x3d (state_45587[(7)]);\nvar inst_45569__$1 \x3d (state_45587[(2)]);\nvar inst_45570 \x3d (inst_45569__$1 \x3d\x3d null);\nvar inst_45571 \x3d cljs.core.not(inst_45570);\nvar state_45587__$1 \x3d (function (){var statearr_45589 \x3d state_45587;\n(statearr_45589[(7)] \x3d inst_45569__$1);\n\nreturn statearr_45589;\n})();\nif(inst_45571){\nvar statearr_45590_48155 \x3d state_45587__$1;\n(statearr_45590_48155[(1)] \x3d (8));\n\n} else {\nvar statearr_45591_48156 \x3d state_45587__$1;\n(statearr_45591_48156[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (1))){\nvar inst_45564 \x3d (0);\nvar state_45587__$1 \x3d (function (){var statearr_45592 \x3d state_45587;\n(statearr_45592[(8)] \x3d inst_45564);\n\nreturn statearr_45592;\n})();\nvar statearr_45593_48157 \x3d state_45587__$1;\n(statearr_45593_48157[(2)] \x3d null);\n\n(statearr_45593_48157[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (4))){\nvar state_45587__$1 \x3d state_45587;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_45587__$1,(7),ch);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (6))){\nvar inst_45582 \x3d (state_45587[(2)]);\nvar state_45587__$1 \x3d state_45587;\nvar statearr_45594_48159 \x3d state_45587__$1;\n(statearr_45594_48159[(2)] \x3d inst_45582);\n\n(statearr_45594_48159[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (3))){\nvar inst_45584 \x3d (state_45587[(2)]);\nvar inst_45585 \x3d cljs.core.async.close_BANG_(out);\nvar state_45587__$1 \x3d (function (){var statearr_45596 \x3d state_45587;\n(statearr_45596[(9)] \x3d inst_45584);\n\nreturn statearr_45596;\n})();\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_45587__$1,inst_45585);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (2))){\nvar inst_45564 \x3d (state_45587[(8)]);\nvar inst_45566 \x3d (inst_45564 \x3c n);\nvar state_45587__$1 \x3d state_45587;\nif(cljs.core.truth_(inst_45566)){\nvar statearr_45600_48164 \x3d state_45587__$1;\n(statearr_45600_48164[(1)] \x3d (4));\n\n} else {\nvar statearr_45602_48165 \x3d state_45587__$1;\n(statearr_45602_48165[(1)] \x3d (5));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (11))){\nvar inst_45564 \x3d (state_45587[(8)]);\nvar inst_45574 \x3d (state_45587[(2)]);\nvar inst_45575 \x3d (inst_45564 + (1));\nvar inst_45564__$1 \x3d inst_45575;\nvar state_45587__$1 \x3d (function (){var statearr_45605 \x3d state_45587;\n(statearr_45605[(8)] \x3d inst_45564__$1);\n\n(statearr_45605[(10)] \x3d inst_45574);\n\nreturn statearr_45605;\n})();\nvar statearr_45606_48168 \x3d state_45587__$1;\n(statearr_45606_48168[(2)] \x3d null);\n\n(statearr_45606_48168[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (9))){\nvar state_45587__$1 \x3d state_45587;\nvar statearr_45608_48169 \x3d state_45587__$1;\n(statearr_45608_48169[(2)] \x3d null);\n\n(statearr_45608_48169[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (5))){\nvar state_45587__$1 \x3d state_45587;\nvar statearr_45610_48173 \x3d state_45587__$1;\n(statearr_45610_48173[(2)] \x3d null);\n\n(statearr_45610_48173[(1)] \x3d (6));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (10))){\nvar inst_45579 \x3d (state_45587[(2)]);\nvar state_45587__$1 \x3d state_45587;\nvar statearr_45611_48174 \x3d state_45587__$1;\n(statearr_45611_48174[(2)] \x3d inst_45579);\n\n(statearr_45611_48174[(1)] \x3d (6));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45588 \x3d\x3d\x3d (8))){\nvar inst_45569 \x3d (state_45587[(7)]);\nvar state_45587__$1 \x3d state_45587;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45587__$1,(11),out,inst_45569);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_45619 \x3d [null,null,null,null,null,null,null,null,null,null,null];\n(statearr_45619[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_45619[(1)] \x3d (1));\n\nreturn statearr_45619;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_45587){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_45587);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e45620){var ex__42707__auto__ \x3d e45620;\nvar statearr_45621_48183 \x3d state_45587;\n(statearr_45621_48183[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_45587[(4)]))){\nvar statearr_45622_48184 \x3d state_45587;\n(statearr_45622_48184[(1)] \x3d cljs.core.first((state_45587[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48190 \x3d state_45587;\nstate_45587 \x3d G__48190;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_45587){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_45587);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_45631 \x3d f__42954__auto__();\n(statearr_45631[(6)] \x3d c__42953__auto___48153);\n\nreturn statearr_45631;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.take.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.map_LT_ \x3d (function cljs$core$async$map_LT_(f,ch){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async45665 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Channel}\n * @implements {cljs.core.async.impl.protocols.WritePort}\n * @implements {cljs.core.async.impl.protocols.ReadPort}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async45665 \x3d (function (f,ch,meta45666){\nthis.f \x3d f;\nthis.ch \x3d ch;\nthis.meta45666 \x3d meta45666;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45667,meta45666__$1){\nvar self__ \x3d this;\nvar _45667__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async45665(self__.f,self__.ch,meta45666__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45667){\nvar self__ \x3d this;\nvar _45667__$1 \x3d this;\nreturn self__.meta45666;\n}));\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$Channel$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.close_BANG_(self__.ch);\n}));\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$Channel$closed_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.closed_QMARK_(self__.ch);\n}));\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$ReadPort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2 \x3d (function (_,fn1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar ret \x3d cljs.core.async.impl.protocols.take_BANG_(self__.ch,(function (){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async45683 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Handler}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async45683 \x3d (function (f,ch,meta45666,_,fn1,meta45684){\nthis.f \x3d f;\nthis.ch \x3d ch;\nthis.meta45666 \x3d meta45666;\nthis._ \x3d _;\nthis.fn1 \x3d fn1;\nthis.meta45684 \x3d meta45684;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async45683.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45685,meta45684__$1){\nvar self__ \x3d this;\nvar _45685__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async45683(self__.f,self__.ch,self__.meta45666,self__._,self__.fn1,meta45684__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async45683.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45685){\nvar self__ \x3d this;\nvar _45685__$1 \x3d this;\nreturn self__.meta45684;\n}));\n\n(cljs.core.async.t_cljs$core$async45683.prototype.cljs$core$async$impl$protocols$Handler$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45683.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 \x3d (function (___$1){\nvar self__ \x3d this;\nvar ___$2 \x3d this;\nreturn cljs.core.async.impl.protocols.active_QMARK_(self__.fn1);\n}));\n\n(cljs.core.async.t_cljs$core$async45683.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 \x3d (function (___$1){\nvar self__ \x3d this;\nvar ___$2 \x3d this;\nreturn true;\n}));\n\n(cljs.core.async.t_cljs$core$async45683.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 \x3d (function (___$1){\nvar self__ \x3d this;\nvar ___$2 \x3d this;\nvar f1 \x3d cljs.core.async.impl.protocols.commit(self__.fn1);\nreturn (function (p1__45659_SHARP_){\nvar G__45691 \x3d (((p1__45659_SHARP_ \x3d\x3d null))?null:(self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(p1__45659_SHARP_) : self__.f.call(null,p1__45659_SHARP_)));\nreturn (f1.cljs$core$IFn$_invoke$arity$1 ? f1.cljs$core$IFn$_invoke$arity$1(G__45691) : f1.call(null,G__45691));\n});\n}));\n\n(cljs.core.async.t_cljs$core$async45683.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22ch\x22,\x22ch\x22,1085813622,null),new cljs.core.Symbol(null,\x22meta45666\x22,\x22meta45666\x22,2042022781,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22_\x22,\x22_\x22,-1201019570,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(\x22cljs.core.async\x22,\x22t_cljs$core$async45665\x22,\x22cljs.core.async/t_cljs$core$async45665\x22,-1313634392,null)], null)),new cljs.core.Symbol(null,\x22fn1\x22,\x22fn1\x22,895834444,null),new cljs.core.Symbol(null,\x22meta45684\x22,\x22meta45684\x22,86930591,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async45683.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async45683.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async45683\x22);\n\n(cljs.core.async.t_cljs$core$async45683.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async45683\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async45683.\n */\ncljs.core.async.__GT_t_cljs$core$async45683 \x3d (function cljs$core$async$map_LT__$___GT_t_cljs$core$async45683(f__$1,ch__$1,meta45666__$1,___$2,fn1__$1,meta45684){\nreturn (new cljs.core.async.t_cljs$core$async45683(f__$1,ch__$1,meta45666__$1,___$2,fn1__$1,meta45684));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async45683(self__.f,self__.ch,self__.meta45666,___$1,fn1,cljs.core.PersistentArrayMap.EMPTY));\n})()\n);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d ret;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (!((cljs.core.deref(ret) \x3d\x3d null)));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.core.async.impl.channels.box((function (){var G__45709 \x3d cljs.core.deref(ret);\nreturn (self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(G__45709) : self__.f.call(null,G__45709));\n})());\n} else {\nreturn ret;\n}\n}));\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$WritePort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45665.prototype.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3 \x3d (function (_,val,fn1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.put_BANG_(self__.ch,val,fn1);\n}));\n\n(cljs.core.async.t_cljs$core$async45665.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22ch\x22,\x22ch\x22,1085813622,null),new cljs.core.Symbol(null,\x22meta45666\x22,\x22meta45666\x22,2042022781,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async45665.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async45665.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async45665\x22);\n\n(cljs.core.async.t_cljs$core$async45665.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async45665\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async45665.\n */\ncljs.core.async.__GT_t_cljs$core$async45665 \x3d (function cljs$core$async$map_LT__$___GT_t_cljs$core$async45665(f__$1,ch__$1,meta45666){\nreturn (new cljs.core.async.t_cljs$core$async45665(f__$1,ch__$1,meta45666));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async45665(f,ch,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.map_GT_ \x3d (function cljs$core$async$map_GT_(f,ch){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async45732 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Channel}\n * @implements {cljs.core.async.impl.protocols.WritePort}\n * @implements {cljs.core.async.impl.protocols.ReadPort}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async45732 \x3d (function (f,ch,meta45733){\nthis.f \x3d f;\nthis.ch \x3d ch;\nthis.meta45733 \x3d meta45733;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45734,meta45733__$1){\nvar self__ \x3d this;\nvar _45734__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async45732(self__.f,self__.ch,meta45733__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45734){\nvar self__ \x3d this;\nvar _45734__$1 \x3d this;\nreturn self__.meta45733;\n}));\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$async$impl$protocols$Channel$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.close_BANG_(self__.ch);\n}));\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$async$impl$protocols$ReadPort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2 \x3d (function (_,fn1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.take_BANG_(self__.ch,fn1);\n}));\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$async$impl$protocols$WritePort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45732.prototype.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3 \x3d (function (_,val,fn1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.put_BANG_(self__.ch,(self__.f.cljs$core$IFn$_invoke$arity$1 ? self__.f.cljs$core$IFn$_invoke$arity$1(val) : self__.f.call(null,val)),fn1);\n}));\n\n(cljs.core.async.t_cljs$core$async45732.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22ch\x22,\x22ch\x22,1085813622,null),new cljs.core.Symbol(null,\x22meta45733\x22,\x22meta45733\x22,934031106,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async45732.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async45732.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async45732\x22);\n\n(cljs.core.async.t_cljs$core$async45732.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async45732\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async45732.\n */\ncljs.core.async.__GT_t_cljs$core$async45732 \x3d (function cljs$core$async$map_GT__$___GT_t_cljs$core$async45732(f__$1,ch__$1,meta45733){\nreturn (new cljs.core.async.t_cljs$core$async45732(f__$1,ch__$1,meta45733));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async45732(f,ch,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.filter_GT_ \x3d (function cljs$core$async$filter_GT_(p,ch){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.async.t_cljs$core$async45767 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.async.impl.protocols.Channel}\n * @implements {cljs.core.async.impl.protocols.WritePort}\n * @implements {cljs.core.async.impl.protocols.ReadPort}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.core.async.t_cljs$core$async45767 \x3d (function (p,ch,meta45768){\nthis.p \x3d p;\nthis.ch \x3d ch;\nthis.meta45768 \x3d meta45768;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45769,meta45768__$1){\nvar self__ \x3d this;\nvar _45769__$1 \x3d this;\nreturn (new cljs.core.async.t_cljs$core$async45767(self__.p,self__.ch,meta45768__$1));\n}));\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45769){\nvar self__ \x3d this;\nvar _45769__$1 \x3d this;\nreturn self__.meta45768;\n}));\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$Channel$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$Channel$close_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.close_BANG_(self__.ch);\n}));\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$Channel$closed_QMARK_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.closed_QMARK_(self__.ch);\n}));\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$ReadPort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2 \x3d (function (_,fn1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.async.impl.protocols.take_BANG_(self__.ch,fn1);\n}));\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$WritePort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.async.t_cljs$core$async45767.prototype.cljs$core$async$impl$protocols$WritePort$put_BANG_$arity$3 \x3d (function (_,val,fn1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_((self__.p.cljs$core$IFn$_invoke$arity$1 ? self__.p.cljs$core$IFn$_invoke$arity$1(val) : self__.p.call(null,val)))){\nreturn cljs.core.async.impl.protocols.put_BANG_(self__.ch,val,fn1);\n} else {\nreturn cljs.core.async.impl.channels.box(cljs.core.not(cljs.core.async.impl.protocols.closed_QMARK_(self__.ch)));\n}\n}));\n\n(cljs.core.async.t_cljs$core$async45767.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null),new cljs.core.Symbol(null,\x22ch\x22,\x22ch\x22,1085813622,null),new cljs.core.Symbol(null,\x22meta45768\x22,\x22meta45768\x22,22448790,null)], null);\n}));\n\n(cljs.core.async.t_cljs$core$async45767.cljs$lang$type \x3d true);\n\n(cljs.core.async.t_cljs$core$async45767.cljs$lang$ctorStr \x3d \x22cljs.core.async/t_cljs$core$async45767\x22);\n\n(cljs.core.async.t_cljs$core$async45767.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.core.async/t_cljs$core$async45767\x22);\n}));\n\n/**\n * Positional factory function for cljs.core.async/t_cljs$core$async45767.\n */\ncljs.core.async.__GT_t_cljs$core$async45767 \x3d (function cljs$core$async$filter_GT__$___GT_t_cljs$core$async45767(p__$1,ch__$1,meta45768){\nreturn (new cljs.core.async.t_cljs$core$async45767(p__$1,ch__$1,meta45768));\n});\n\n}\n\nreturn (new cljs.core.async.t_cljs$core$async45767(p,ch,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.remove_GT_ \x3d (function cljs$core$async$remove_GT_(p,ch){\nreturn cljs.core.async.filter_GT_(cljs.core.complement(p),ch);\n});\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.filter_LT_ \x3d (function cljs$core$async$filter_LT_(var_args){\nvar G__45782 \x3d arguments.length;\nswitch (G__45782) {\ncase 2:\nreturn cljs.core.async.filter_LT_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.filter_LT_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.filter_LT_.cljs$core$IFn$_invoke$arity$2 \x3d (function (p,ch){\nreturn cljs.core.async.filter_LT_.cljs$core$IFn$_invoke$arity$3(p,ch,null);\n}));\n\n(cljs.core.async.filter_LT_.cljs$core$IFn$_invoke$arity$3 \x3d (function (p,ch,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar c__42953__auto___48281 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_45811){\nvar state_val_45812 \x3d (state_45811[(1)]);\nif((state_val_45812 \x3d\x3d\x3d (7))){\nvar inst_45806 \x3d (state_45811[(2)]);\nvar state_45811__$1 \x3d state_45811;\nvar statearr_45824_48282 \x3d state_45811__$1;\n(statearr_45824_48282[(2)] \x3d inst_45806);\n\n(statearr_45824_48282[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (1))){\nvar state_45811__$1 \x3d state_45811;\nvar statearr_45826_48289 \x3d state_45811__$1;\n(statearr_45826_48289[(2)] \x3d null);\n\n(statearr_45826_48289[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (4))){\nvar inst_45792 \x3d (state_45811[(7)]);\nvar inst_45792__$1 \x3d (state_45811[(2)]);\nvar inst_45793 \x3d (inst_45792__$1 \x3d\x3d null);\nvar state_45811__$1 \x3d (function (){var statearr_45827 \x3d state_45811;\n(statearr_45827[(7)] \x3d inst_45792__$1);\n\nreturn statearr_45827;\n})();\nif(cljs.core.truth_(inst_45793)){\nvar statearr_45828_48290 \x3d state_45811__$1;\n(statearr_45828_48290[(1)] \x3d (5));\n\n} else {\nvar statearr_45830_48291 \x3d state_45811__$1;\n(statearr_45830_48291[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (6))){\nvar inst_45792 \x3d (state_45811[(7)]);\nvar inst_45797 \x3d (p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1(inst_45792) : p.call(null,inst_45792));\nvar state_45811__$1 \x3d state_45811;\nif(cljs.core.truth_(inst_45797)){\nvar statearr_45831_48295 \x3d state_45811__$1;\n(statearr_45831_48295[(1)] \x3d (8));\n\n} else {\nvar statearr_45833_48296 \x3d state_45811__$1;\n(statearr_45833_48296[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (3))){\nvar inst_45808 \x3d (state_45811[(2)]);\nvar state_45811__$1 \x3d state_45811;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_45811__$1,inst_45808);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (2))){\nvar state_45811__$1 \x3d state_45811;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_45811__$1,(4),ch);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (11))){\nvar inst_45800 \x3d (state_45811[(2)]);\nvar state_45811__$1 \x3d state_45811;\nvar statearr_45838_48298 \x3d state_45811__$1;\n(statearr_45838_48298[(2)] \x3d inst_45800);\n\n(statearr_45838_48298[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (9))){\nvar state_45811__$1 \x3d state_45811;\nvar statearr_45839_48299 \x3d state_45811__$1;\n(statearr_45839_48299[(2)] \x3d null);\n\n(statearr_45839_48299[(1)] \x3d (10));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (5))){\nvar inst_45795 \x3d cljs.core.async.close_BANG_(out);\nvar state_45811__$1 \x3d state_45811;\nvar statearr_45844_48300 \x3d state_45811__$1;\n(statearr_45844_48300[(2)] \x3d inst_45795);\n\n(statearr_45844_48300[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (10))){\nvar inst_45803 \x3d (state_45811[(2)]);\nvar state_45811__$1 \x3d (function (){var statearr_45847 \x3d state_45811;\n(statearr_45847[(8)] \x3d inst_45803);\n\nreturn statearr_45847;\n})();\nvar statearr_45848_48301 \x3d state_45811__$1;\n(statearr_45848_48301[(2)] \x3d null);\n\n(statearr_45848_48301[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45812 \x3d\x3d\x3d (8))){\nvar inst_45792 \x3d (state_45811[(7)]);\nvar state_45811__$1 \x3d state_45811;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45811__$1,(11),out,inst_45792);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_45849 \x3d [null,null,null,null,null,null,null,null,null];\n(statearr_45849[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_45849[(1)] \x3d (1));\n\nreturn statearr_45849;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_45811){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_45811);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e45850){var ex__42707__auto__ \x3d e45850;\nvar statearr_45851_48308 \x3d state_45811;\n(statearr_45851_48308[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_45811[(4)]))){\nvar statearr_45852_48309 \x3d state_45811;\n(statearr_45852_48309[(1)] \x3d cljs.core.first((state_45811[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48310 \x3d state_45811;\nstate_45811 \x3d G__48310;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_45811){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_45811);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_45853 \x3d f__42954__auto__();\n(statearr_45853[(6)] \x3d c__42953__auto___48281);\n\nreturn statearr_45853;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.filter_LT_.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.remove_LT_ \x3d (function cljs$core$async$remove_LT_(var_args){\nvar G__45855 \x3d arguments.length;\nswitch (G__45855) {\ncase 2:\nreturn cljs.core.async.remove_LT_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.remove_LT_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.remove_LT_.cljs$core$IFn$_invoke$arity$2 \x3d (function (p,ch){\nreturn cljs.core.async.remove_LT_.cljs$core$IFn$_invoke$arity$3(p,ch,null);\n}));\n\n(cljs.core.async.remove_LT_.cljs$core$IFn$_invoke$arity$3 \x3d (function (p,ch,buf_or_n){\nreturn cljs.core.async.filter_LT_.cljs$core$IFn$_invoke$arity$3(cljs.core.complement(p),ch,buf_or_n);\n}));\n\n(cljs.core.async.remove_LT_.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.async.mapcat_STAR_ \x3d (function cljs$core$async$mapcat_STAR_(f,in$,out){\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_45929){\nvar state_val_45930 \x3d (state_45929[(1)]);\nif((state_val_45930 \x3d\x3d\x3d (7))){\nvar inst_45925 \x3d (state_45929[(2)]);\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45932_48316 \x3d state_45929__$1;\n(statearr_45932_48316[(2)] \x3d inst_45925);\n\n(statearr_45932_48316[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (20))){\nvar inst_45886 \x3d (state_45929[(7)]);\nvar inst_45897 \x3d (state_45929[(2)]);\nvar inst_45898 \x3d cljs.core.next(inst_45886);\nvar inst_45872 \x3d inst_45898;\nvar inst_45873 \x3d null;\nvar inst_45874 \x3d (0);\nvar inst_45875 \x3d (0);\nvar state_45929__$1 \x3d (function (){var statearr_45935 \x3d state_45929;\n(statearr_45935[(8)] \x3d inst_45874);\n\n(statearr_45935[(9)] \x3d inst_45872);\n\n(statearr_45935[(10)] \x3d inst_45873);\n\n(statearr_45935[(11)] \x3d inst_45897);\n\n(statearr_45935[(12)] \x3d inst_45875);\n\nreturn statearr_45935;\n})();\nvar statearr_45938_48318 \x3d state_45929__$1;\n(statearr_45938_48318[(2)] \x3d null);\n\n(statearr_45938_48318[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (1))){\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45939_48321 \x3d state_45929__$1;\n(statearr_45939_48321[(2)] \x3d null);\n\n(statearr_45939_48321[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (4))){\nvar inst_45861 \x3d (state_45929[(13)]);\nvar inst_45861__$1 \x3d (state_45929[(2)]);\nvar inst_45862 \x3d (inst_45861__$1 \x3d\x3d null);\nvar state_45929__$1 \x3d (function (){var statearr_45942 \x3d state_45929;\n(statearr_45942[(13)] \x3d inst_45861__$1);\n\nreturn statearr_45942;\n})();\nif(cljs.core.truth_(inst_45862)){\nvar statearr_45943_48332 \x3d state_45929__$1;\n(statearr_45943_48332[(1)] \x3d (5));\n\n} else {\nvar statearr_45944_48333 \x3d state_45929__$1;\n(statearr_45944_48333[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (15))){\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45948_48338 \x3d state_45929__$1;\n(statearr_45948_48338[(2)] \x3d null);\n\n(statearr_45948_48338[(1)] \x3d (16));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (21))){\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45949_48344 \x3d state_45929__$1;\n(statearr_45949_48344[(2)] \x3d null);\n\n(statearr_45949_48344[(1)] \x3d (23));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (13))){\nvar inst_45874 \x3d (state_45929[(8)]);\nvar inst_45872 \x3d (state_45929[(9)]);\nvar inst_45873 \x3d (state_45929[(10)]);\nvar inst_45875 \x3d (state_45929[(12)]);\nvar inst_45882 \x3d (state_45929[(2)]);\nvar inst_45883 \x3d (inst_45875 + (1));\nvar tmp45945 \x3d inst_45874;\nvar tmp45946 \x3d inst_45872;\nvar tmp45947 \x3d inst_45873;\nvar inst_45872__$1 \x3d tmp45946;\nvar inst_45873__$1 \x3d tmp45947;\nvar inst_45874__$1 \x3d tmp45945;\nvar inst_45875__$1 \x3d inst_45883;\nvar state_45929__$1 \x3d (function (){var statearr_45950 \x3d state_45929;\n(statearr_45950[(8)] \x3d inst_45874__$1);\n\n(statearr_45950[(9)] \x3d inst_45872__$1);\n\n(statearr_45950[(10)] \x3d inst_45873__$1);\n\n(statearr_45950[(14)] \x3d inst_45882);\n\n(statearr_45950[(12)] \x3d inst_45875__$1);\n\nreturn statearr_45950;\n})();\nvar statearr_45951_48348 \x3d state_45929__$1;\n(statearr_45951_48348[(2)] \x3d null);\n\n(statearr_45951_48348[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (22))){\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45952_48350 \x3d state_45929__$1;\n(statearr_45952_48350[(2)] \x3d null);\n\n(statearr_45952_48350[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (6))){\nvar inst_45861 \x3d (state_45929[(13)]);\nvar inst_45870 \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(inst_45861) : f.call(null,inst_45861));\nvar inst_45871 \x3d cljs.core.seq(inst_45870);\nvar inst_45872 \x3d inst_45871;\nvar inst_45873 \x3d null;\nvar inst_45874 \x3d (0);\nvar inst_45875 \x3d (0);\nvar state_45929__$1 \x3d (function (){var statearr_45953 \x3d state_45929;\n(statearr_45953[(8)] \x3d inst_45874);\n\n(statearr_45953[(9)] \x3d inst_45872);\n\n(statearr_45953[(10)] \x3d inst_45873);\n\n(statearr_45953[(12)] \x3d inst_45875);\n\nreturn statearr_45953;\n})();\nvar statearr_45956_48356 \x3d state_45929__$1;\n(statearr_45956_48356[(2)] \x3d null);\n\n(statearr_45956_48356[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (17))){\nvar inst_45886 \x3d (state_45929[(7)]);\nvar inst_45890 \x3d cljs.core.chunk_first(inst_45886);\nvar inst_45891 \x3d cljs.core.chunk_rest(inst_45886);\nvar inst_45892 \x3d cljs.core.count(inst_45890);\nvar inst_45872 \x3d inst_45891;\nvar inst_45873 \x3d inst_45890;\nvar inst_45874 \x3d inst_45892;\nvar inst_45875 \x3d (0);\nvar state_45929__$1 \x3d (function (){var statearr_45974 \x3d state_45929;\n(statearr_45974[(8)] \x3d inst_45874);\n\n(statearr_45974[(9)] \x3d inst_45872);\n\n(statearr_45974[(10)] \x3d inst_45873);\n\n(statearr_45974[(12)] \x3d inst_45875);\n\nreturn statearr_45974;\n})();\nvar statearr_45977_48360 \x3d state_45929__$1;\n(statearr_45977_48360[(2)] \x3d null);\n\n(statearr_45977_48360[(1)] \x3d (8));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (3))){\nvar inst_45927 \x3d (state_45929[(2)]);\nvar state_45929__$1 \x3d state_45929;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_45929__$1,inst_45927);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (12))){\nvar inst_45906 \x3d (state_45929[(2)]);\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45982_48361 \x3d state_45929__$1;\n(statearr_45982_48361[(2)] \x3d inst_45906);\n\n(statearr_45982_48361[(1)] \x3d (9));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (2))){\nvar state_45929__$1 \x3d state_45929;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_45929__$1,(4),in$);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (23))){\nvar inst_45923 \x3d (state_45929[(2)]);\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45985_48367 \x3d state_45929__$1;\n(statearr_45985_48367[(2)] \x3d inst_45923);\n\n(statearr_45985_48367[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (19))){\nvar inst_45901 \x3d (state_45929[(2)]);\nvar state_45929__$1 \x3d state_45929;\nvar statearr_45996_48369 \x3d state_45929__$1;\n(statearr_45996_48369[(2)] \x3d inst_45901);\n\n(statearr_45996_48369[(1)] \x3d (16));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (11))){\nvar inst_45872 \x3d (state_45929[(9)]);\nvar inst_45886 \x3d (state_45929[(7)]);\nvar inst_45886__$1 \x3d cljs.core.seq(inst_45872);\nvar state_45929__$1 \x3d (function (){var statearr_45997 \x3d state_45929;\n(statearr_45997[(7)] \x3d inst_45886__$1);\n\nreturn statearr_45997;\n})();\nif(inst_45886__$1){\nvar statearr_45998_48372 \x3d state_45929__$1;\n(statearr_45998_48372[(1)] \x3d (14));\n\n} else {\nvar statearr_45999_48375 \x3d state_45929__$1;\n(statearr_45999_48375[(1)] \x3d (15));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (9))){\nvar inst_45908 \x3d (state_45929[(2)]);\nvar inst_45909 \x3d cljs.core.async.impl.protocols.closed_QMARK_(out);\nvar state_45929__$1 \x3d (function (){var statearr_46001 \x3d state_45929;\n(statearr_46001[(15)] \x3d inst_45908);\n\nreturn statearr_46001;\n})();\nif(cljs.core.truth_(inst_45909)){\nvar statearr_46002_48378 \x3d state_45929__$1;\n(statearr_46002_48378[(1)] \x3d (21));\n\n} else {\nvar statearr_46004_48379 \x3d state_45929__$1;\n(statearr_46004_48379[(1)] \x3d (22));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (5))){\nvar inst_45864 \x3d cljs.core.async.close_BANG_(out);\nvar state_45929__$1 \x3d state_45929;\nvar statearr_46005_48381 \x3d state_45929__$1;\n(statearr_46005_48381[(2)] \x3d inst_45864);\n\n(statearr_46005_48381[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (14))){\nvar inst_45886 \x3d (state_45929[(7)]);\nvar inst_45888 \x3d cljs.core.chunked_seq_QMARK_(inst_45886);\nvar state_45929__$1 \x3d state_45929;\nif(inst_45888){\nvar statearr_46012_48387 \x3d state_45929__$1;\n(statearr_46012_48387[(1)] \x3d (17));\n\n} else {\nvar statearr_46013_48390 \x3d state_45929__$1;\n(statearr_46013_48390[(1)] \x3d (18));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (16))){\nvar inst_45904 \x3d (state_45929[(2)]);\nvar state_45929__$1 \x3d state_45929;\nvar statearr_46014_48395 \x3d state_45929__$1;\n(statearr_46014_48395[(2)] \x3d inst_45904);\n\n(statearr_46014_48395[(1)] \x3d (12));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (10))){\nvar inst_45873 \x3d (state_45929[(10)]);\nvar inst_45875 \x3d (state_45929[(12)]);\nvar inst_45880 \x3d cljs.core._nth(inst_45873,inst_45875);\nvar state_45929__$1 \x3d state_45929;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45929__$1,(13),out,inst_45880);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (18))){\nvar inst_45886 \x3d (state_45929[(7)]);\nvar inst_45895 \x3d cljs.core.first(inst_45886);\nvar state_45929__$1 \x3d state_45929;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_45929__$1,(20),out,inst_45895);\n} else {\nif((state_val_45930 \x3d\x3d\x3d (8))){\nvar inst_45874 \x3d (state_45929[(8)]);\nvar inst_45875 \x3d (state_45929[(12)]);\nvar inst_45877 \x3d (inst_45875 \x3c inst_45874);\nvar inst_45878 \x3d inst_45877;\nvar state_45929__$1 \x3d state_45929;\nif(cljs.core.truth_(inst_45878)){\nvar statearr_46015_48404 \x3d state_45929__$1;\n(statearr_46015_48404[(1)] \x3d (10));\n\n} else {\nvar statearr_46016_48405 \x3d state_45929__$1;\n(statearr_46016_48405[(1)] \x3d (11));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$mapcat_STAR__$_state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$mapcat_STAR__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_46024 \x3d [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_46024[(0)] \x3d cljs$core$async$mapcat_STAR__$_state_machine__42703__auto__);\n\n(statearr_46024[(1)] \x3d (1));\n\nreturn statearr_46024;\n});\nvar cljs$core$async$mapcat_STAR__$_state_machine__42703__auto____1 \x3d (function (state_45929){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_45929);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e46026){var ex__42707__auto__ \x3d e46026;\nvar statearr_46027_48408 \x3d state_45929;\n(statearr_46027_48408[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_45929[(4)]))){\nvar statearr_46028_48412 \x3d state_45929;\n(statearr_46028_48412[(1)] \x3d cljs.core.first((state_45929[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48421 \x3d state_45929;\nstate_45929 \x3d G__48421;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$mapcat_STAR__$_state_machine__42703__auto__ \x3d function(state_45929){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$mapcat_STAR__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$mapcat_STAR__$_state_machine__42703__auto____1.call(this,state_45929);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$mapcat_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$mapcat_STAR__$_state_machine__42703__auto____0;\ncljs$core$async$mapcat_STAR__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$mapcat_STAR__$_state_machine__42703__auto____1;\nreturn cljs$core$async$mapcat_STAR__$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_46029 \x3d f__42954__auto__();\n(statearr_46029[(6)] \x3d c__42953__auto__);\n\nreturn statearr_46029;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n});\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.mapcat_LT_ \x3d (function cljs$core$async$mapcat_LT_(var_args){\nvar G__46044 \x3d arguments.length;\nswitch (G__46044) {\ncase 2:\nreturn cljs.core.async.mapcat_LT_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.mapcat_LT_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.mapcat_LT_.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,in$){\nreturn cljs.core.async.mapcat_LT_.cljs$core$IFn$_invoke$arity$3(f,in$,null);\n}));\n\n(cljs.core.async.mapcat_LT_.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,in$,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\ncljs.core.async.mapcat_STAR_(f,in$,out);\n\nreturn out;\n}));\n\n(cljs.core.async.mapcat_LT_.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.mapcat_GT_ \x3d (function cljs$core$async$mapcat_GT_(var_args){\nvar G__46060 \x3d arguments.length;\nswitch (G__46060) {\ncase 2:\nreturn cljs.core.async.mapcat_GT_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.mapcat_GT_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.mapcat_GT_.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,out){\nreturn cljs.core.async.mapcat_GT_.cljs$core$IFn$_invoke$arity$3(f,out,null);\n}));\n\n(cljs.core.async.mapcat_GT_.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,out,buf_or_n){\nvar in$ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\ncljs.core.async.mapcat_STAR_(f,in$,out);\n\nreturn in$;\n}));\n\n(cljs.core.async.mapcat_GT_.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.unique \x3d (function cljs$core$async$unique(var_args){\nvar G__46071 \x3d arguments.length;\nswitch (G__46071) {\ncase 1:\nreturn cljs.core.async.unique.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.core.async.unique.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.unique.cljs$core$IFn$_invoke$arity$1 \x3d (function (ch){\nreturn cljs.core.async.unique.cljs$core$IFn$_invoke$arity$2(ch,null);\n}));\n\n(cljs.core.async.unique.cljs$core$IFn$_invoke$arity$2 \x3d (function (ch,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar c__42953__auto___48451 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_46104){\nvar state_val_46105 \x3d (state_46104[(1)]);\nif((state_val_46105 \x3d\x3d\x3d (7))){\nvar inst_46099 \x3d (state_46104[(2)]);\nvar state_46104__$1 \x3d state_46104;\nvar statearr_46114_48454 \x3d state_46104__$1;\n(statearr_46114_48454[(2)] \x3d inst_46099);\n\n(statearr_46114_48454[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (1))){\nvar inst_46079 \x3d null;\nvar state_46104__$1 \x3d (function (){var statearr_46122 \x3d state_46104;\n(statearr_46122[(7)] \x3d inst_46079);\n\nreturn statearr_46122;\n})();\nvar statearr_46123_48455 \x3d state_46104__$1;\n(statearr_46123_48455[(2)] \x3d null);\n\n(statearr_46123_48455[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (4))){\nvar inst_46084 \x3d (state_46104[(8)]);\nvar inst_46084__$1 \x3d (state_46104[(2)]);\nvar inst_46085 \x3d (inst_46084__$1 \x3d\x3d null);\nvar inst_46086 \x3d cljs.core.not(inst_46085);\nvar state_46104__$1 \x3d (function (){var statearr_46125 \x3d state_46104;\n(statearr_46125[(8)] \x3d inst_46084__$1);\n\nreturn statearr_46125;\n})();\nif(inst_46086){\nvar statearr_46126_48456 \x3d state_46104__$1;\n(statearr_46126_48456[(1)] \x3d (5));\n\n} else {\nvar statearr_46127_48457 \x3d state_46104__$1;\n(statearr_46127_48457[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (6))){\nvar state_46104__$1 \x3d state_46104;\nvar statearr_46128_48459 \x3d state_46104__$1;\n(statearr_46128_48459[(2)] \x3d null);\n\n(statearr_46128_48459[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (3))){\nvar inst_46101 \x3d (state_46104[(2)]);\nvar inst_46102 \x3d cljs.core.async.close_BANG_(out);\nvar state_46104__$1 \x3d (function (){var statearr_46129 \x3d state_46104;\n(statearr_46129[(9)] \x3d inst_46101);\n\nreturn statearr_46129;\n})();\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_46104__$1,inst_46102);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (2))){\nvar state_46104__$1 \x3d state_46104;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_46104__$1,(4),ch);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (11))){\nvar inst_46084 \x3d (state_46104[(8)]);\nvar inst_46093 \x3d (state_46104[(2)]);\nvar inst_46079 \x3d inst_46084;\nvar state_46104__$1 \x3d (function (){var statearr_46132 \x3d state_46104;\n(statearr_46132[(10)] \x3d inst_46093);\n\n(statearr_46132[(7)] \x3d inst_46079);\n\nreturn statearr_46132;\n})();\nvar statearr_46133_48465 \x3d state_46104__$1;\n(statearr_46133_48465[(2)] \x3d null);\n\n(statearr_46133_48465[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (9))){\nvar inst_46084 \x3d (state_46104[(8)]);\nvar state_46104__$1 \x3d state_46104;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_46104__$1,(11),out,inst_46084);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (5))){\nvar inst_46079 \x3d (state_46104[(7)]);\nvar inst_46084 \x3d (state_46104[(8)]);\nvar inst_46088 \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(inst_46084,inst_46079);\nvar state_46104__$1 \x3d state_46104;\nif(inst_46088){\nvar statearr_46140_48469 \x3d state_46104__$1;\n(statearr_46140_48469[(1)] \x3d (8));\n\n} else {\nvar statearr_46141_48470 \x3d state_46104__$1;\n(statearr_46141_48470[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (10))){\nvar inst_46096 \x3d (state_46104[(2)]);\nvar state_46104__$1 \x3d state_46104;\nvar statearr_46142_48471 \x3d state_46104__$1;\n(statearr_46142_48471[(2)] \x3d inst_46096);\n\n(statearr_46142_48471[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46105 \x3d\x3d\x3d (8))){\nvar inst_46079 \x3d (state_46104[(7)]);\nvar tmp46139 \x3d inst_46079;\nvar inst_46079__$1 \x3d tmp46139;\nvar state_46104__$1 \x3d (function (){var statearr_46144 \x3d state_46104;\n(statearr_46144[(7)] \x3d inst_46079__$1);\n\nreturn statearr_46144;\n})();\nvar statearr_46145_48477 \x3d state_46104__$1;\n(statearr_46145_48477[(2)] \x3d null);\n\n(statearr_46145_48477[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_46148 \x3d [null,null,null,null,null,null,null,null,null,null,null];\n(statearr_46148[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_46148[(1)] \x3d (1));\n\nreturn statearr_46148;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_46104){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_46104);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e46150){var ex__42707__auto__ \x3d e46150;\nvar statearr_46151_48478 \x3d state_46104;\n(statearr_46151_48478[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_46104[(4)]))){\nvar statearr_46152_48479 \x3d state_46104;\n(statearr_46152_48479[(1)] \x3d cljs.core.first((state_46104[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48480 \x3d state_46104;\nstate_46104 \x3d G__48480;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_46104){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_46104);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_46154 \x3d f__42954__auto__();\n(statearr_46154[(6)] \x3d c__42953__auto___48451);\n\nreturn statearr_46154;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.unique.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.partition \x3d (function cljs$core$async$partition(var_args){\nvar G__46157 \x3d arguments.length;\nswitch (G__46157) {\ncase 2:\nreturn cljs.core.async.partition.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.partition.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.partition.cljs$core$IFn$_invoke$arity$2 \x3d (function (n,ch){\nreturn cljs.core.async.partition.cljs$core$IFn$_invoke$arity$3(n,ch,null);\n}));\n\n(cljs.core.async.partition.cljs$core$IFn$_invoke$arity$3 \x3d (function (n,ch,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar c__42953__auto___48482 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_46210){\nvar state_val_46211 \x3d (state_46210[(1)]);\nif((state_val_46211 \x3d\x3d\x3d (7))){\nvar inst_46200 \x3d (state_46210[(2)]);\nvar state_46210__$1 \x3d state_46210;\nvar statearr_46217_48483 \x3d state_46210__$1;\n(statearr_46217_48483[(2)] \x3d inst_46200);\n\n(statearr_46217_48483[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (1))){\nvar inst_46165 \x3d (new Array(n));\nvar inst_46166 \x3d inst_46165;\nvar inst_46167 \x3d (0);\nvar state_46210__$1 \x3d (function (){var statearr_46220 \x3d state_46210;\n(statearr_46220[(7)] \x3d inst_46167);\n\n(statearr_46220[(8)] \x3d inst_46166);\n\nreturn statearr_46220;\n})();\nvar statearr_46224_48486 \x3d state_46210__$1;\n(statearr_46224_48486[(2)] \x3d null);\n\n(statearr_46224_48486[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (4))){\nvar inst_46171 \x3d (state_46210[(9)]);\nvar inst_46171__$1 \x3d (state_46210[(2)]);\nvar inst_46173 \x3d (inst_46171__$1 \x3d\x3d null);\nvar inst_46174 \x3d cljs.core.not(inst_46173);\nvar state_46210__$1 \x3d (function (){var statearr_46225 \x3d state_46210;\n(statearr_46225[(9)] \x3d inst_46171__$1);\n\nreturn statearr_46225;\n})();\nif(inst_46174){\nvar statearr_46226_48490 \x3d state_46210__$1;\n(statearr_46226_48490[(1)] \x3d (5));\n\n} else {\nvar statearr_46227_48492 \x3d state_46210__$1;\n(statearr_46227_48492[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (15))){\nvar inst_46194 \x3d (state_46210[(2)]);\nvar state_46210__$1 \x3d state_46210;\nvar statearr_46228_48493 \x3d state_46210__$1;\n(statearr_46228_48493[(2)] \x3d inst_46194);\n\n(statearr_46228_48493[(1)] \x3d (14));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (13))){\nvar state_46210__$1 \x3d state_46210;\nvar statearr_46235_48495 \x3d state_46210__$1;\n(statearr_46235_48495[(2)] \x3d null);\n\n(statearr_46235_48495[(1)] \x3d (14));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (6))){\nvar inst_46167 \x3d (state_46210[(7)]);\nvar inst_46190 \x3d (inst_46167 \x3e (0));\nvar state_46210__$1 \x3d state_46210;\nif(cljs.core.truth_(inst_46190)){\nvar statearr_46237_48496 \x3d state_46210__$1;\n(statearr_46237_48496[(1)] \x3d (12));\n\n} else {\nvar statearr_46238_48497 \x3d state_46210__$1;\n(statearr_46238_48497[(1)] \x3d (13));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (3))){\nvar inst_46202 \x3d (state_46210[(2)]);\nvar state_46210__$1 \x3d state_46210;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_46210__$1,inst_46202);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (12))){\nvar inst_46166 \x3d (state_46210[(8)]);\nvar inst_46192 \x3d cljs.core.vec(inst_46166);\nvar state_46210__$1 \x3d state_46210;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_46210__$1,(15),out,inst_46192);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (2))){\nvar state_46210__$1 \x3d state_46210;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_46210__$1,(4),ch);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (11))){\nvar inst_46184 \x3d (state_46210[(2)]);\nvar inst_46185 \x3d (new Array(n));\nvar inst_46166 \x3d inst_46185;\nvar inst_46167 \x3d (0);\nvar state_46210__$1 \x3d (function (){var statearr_46249 \x3d state_46210;\n(statearr_46249[(10)] \x3d inst_46184);\n\n(statearr_46249[(7)] \x3d inst_46167);\n\n(statearr_46249[(8)] \x3d inst_46166);\n\nreturn statearr_46249;\n})();\nvar statearr_46251_48499 \x3d state_46210__$1;\n(statearr_46251_48499[(2)] \x3d null);\n\n(statearr_46251_48499[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (9))){\nvar inst_46166 \x3d (state_46210[(8)]);\nvar inst_46182 \x3d cljs.core.vec(inst_46166);\nvar state_46210__$1 \x3d state_46210;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_46210__$1,(11),out,inst_46182);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (5))){\nvar inst_46177 \x3d (state_46210[(11)]);\nvar inst_46171 \x3d (state_46210[(9)]);\nvar inst_46167 \x3d (state_46210[(7)]);\nvar inst_46166 \x3d (state_46210[(8)]);\nvar inst_46176 \x3d (inst_46166[inst_46167] \x3d inst_46171);\nvar inst_46177__$1 \x3d (inst_46167 + (1));\nvar inst_46178 \x3d (inst_46177__$1 \x3c n);\nvar state_46210__$1 \x3d (function (){var statearr_46254 \x3d state_46210;\n(statearr_46254[(11)] \x3d inst_46177__$1);\n\n(statearr_46254[(12)] \x3d inst_46176);\n\nreturn statearr_46254;\n})();\nif(cljs.core.truth_(inst_46178)){\nvar statearr_46255_48501 \x3d state_46210__$1;\n(statearr_46255_48501[(1)] \x3d (8));\n\n} else {\nvar statearr_46256_48502 \x3d state_46210__$1;\n(statearr_46256_48502[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (14))){\nvar inst_46197 \x3d (state_46210[(2)]);\nvar inst_46198 \x3d cljs.core.async.close_BANG_(out);\nvar state_46210__$1 \x3d (function (){var statearr_46263 \x3d state_46210;\n(statearr_46263[(13)] \x3d inst_46197);\n\nreturn statearr_46263;\n})();\nvar statearr_46264_48503 \x3d state_46210__$1;\n(statearr_46264_48503[(2)] \x3d inst_46198);\n\n(statearr_46264_48503[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (10))){\nvar inst_46188 \x3d (state_46210[(2)]);\nvar state_46210__$1 \x3d state_46210;\nvar statearr_46270_48504 \x3d state_46210__$1;\n(statearr_46270_48504[(2)] \x3d inst_46188);\n\n(statearr_46270_48504[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46211 \x3d\x3d\x3d (8))){\nvar inst_46177 \x3d (state_46210[(11)]);\nvar inst_46166 \x3d (state_46210[(8)]);\nvar tmp46257 \x3d inst_46166;\nvar inst_46166__$1 \x3d tmp46257;\nvar inst_46167 \x3d inst_46177;\nvar state_46210__$1 \x3d (function (){var statearr_46271 \x3d state_46210;\n(statearr_46271[(7)] \x3d inst_46167);\n\n(statearr_46271[(8)] \x3d inst_46166__$1);\n\nreturn statearr_46271;\n})();\nvar statearr_46272_48507 \x3d state_46210__$1;\n(statearr_46272_48507[(2)] \x3d null);\n\n(statearr_46272_48507[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_46273 \x3d [null,null,null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_46273[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_46273[(1)] \x3d (1));\n\nreturn statearr_46273;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_46210){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_46210);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e46275){var ex__42707__auto__ \x3d e46275;\nvar statearr_46276_48522 \x3d state_46210;\n(statearr_46276_48522[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_46210[(4)]))){\nvar statearr_46277_48524 \x3d state_46210;\n(statearr_46277_48524[(1)] \x3d cljs.core.first((state_46210[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48529 \x3d state_46210;\nstate_46210 \x3d G__48529;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_46210){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_46210);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_46279 \x3d f__42954__auto__();\n(statearr_46279[(6)] \x3d c__42953__auto___48482);\n\nreturn statearr_46279;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.partition.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Deprecated - this function will be removed. Use transducer instead\n */\ncljs.core.async.partition_by \x3d (function cljs$core$async$partition_by(var_args){\nvar G__46285 \x3d arguments.length;\nswitch (G__46285) {\ncase 2:\nreturn cljs.core.async.partition_by.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.core.async.partition_by.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.core.async.partition_by.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,ch){\nreturn cljs.core.async.partition_by.cljs$core$IFn$_invoke$arity$3(f,ch,null);\n}));\n\n(cljs.core.async.partition_by.cljs$core$IFn$_invoke$arity$3 \x3d (function (f,ch,buf_or_n){\nvar out \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1(buf_or_n);\nvar c__42953__auto___48533 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_46334){\nvar state_val_46335 \x3d (state_46334[(1)]);\nif((state_val_46335 \x3d\x3d\x3d (7))){\nvar inst_46329 \x3d (state_46334[(2)]);\nvar state_46334__$1 \x3d state_46334;\nvar statearr_46343_48537 \x3d state_46334__$1;\n(statearr_46343_48537[(2)] \x3d inst_46329);\n\n(statearr_46343_48537[(1)] \x3d (3));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (1))){\nvar inst_46291 \x3d [];\nvar inst_46292 \x3d inst_46291;\nvar inst_46293 \x3d new cljs.core.Keyword(\x22cljs.core.async\x22,\x22nothing\x22,\x22cljs.core.async/nothing\x22,-69252123);\nvar state_46334__$1 \x3d (function (){var statearr_46348 \x3d state_46334;\n(statearr_46348[(7)] \x3d inst_46292);\n\n(statearr_46348[(8)] \x3d inst_46293);\n\nreturn statearr_46348;\n})();\nvar statearr_46349_48539 \x3d state_46334__$1;\n(statearr_46349_48539[(2)] \x3d null);\n\n(statearr_46349_48539[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (4))){\nvar inst_46296 \x3d (state_46334[(9)]);\nvar inst_46296__$1 \x3d (state_46334[(2)]);\nvar inst_46297 \x3d (inst_46296__$1 \x3d\x3d null);\nvar inst_46298 \x3d cljs.core.not(inst_46297);\nvar state_46334__$1 \x3d (function (){var statearr_46354 \x3d state_46334;\n(statearr_46354[(9)] \x3d inst_46296__$1);\n\nreturn statearr_46354;\n})();\nif(inst_46298){\nvar statearr_46358_48549 \x3d state_46334__$1;\n(statearr_46358_48549[(1)] \x3d (5));\n\n} else {\nvar statearr_46360_48551 \x3d state_46334__$1;\n(statearr_46360_48551[(1)] \x3d (6));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (15))){\nvar inst_46323 \x3d (state_46334[(2)]);\nvar state_46334__$1 \x3d state_46334;\nvar statearr_46364_48558 \x3d state_46334__$1;\n(statearr_46364_48558[(2)] \x3d inst_46323);\n\n(statearr_46364_48558[(1)] \x3d (14));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (13))){\nvar state_46334__$1 \x3d state_46334;\nvar statearr_46368_48559 \x3d state_46334__$1;\n(statearr_46368_48559[(2)] \x3d null);\n\n(statearr_46368_48559[(1)] \x3d (14));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (6))){\nvar inst_46292 \x3d (state_46334[(7)]);\nvar inst_46318 \x3d inst_46292.length;\nvar inst_46319 \x3d (inst_46318 \x3e (0));\nvar state_46334__$1 \x3d state_46334;\nif(cljs.core.truth_(inst_46319)){\nvar statearr_46369_48565 \x3d state_46334__$1;\n(statearr_46369_48565[(1)] \x3d (12));\n\n} else {\nvar statearr_46370_48566 \x3d state_46334__$1;\n(statearr_46370_48566[(1)] \x3d (13));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (3))){\nvar inst_46331 \x3d (state_46334[(2)]);\nvar state_46334__$1 \x3d state_46334;\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_46334__$1,inst_46331);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (12))){\nvar inst_46292 \x3d (state_46334[(7)]);\nvar inst_46321 \x3d cljs.core.vec(inst_46292);\nvar state_46334__$1 \x3d state_46334;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_46334__$1,(15),out,inst_46321);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (2))){\nvar state_46334__$1 \x3d state_46334;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_46334__$1,(4),ch);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (11))){\nvar inst_46296 \x3d (state_46334[(9)]);\nvar inst_46301 \x3d (state_46334[(10)]);\nvar inst_46311 \x3d (state_46334[(2)]);\nvar inst_46312 \x3d [];\nvar inst_46313 \x3d inst_46312.push(inst_46296);\nvar inst_46292 \x3d inst_46312;\nvar inst_46293 \x3d inst_46301;\nvar state_46334__$1 \x3d (function (){var statearr_46371 \x3d state_46334;\n(statearr_46371[(11)] \x3d inst_46311);\n\n(statearr_46371[(7)] \x3d inst_46292);\n\n(statearr_46371[(8)] \x3d inst_46293);\n\n(statearr_46371[(12)] \x3d inst_46313);\n\nreturn statearr_46371;\n})();\nvar statearr_46375_48582 \x3d state_46334__$1;\n(statearr_46375_48582[(2)] \x3d null);\n\n(statearr_46375_48582[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (9))){\nvar inst_46292 \x3d (state_46334[(7)]);\nvar inst_46309 \x3d cljs.core.vec(inst_46292);\nvar state_46334__$1 \x3d state_46334;\nreturn cljs.core.async.impl.ioc_helpers.put_BANG_(state_46334__$1,(11),out,inst_46309);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (5))){\nvar inst_46296 \x3d (state_46334[(9)]);\nvar inst_46301 \x3d (state_46334[(10)]);\nvar inst_46293 \x3d (state_46334[(8)]);\nvar inst_46301__$1 \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(inst_46296) : f.call(null,inst_46296));\nvar inst_46302 \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(inst_46301__$1,inst_46293);\nvar inst_46303 \x3d cljs.core.keyword_identical_QMARK_(inst_46293,new cljs.core.Keyword(\x22cljs.core.async\x22,\x22nothing\x22,\x22cljs.core.async/nothing\x22,-69252123));\nvar inst_46304 \x3d ((inst_46302) || (inst_46303));\nvar state_46334__$1 \x3d (function (){var statearr_46376 \x3d state_46334;\n(statearr_46376[(10)] \x3d inst_46301__$1);\n\nreturn statearr_46376;\n})();\nif(cljs.core.truth_(inst_46304)){\nvar statearr_46377_48588 \x3d state_46334__$1;\n(statearr_46377_48588[(1)] \x3d (8));\n\n} else {\nvar statearr_46378_48589 \x3d state_46334__$1;\n(statearr_46378_48589[(1)] \x3d (9));\n\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (14))){\nvar inst_46326 \x3d (state_46334[(2)]);\nvar inst_46327 \x3d cljs.core.async.close_BANG_(out);\nvar state_46334__$1 \x3d (function (){var statearr_46380 \x3d state_46334;\n(statearr_46380[(13)] \x3d inst_46326);\n\nreturn statearr_46380;\n})();\nvar statearr_46381_48592 \x3d state_46334__$1;\n(statearr_46381_48592[(2)] \x3d inst_46327);\n\n(statearr_46381_48592[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (10))){\nvar inst_46316 \x3d (state_46334[(2)]);\nvar state_46334__$1 \x3d state_46334;\nvar statearr_46382_48600 \x3d state_46334__$1;\n(statearr_46382_48600[(2)] \x3d inst_46316);\n\n(statearr_46382_48600[(1)] \x3d (7));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nif((state_val_46335 \x3d\x3d\x3d (8))){\nvar inst_46296 \x3d (state_46334[(9)]);\nvar inst_46301 \x3d (state_46334[(10)]);\nvar inst_46292 \x3d (state_46334[(7)]);\nvar inst_46306 \x3d inst_46292.push(inst_46296);\nvar tmp46379 \x3d inst_46292;\nvar inst_46292__$1 \x3d tmp46379;\nvar inst_46293 \x3d inst_46301;\nvar state_46334__$1 \x3d (function (){var statearr_46383 \x3d state_46334;\n(statearr_46383[(14)] \x3d inst_46306);\n\n(statearr_46383[(7)] \x3d inst_46292__$1);\n\n(statearr_46383[(8)] \x3d inst_46293);\n\nreturn statearr_46383;\n})();\nvar statearr_46386_48605 \x3d state_46334__$1;\n(statearr_46386_48605[(2)] \x3d null);\n\n(statearr_46386_48605[(1)] \x3d (2));\n\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nreturn (function() {\nvar cljs$core$async$state_machine__42703__auto__ \x3d null;\nvar cljs$core$async$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_46388 \x3d [null,null,null,null,null,null,null,null,null,null,null,null,null,null,null];\n(statearr_46388[(0)] \x3d cljs$core$async$state_machine__42703__auto__);\n\n(statearr_46388[(1)] \x3d (1));\n\nreturn statearr_46388;\n});\nvar cljs$core$async$state_machine__42703__auto____1 \x3d (function (state_46334){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_46334);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e46389){var ex__42707__auto__ \x3d e46389;\nvar statearr_46390_48611 \x3d state_46334;\n(statearr_46390_48611[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_46334[(4)]))){\nvar statearr_46391_48613 \x3d state_46334;\n(statearr_46391_48613[(1)] \x3d cljs.core.first((state_46334[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__48614 \x3d state_46334;\nstate_46334 \x3d G__48614;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\ncljs$core$async$state_machine__42703__auto__ \x3d function(state_46334){\nswitch(arguments.length){\ncase 0:\nreturn cljs$core$async$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn cljs$core$async$state_machine__42703__auto____1.call(this,state_46334);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d cljs$core$async$state_machine__42703__auto____0;\ncljs$core$async$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d cljs$core$async$state_machine__42703__auto____1;\nreturn cljs$core$async$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_46392 \x3d f__42954__auto__();\n(statearr_46392[(6)] \x3d c__42953__auto___48533);\n\nreturn statearr_46392;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n\nreturn out;\n}));\n\n(cljs.core.async.partition_by.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("shadow.dom.js", true , "goog.provide(\x27shadow.dom\x27);\nshadow.dom.transition_supported_QMARK_ \x3d (((typeof window !\x3d\x3d \x27undefined\x27))?goog.style.transition.isSupported():null);\n\n/**\n * @interface\n */\nshadow.dom.IElement \x3d function(){};\n\nvar shadow$dom$IElement$_to_dom$dyn_48464 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.dom._to_dom[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.dom._to_dom[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IElement.-to-dom\x22,this$);\n}\n}\n});\nshadow.dom._to_dom \x3d (function shadow$dom$_to_dom(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$dom$IElement$_to_dom$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$dom$IElement$_to_dom$arity$1(this$);\n} else {\nreturn shadow$dom$IElement$_to_dom$dyn_48464(this$);\n}\n});\n\n\n/**\n * @interface\n */\nshadow.dom.SVGElement \x3d function(){};\n\nvar shadow$dom$SVGElement$_to_svg$dyn_48472 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.dom._to_svg[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.dom._to_svg[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22SVGElement.-to-svg\x22,this$);\n}\n}\n});\nshadow.dom._to_svg \x3d (function shadow$dom$_to_svg(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$dom$SVGElement$_to_svg$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$dom$SVGElement$_to_svg$arity$1(this$);\n} else {\nreturn shadow$dom$SVGElement$_to_svg$dyn_48472(this$);\n}\n});\n\nshadow.dom.lazy_native_coll_seq \x3d (function shadow$dom$lazy_native_coll_seq(coll,idx){\nif((idx \x3c coll.length)){\nreturn (new cljs.core.LazySeq(null,(function (){\nreturn cljs.core.cons((coll[idx]),(function (){var G__46511 \x3d coll;\nvar G__46512 \x3d (idx + (1));\nreturn (shadow.dom.lazy_native_coll_seq.cljs$core$IFn$_invoke$arity$2 ? shadow.dom.lazy_native_coll_seq.cljs$core$IFn$_invoke$arity$2(G__46511,G__46512) : shadow.dom.lazy_native_coll_seq.call(null,G__46511,G__46512));\n})());\n}),null,null));\n} else {\nreturn null;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IIndexed}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IDeref}\n * @implements {shadow.dom.IElement}\n*/\nshadow.dom.NativeColl \x3d (function (coll){\nthis.coll \x3d coll;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 8421394;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.dom.NativeColl.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.coll;\n}));\n\n(shadow.dom.NativeColl.prototype.cljs$core$IIndexed$_nth$arity$2 \x3d (function (this$,n){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (self__.coll[n]);\n}));\n\n(shadow.dom.NativeColl.prototype.cljs$core$IIndexed$_nth$arity$3 \x3d (function (this$,n,not_found){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar or__4160__auto__ \x3d (self__.coll[n]);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn not_found;\n}\n}));\n\n(shadow.dom.NativeColl.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.coll.length;\n}));\n\n(shadow.dom.NativeColl.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn shadow.dom.lazy_native_coll_seq(self__.coll,(0));\n}));\n\n(shadow.dom.NativeColl.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.dom.NativeColl.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.coll;\n}));\n\n(shadow.dom.NativeColl.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null);\n}));\n\n(shadow.dom.NativeColl.cljs$lang$type \x3d true);\n\n(shadow.dom.NativeColl.cljs$lang$ctorStr \x3d \x22shadow.dom/NativeColl\x22);\n\n(shadow.dom.NativeColl.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.dom/NativeColl\x22);\n}));\n\n/**\n * Positional factory function for shadow.dom/NativeColl.\n */\nshadow.dom.__GT_NativeColl \x3d (function shadow$dom$__GT_NativeColl(coll){\nreturn (new shadow.dom.NativeColl(coll));\n});\n\nshadow.dom.native_coll \x3d (function shadow$dom$native_coll(coll){\nreturn (new shadow.dom.NativeColl(coll));\n});\nshadow.dom.dom_node \x3d (function shadow$dom$dom_node(el){\nif((el \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((el \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d el.shadow$dom$IElement$))))?true:false):false)){\nreturn el.shadow$dom$IElement$_to_dom$arity$1(null);\n} else {\nif(typeof el \x3d\x3d\x3d \x27string\x27){\nreturn document.createTextNode(el);\n} else {\nif(typeof el \x3d\x3d\x3d \x27number\x27){\nreturn document.createTextNode(cljs.core.str.cljs$core$IFn$_invoke$arity$1(el));\n} else {\nreturn el;\n\n}\n}\n}\n}\n});\nshadow.dom.query_one \x3d (function shadow$dom$query_one(var_args){\nvar G__46575 \x3d arguments.length;\nswitch (G__46575) {\ncase 1:\nreturn shadow.dom.query_one.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.query_one.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.query_one.cljs$core$IFn$_invoke$arity$1 \x3d (function (sel){\nreturn document.querySelector(sel);\n}));\n\n(shadow.dom.query_one.cljs$core$IFn$_invoke$arity$2 \x3d (function (sel,root){\nreturn shadow.dom.dom_node(root).querySelector(sel);\n}));\n\n(shadow.dom.query_one.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.query \x3d (function shadow$dom$query(var_args){\nvar G__46589 \x3d arguments.length;\nswitch (G__46589) {\ncase 1:\nreturn shadow.dom.query.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.query.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.query.cljs$core$IFn$_invoke$arity$1 \x3d (function (sel){\nreturn (new shadow.dom.NativeColl(document.querySelectorAll(sel)));\n}));\n\n(shadow.dom.query.cljs$core$IFn$_invoke$arity$2 \x3d (function (sel,root){\nreturn (new shadow.dom.NativeColl(shadow.dom.dom_node(root).querySelectorAll(sel)));\n}));\n\n(shadow.dom.query.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.by_id \x3d (function shadow$dom$by_id(var_args){\nvar G__46604 \x3d arguments.length;\nswitch (G__46604) {\ncase 2:\nreturn shadow.dom.by_id.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 1:\nreturn shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.by_id.cljs$core$IFn$_invoke$arity$2 \x3d (function (id,el){\nreturn shadow.dom.dom_node(el).getElementById(id);\n}));\n\n(shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1 \x3d (function (id){\nreturn document.getElementById(id);\n}));\n\n(shadow.dom.by_id.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.build \x3d shadow.dom.dom_node;\nshadow.dom.ev_stop \x3d (function shadow$dom$ev_stop(var_args){\nvar G__46624 \x3d arguments.length;\nswitch (G__46624) {\ncase 1:\nreturn shadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 4:\nreturn shadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1 \x3d (function (e){\nif(cljs.core.truth_(e.stopPropagation)){\ne.stopPropagation();\n\ne.preventDefault();\n} else {\n(e.cancelBubble \x3d true);\n\n(e.returnValue \x3d false);\n}\n\nreturn e;\n}));\n\n(shadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$2 \x3d (function (e,el){\nshadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1(e);\n\nreturn el;\n}));\n\n(shadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$4 \x3d (function (e,el,scope,owner){\nshadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1(e);\n\nreturn el;\n}));\n\n(shadow.dom.ev_stop.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * check wether a parent node (or the document) contains the child\n */\nshadow.dom.contains_QMARK_ \x3d (function shadow$dom$contains_QMARK_(var_args){\nvar G__46649 \x3d arguments.length;\nswitch (G__46649) {\ncase 1:\nreturn shadow.dom.contains_QMARK_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.contains_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.contains_QMARK_.cljs$core$IFn$_invoke$arity$1 \x3d (function (el){\nreturn goog.dom.contains(document,shadow.dom.dom_node(el));\n}));\n\n(shadow.dom.contains_QMARK_.cljs$core$IFn$_invoke$arity$2 \x3d (function (parent,el){\nreturn goog.dom.contains(shadow.dom.dom_node(parent),shadow.dom.dom_node(el));\n}));\n\n(shadow.dom.contains_QMARK_.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.add_class \x3d (function shadow$dom$add_class(el,cls){\nreturn goog.dom.classlist.add(shadow.dom.dom_node(el),cls);\n});\nshadow.dom.remove_class \x3d (function shadow$dom$remove_class(el,cls){\nreturn goog.dom.classlist.remove(shadow.dom.dom_node(el),cls);\n});\nshadow.dom.toggle_class \x3d (function shadow$dom$toggle_class(var_args){\nvar G__46680 \x3d arguments.length;\nswitch (G__46680) {\ncase 2:\nreturn shadow.dom.toggle_class.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.dom.toggle_class.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.toggle_class.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,cls){\nreturn goog.dom.classlist.toggle(shadow.dom.dom_node(el),cls);\n}));\n\n(shadow.dom.toggle_class.cljs$core$IFn$_invoke$arity$3 \x3d (function (el,cls,v){\nif(cljs.core.truth_(v)){\nreturn shadow.dom.add_class(el,cls);\n} else {\nreturn shadow.dom.remove_class(el,cls);\n}\n}));\n\n(shadow.dom.toggle_class.cljs$lang$maxFixedArity \x3d 3);\n\nshadow.dom.dom_listen \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d (!((typeof document !\x3d\x3d \x27undefined\x27)));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn document.addEventListener;\n}\n})())?(function shadow$dom$dom_listen_good(el,ev,handler){\nreturn el.addEventListener(ev,handler,false);\n}):(function shadow$dom$dom_listen_ie(el,ev,handler){\ntry{return el.attachEvent([\x22on\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ev)].join(\x27\x27),(function (e){\nreturn (handler.cljs$core$IFn$_invoke$arity$2 ? handler.cljs$core$IFn$_invoke$arity$2(e,el) : handler.call(null,e,el));\n}));\n}catch (e46695){if((e46695 instanceof Object)){\nvar e \x3d e46695;\nreturn console.log(\x22didnt support attachEvent\x22,el,e);\n} else {\nthrow e46695;\n\n}\n}}));\nshadow.dom.dom_listen_remove \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d (!((typeof document !\x3d\x3d \x27undefined\x27)));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn document.removeEventListener;\n}\n})())?(function shadow$dom$dom_listen_remove_good(el,ev,handler){\nreturn el.removeEventListener(ev,handler,false);\n}):(function shadow$dom$dom_listen_remove_ie(el,ev,handler){\nreturn el.detachEvent([\x22on\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ev)].join(\x27\x27),handler);\n}));\nshadow.dom.on_query \x3d (function shadow$dom$on_query(root_el,ev,selector,handler){\nvar seq__46712 \x3d cljs.core.seq(shadow.dom.query.cljs$core$IFn$_invoke$arity$2(selector,root_el));\nvar chunk__46713 \x3d null;\nvar count__46714 \x3d (0);\nvar i__46715 \x3d (0);\nwhile(true){\nif((i__46715 \x3c count__46714)){\nvar el \x3d chunk__46713.cljs$core$IIndexed$_nth$arity$2(null,i__46715);\nvar handler_48508__$1 \x3d ((function (seq__46712,chunk__46713,count__46714,i__46715,el){\nreturn (function (e){\nreturn (handler.cljs$core$IFn$_invoke$arity$2 ? handler.cljs$core$IFn$_invoke$arity$2(e,el) : handler.call(null,e,el));\n});})(seq__46712,chunk__46713,count__46714,i__46715,el))\n;\nshadow.dom.dom_listen(el,cljs.core.name(ev),handler_48508__$1);\n\n\nvar G__48509 \x3d seq__46712;\nvar G__48510 \x3d chunk__46713;\nvar G__48511 \x3d count__46714;\nvar G__48512 \x3d (i__46715 + (1));\nseq__46712 \x3d G__48509;\nchunk__46713 \x3d G__48510;\ncount__46714 \x3d G__48511;\ni__46715 \x3d G__48512;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__46712);\nif(temp__5753__auto__){\nvar seq__46712__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__46712__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__46712__$1);\nvar G__48518 \x3d cljs.core.chunk_rest(seq__46712__$1);\nvar G__48519 \x3d c__4591__auto__;\nvar G__48520 \x3d cljs.core.count(c__4591__auto__);\nvar G__48521 \x3d (0);\nseq__46712 \x3d G__48518;\nchunk__46713 \x3d G__48519;\ncount__46714 \x3d G__48520;\ni__46715 \x3d G__48521;\ncontinue;\n} else {\nvar el \x3d cljs.core.first(seq__46712__$1);\nvar handler_48523__$1 \x3d ((function (seq__46712,chunk__46713,count__46714,i__46715,el,seq__46712__$1,temp__5753__auto__){\nreturn (function (e){\nreturn (handler.cljs$core$IFn$_invoke$arity$2 ? handler.cljs$core$IFn$_invoke$arity$2(e,el) : handler.call(null,e,el));\n});})(seq__46712,chunk__46713,count__46714,i__46715,el,seq__46712__$1,temp__5753__auto__))\n;\nshadow.dom.dom_listen(el,cljs.core.name(ev),handler_48523__$1);\n\n\nvar G__48525 \x3d cljs.core.next(seq__46712__$1);\nvar G__48526 \x3d null;\nvar G__48527 \x3d (0);\nvar G__48528 \x3d (0);\nseq__46712 \x3d G__48525;\nchunk__46713 \x3d G__48526;\ncount__46714 \x3d G__48527;\ni__46715 \x3d G__48528;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.dom.on \x3d (function shadow$dom$on(var_args){\nvar G__46757 \x3d arguments.length;\nswitch (G__46757) {\ncase 3:\nreturn shadow.dom.on.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.dom.on.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.on.cljs$core$IFn$_invoke$arity$3 \x3d (function (el,ev,handler){\nreturn shadow.dom.on.cljs$core$IFn$_invoke$arity$4(el,ev,handler,false);\n}));\n\n(shadow.dom.on.cljs$core$IFn$_invoke$arity$4 \x3d (function (el,ev,handler,capture){\nif(cljs.core.vector_QMARK_(ev)){\nreturn shadow.dom.on_query(el,cljs.core.first(ev),cljs.core.second(ev),handler);\n} else {\nvar handler__$1 \x3d (function (e){\nreturn (handler.cljs$core$IFn$_invoke$arity$2 ? handler.cljs$core$IFn$_invoke$arity$2(e,el) : handler.call(null,e,el));\n});\nreturn shadow.dom.dom_listen(shadow.dom.dom_node(el),cljs.core.name(ev),handler__$1);\n}\n}));\n\n(shadow.dom.on.cljs$lang$maxFixedArity \x3d 4);\n\nshadow.dom.remove_event_handler \x3d (function shadow$dom$remove_event_handler(el,ev,handler){\nreturn shadow.dom.dom_listen_remove(shadow.dom.dom_node(el),cljs.core.name(ev),handler);\n});\nshadow.dom.add_event_listeners \x3d (function shadow$dom$add_event_listeners(el,events){\nvar seq__46794 \x3d cljs.core.seq(events);\nvar chunk__46795 \x3d null;\nvar count__46796 \x3d (0);\nvar i__46797 \x3d (0);\nwhile(true){\nif((i__46797 \x3c count__46796)){\nvar vec__46812 \x3d chunk__46795.cljs$core$IIndexed$_nth$arity$2(null,i__46797);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46812,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46812,(1),null);\nshadow.dom.on.cljs$core$IFn$_invoke$arity$3(el,k,v);\n\n\nvar G__48540 \x3d seq__46794;\nvar G__48541 \x3d chunk__46795;\nvar G__48542 \x3d count__46796;\nvar G__48543 \x3d (i__46797 + (1));\nseq__46794 \x3d G__48540;\nchunk__46795 \x3d G__48541;\ncount__46796 \x3d G__48542;\ni__46797 \x3d G__48543;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__46794);\nif(temp__5753__auto__){\nvar seq__46794__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__46794__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__46794__$1);\nvar G__48545 \x3d cljs.core.chunk_rest(seq__46794__$1);\nvar G__48546 \x3d c__4591__auto__;\nvar G__48547 \x3d cljs.core.count(c__4591__auto__);\nvar G__48548 \x3d (0);\nseq__46794 \x3d G__48545;\nchunk__46795 \x3d G__48546;\ncount__46796 \x3d G__48547;\ni__46797 \x3d G__48548;\ncontinue;\n} else {\nvar vec__46827 \x3d cljs.core.first(seq__46794__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46827,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46827,(1),null);\nshadow.dom.on.cljs$core$IFn$_invoke$arity$3(el,k,v);\n\n\nvar G__48552 \x3d cljs.core.next(seq__46794__$1);\nvar G__48553 \x3d null;\nvar G__48554 \x3d (0);\nvar G__48555 \x3d (0);\nseq__46794 \x3d G__48552;\nchunk__46795 \x3d G__48553;\ncount__46796 \x3d G__48554;\ni__46797 \x3d G__48555;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.dom.set_style \x3d (function shadow$dom$set_style(el,styles){\nvar dom \x3d shadow.dom.dom_node(el);\nvar seq__46837 \x3d cljs.core.seq(styles);\nvar chunk__46838 \x3d null;\nvar count__46839 \x3d (0);\nvar i__46840 \x3d (0);\nwhile(true){\nif((i__46840 \x3c count__46839)){\nvar vec__46856 \x3d chunk__46838.cljs$core$IIndexed$_nth$arity$2(null,i__46840);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46856,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46856,(1),null);\ngoog.style.setStyle(dom,cljs.core.name(k),(((v \x3d\x3d null))?\x22\x22:v));\n\n\nvar G__48560 \x3d seq__46837;\nvar G__48561 \x3d chunk__46838;\nvar G__48562 \x3d count__46839;\nvar G__48563 \x3d (i__46840 + (1));\nseq__46837 \x3d G__48560;\nchunk__46838 \x3d G__48561;\ncount__46839 \x3d G__48562;\ni__46840 \x3d G__48563;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__46837);\nif(temp__5753__auto__){\nvar seq__46837__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__46837__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__46837__$1);\nvar G__48568 \x3d cljs.core.chunk_rest(seq__46837__$1);\nvar G__48569 \x3d c__4591__auto__;\nvar G__48570 \x3d cljs.core.count(c__4591__auto__);\nvar G__48571 \x3d (0);\nseq__46837 \x3d G__48568;\nchunk__46838 \x3d G__48569;\ncount__46839 \x3d G__48570;\ni__46840 \x3d G__48571;\ncontinue;\n} else {\nvar vec__46863 \x3d cljs.core.first(seq__46837__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46863,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46863,(1),null);\ngoog.style.setStyle(dom,cljs.core.name(k),(((v \x3d\x3d null))?\x22\x22:v));\n\n\nvar G__48572 \x3d cljs.core.next(seq__46837__$1);\nvar G__48573 \x3d null;\nvar G__48574 \x3d (0);\nvar G__48575 \x3d (0);\nseq__46837 \x3d G__48572;\nchunk__46838 \x3d G__48573;\ncount__46839 \x3d G__48574;\ni__46840 \x3d G__48575;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.dom.set_attr_STAR_ \x3d (function shadow$dom$set_attr_STAR_(el,key,value){\nvar G__46872_48578 \x3d key;\nvar G__46872_48579__$1 \x3d (((G__46872_48578 instanceof cljs.core.Keyword))?G__46872_48578.fqn:null);\nswitch (G__46872_48579__$1) {\ncase \x22id\x22:\n(el.id \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(value));\n\nbreak;\ncase \x22class\x22:\n(el.className \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(value));\n\nbreak;\ncase \x22for\x22:\n(el.htmlFor \x3d value);\n\nbreak;\ncase \x22cellpadding\x22:\nel.setAttribute(\x22cellPadding\x22,value);\n\nbreak;\ncase \x22cellspacing\x22:\nel.setAttribute(\x22cellSpacing\x22,value);\n\nbreak;\ncase \x22colspan\x22:\nel.setAttribute(\x22colSpan\x22,value);\n\nbreak;\ncase \x22frameborder\x22:\nel.setAttribute(\x22frameBorder\x22,value);\n\nbreak;\ncase \x22height\x22:\nel.setAttribute(\x22height\x22,value);\n\nbreak;\ncase \x22maxlength\x22:\nel.setAttribute(\x22maxLength\x22,value);\n\nbreak;\ncase \x22role\x22:\nel.setAttribute(\x22role\x22,value);\n\nbreak;\ncase \x22rowspan\x22:\nel.setAttribute(\x22rowSpan\x22,value);\n\nbreak;\ncase \x22type\x22:\nel.setAttribute(\x22type\x22,value);\n\nbreak;\ncase \x22usemap\x22:\nel.setAttribute(\x22useMap\x22,value);\n\nbreak;\ncase \x22valign\x22:\nel.setAttribute(\x22vAlign\x22,value);\n\nbreak;\ncase \x22width\x22:\nel.setAttribute(\x22width\x22,value);\n\nbreak;\ncase \x22on\x22:\nshadow.dom.add_event_listeners(el,value);\n\nbreak;\ncase \x22style\x22:\nif((value \x3d\x3d null)){\n} else {\nif(typeof value \x3d\x3d\x3d \x27string\x27){\nel.setAttribute(\x22style\x22,value);\n} else {\nif(cljs.core.map_QMARK_(value)){\nshadow.dom.set_style(el,value);\n} else {\ngoog.style.setStyle(el,value);\n\n}\n}\n}\n\nbreak;\ndefault:\nvar ks_48586 \x3d cljs.core.name(key);\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d goog.string.startsWith(ks_48586,\x22data-\x22);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn goog.string.startsWith(ks_48586,\x22aria-\x22);\n}\n})())){\nel.setAttribute(ks_48586,value);\n} else {\n(el[ks_48586] \x3d value);\n}\n\n}\n\nreturn el;\n});\nshadow.dom.set_attrs \x3d (function shadow$dom$set_attrs(el,attrs){\nreturn cljs.core.reduce_kv((function (el__$1,key,value){\nshadow.dom.set_attr_STAR_(el__$1,key,value);\n\nreturn el__$1;\n}),shadow.dom.dom_node(el),attrs);\n});\nshadow.dom.set_attr \x3d (function shadow$dom$set_attr(el,key,value){\nreturn shadow.dom.set_attr_STAR_(shadow.dom.dom_node(el),key,value);\n});\nshadow.dom.has_class_QMARK_ \x3d (function shadow$dom$has_class_QMARK_(el,cls){\nreturn goog.dom.classlist.contains(shadow.dom.dom_node(el),cls);\n});\nshadow.dom.merge_class_string \x3d (function shadow$dom$merge_class_string(current,extra_class){\nif(cljs.core.seq(current)){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(current),\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(extra_class)].join(\x27\x27);\n} else {\nreturn extra_class;\n}\n});\nshadow.dom.parse_tag \x3d (function shadow$dom$parse_tag(spec){\nvar spec__$1 \x3d cljs.core.name(spec);\nvar fdot \x3d spec__$1.indexOf(\x22.\x22);\nvar fhash \x3d spec__$1.indexOf(\x22#\x22);\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((-1),fdot)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((-1),fhash)))){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [spec__$1,null,null], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((-1),fhash)){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [spec__$1.substring((0),fdot),null,clojure.string.replace(spec__$1.substring((fdot + (1))),/\\./,\x22 \x22)], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((-1),fdot)){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [spec__$1.substring((0),fhash),spec__$1.substring((fhash + (1))),null], null);\n} else {\nif((fhash \x3e fdot)){\nthrow [\x22cant have id after class?\x22,spec__$1].join(\x27\x27);\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [spec__$1.substring((0),fhash),spec__$1.substring((fhash + (1)),fdot),clojure.string.replace(spec__$1.substring((fdot + (1))),/\\./,\x22 \x22)], null);\n\n}\n}\n}\n}\n});\nshadow.dom.create_dom_node \x3d (function shadow$dom$create_dom_node(tag_def,p__46955){\nvar map__46958 \x3d p__46955;\nvar map__46958__$1 \x3d cljs.core.__destructure_map(map__46958);\nvar props \x3d map__46958__$1;\nvar class$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46958__$1,new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996));\nvar tag_props \x3d ({});\nvar vec__46961 \x3d shadow.dom.parse_tag(tag_def);\nvar tag_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46961,(0),null);\nvar tag_id \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46961,(1),null);\nvar tag_classes \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46961,(2),null);\nif(cljs.core.truth_(tag_id)){\n(tag_props[\x22id\x22] \x3d tag_id);\n} else {\n}\n\nif(cljs.core.truth_(tag_classes)){\n(tag_props[\x22class\x22] \x3d shadow.dom.merge_class_string(class$,tag_classes));\n} else {\n}\n\nvar G__46969 \x3d goog.dom.createDom(tag_name,tag_props);\nshadow.dom.set_attrs(G__46969,cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(props,new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996)));\n\nreturn G__46969;\n});\nshadow.dom.append \x3d (function shadow$dom$append(var_args){\nvar G__46984 \x3d arguments.length;\nswitch (G__46984) {\ncase 1:\nreturn shadow.dom.append.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.append.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.append.cljs$core$IFn$_invoke$arity$1 \x3d (function (node){\nif(cljs.core.truth_(node)){\nvar temp__5753__auto__ \x3d shadow.dom.dom_node(node);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar n \x3d temp__5753__auto__;\ndocument.body.appendChild(n);\n\nreturn n;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}));\n\n(shadow.dom.append.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,node){\nif(cljs.core.truth_(node)){\nvar temp__5753__auto__ \x3d shadow.dom.dom_node(node);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar n \x3d temp__5753__auto__;\nshadow.dom.dom_node(el).appendChild(n);\n\nreturn n;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}));\n\n(shadow.dom.append.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.destructure_node \x3d (function shadow$dom$destructure_node(create_fn,p__47015){\nvar vec__47021 \x3d p__47015;\nvar seq__47022 \x3d cljs.core.seq(vec__47021);\nvar first__47023 \x3d cljs.core.first(seq__47022);\nvar seq__47022__$1 \x3d cljs.core.next(seq__47022);\nvar nn \x3d first__47023;\nvar first__47023__$1 \x3d cljs.core.first(seq__47022__$1);\nvar seq__47022__$2 \x3d cljs.core.next(seq__47022__$1);\nvar np \x3d first__47023__$1;\nvar nc \x3d seq__47022__$2;\nvar node \x3d vec__47021;\nif((nn instanceof cljs.core.Keyword)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid dom node\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22node\x22,\x22node\x22,581201198),node], null));\n}\n\nif((((np \x3d\x3d null)) \x26\x26 ((nc \x3d\x3d null)))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(function (){var G__47031 \x3d nn;\nvar G__47032 \x3d cljs.core.PersistentArrayMap.EMPTY;\nreturn (create_fn.cljs$core$IFn$_invoke$arity$2 ? create_fn.cljs$core$IFn$_invoke$arity$2(G__47031,G__47032) : create_fn.call(null,G__47031,G__47032));\n})(),cljs.core.List.EMPTY], null);\n} else {\nif(cljs.core.map_QMARK_(np)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(create_fn.cljs$core$IFn$_invoke$arity$2 ? create_fn.cljs$core$IFn$_invoke$arity$2(nn,np) : create_fn.call(null,nn,np)),nc], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(function (){var G__47034 \x3d nn;\nvar G__47035 \x3d cljs.core.PersistentArrayMap.EMPTY;\nreturn (create_fn.cljs$core$IFn$_invoke$arity$2 ? create_fn.cljs$core$IFn$_invoke$arity$2(G__47034,G__47035) : create_fn.call(null,G__47034,G__47035));\n})(),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(nc,np)], null);\n\n}\n}\n});\nshadow.dom.make_dom_node \x3d (function shadow$dom$make_dom_node(structure){\nvar vec__47044 \x3d shadow.dom.destructure_node(shadow.dom.create_dom_node,structure);\nvar node \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47044,(0),null);\nvar node_children \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47044,(1),null);\nvar seq__47049_48630 \x3d cljs.core.seq(node_children);\nvar chunk__47050_48631 \x3d null;\nvar count__47051_48632 \x3d (0);\nvar i__47052_48633 \x3d (0);\nwhile(true){\nif((i__47052_48633 \x3c count__47051_48632)){\nvar child_struct_48634 \x3d chunk__47050_48631.cljs$core$IIndexed$_nth$arity$2(null,i__47052_48633);\nvar children_48635 \x3d shadow.dom.dom_node(child_struct_48634);\nif(cljs.core.seq_QMARK_(children_48635)){\nvar seq__47169_48636 \x3d cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(shadow.dom.dom_node,children_48635));\nvar chunk__47171_48637 \x3d null;\nvar count__47172_48638 \x3d (0);\nvar i__47173_48639 \x3d (0);\nwhile(true){\nif((i__47173_48639 \x3c count__47172_48638)){\nvar child_48641 \x3d chunk__47171_48637.cljs$core$IIndexed$_nth$arity$2(null,i__47173_48639);\nif(cljs.core.truth_(child_48641)){\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(node,child_48641);\n\n\nvar G__48643 \x3d seq__47169_48636;\nvar G__48644 \x3d chunk__47171_48637;\nvar G__48645 \x3d count__47172_48638;\nvar G__48646 \x3d (i__47173_48639 + (1));\nseq__47169_48636 \x3d G__48643;\nchunk__47171_48637 \x3d G__48644;\ncount__47172_48638 \x3d G__48645;\ni__47173_48639 \x3d G__48646;\ncontinue;\n} else {\nvar G__48647 \x3d seq__47169_48636;\nvar G__48648 \x3d chunk__47171_48637;\nvar G__48649 \x3d count__47172_48638;\nvar G__48650 \x3d (i__47173_48639 + (1));\nseq__47169_48636 \x3d G__48647;\nchunk__47171_48637 \x3d G__48648;\ncount__47172_48638 \x3d G__48649;\ni__47173_48639 \x3d G__48650;\ncontinue;\n}\n} else {\nvar temp__5753__auto___48652 \x3d cljs.core.seq(seq__47169_48636);\nif(temp__5753__auto___48652){\nvar seq__47169_48654__$1 \x3d temp__5753__auto___48652;\nif(cljs.core.chunked_seq_QMARK_(seq__47169_48654__$1)){\nvar c__4591__auto___48655 \x3d cljs.core.chunk_first(seq__47169_48654__$1);\nvar G__48656 \x3d cljs.core.chunk_rest(seq__47169_48654__$1);\nvar G__48657 \x3d c__4591__auto___48655;\nvar G__48658 \x3d cljs.core.count(c__4591__auto___48655);\nvar G__48659 \x3d (0);\nseq__47169_48636 \x3d G__48656;\nchunk__47171_48637 \x3d G__48657;\ncount__47172_48638 \x3d G__48658;\ni__47173_48639 \x3d G__48659;\ncontinue;\n} else {\nvar child_48661 \x3d cljs.core.first(seq__47169_48654__$1);\nif(cljs.core.truth_(child_48661)){\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(node,child_48661);\n\n\nvar G__48662 \x3d cljs.core.next(seq__47169_48654__$1);\nvar G__48663 \x3d null;\nvar G__48664 \x3d (0);\nvar G__48665 \x3d (0);\nseq__47169_48636 \x3d G__48662;\nchunk__47171_48637 \x3d G__48663;\ncount__47172_48638 \x3d G__48664;\ni__47173_48639 \x3d G__48665;\ncontinue;\n} else {\nvar G__48668 \x3d cljs.core.next(seq__47169_48654__$1);\nvar G__48669 \x3d null;\nvar G__48670 \x3d (0);\nvar G__48671 \x3d (0);\nseq__47169_48636 \x3d G__48668;\nchunk__47171_48637 \x3d G__48669;\ncount__47172_48638 \x3d G__48670;\ni__47173_48639 \x3d G__48671;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n} else {\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(node,children_48635);\n}\n\n\nvar G__48674 \x3d seq__47049_48630;\nvar G__48675 \x3d chunk__47050_48631;\nvar G__48676 \x3d count__47051_48632;\nvar G__48677 \x3d (i__47052_48633 + (1));\nseq__47049_48630 \x3d G__48674;\nchunk__47050_48631 \x3d G__48675;\ncount__47051_48632 \x3d G__48676;\ni__47052_48633 \x3d G__48677;\ncontinue;\n} else {\nvar temp__5753__auto___48678 \x3d cljs.core.seq(seq__47049_48630);\nif(temp__5753__auto___48678){\nvar seq__47049_48679__$1 \x3d temp__5753__auto___48678;\nif(cljs.core.chunked_seq_QMARK_(seq__47049_48679__$1)){\nvar c__4591__auto___48680 \x3d cljs.core.chunk_first(seq__47049_48679__$1);\nvar G__48681 \x3d cljs.core.chunk_rest(seq__47049_48679__$1);\nvar G__48682 \x3d c__4591__auto___48680;\nvar G__48683 \x3d cljs.core.count(c__4591__auto___48680);\nvar G__48684 \x3d (0);\nseq__47049_48630 \x3d G__48681;\nchunk__47050_48631 \x3d G__48682;\ncount__47051_48632 \x3d G__48683;\ni__47052_48633 \x3d G__48684;\ncontinue;\n} else {\nvar child_struct_48687 \x3d cljs.core.first(seq__47049_48679__$1);\nvar children_48688 \x3d shadow.dom.dom_node(child_struct_48687);\nif(cljs.core.seq_QMARK_(children_48688)){\nvar seq__47263_48690 \x3d cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(shadow.dom.dom_node,children_48688));\nvar chunk__47265_48691 \x3d null;\nvar count__47266_48692 \x3d (0);\nvar i__47267_48693 \x3d (0);\nwhile(true){\nif((i__47267_48693 \x3c count__47266_48692)){\nvar child_48694 \x3d chunk__47265_48691.cljs$core$IIndexed$_nth$arity$2(null,i__47267_48693);\nif(cljs.core.truth_(child_48694)){\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(node,child_48694);\n\n\nvar G__48695 \x3d seq__47263_48690;\nvar G__48696 \x3d chunk__47265_48691;\nvar G__48697 \x3d count__47266_48692;\nvar G__48698 \x3d (i__47267_48693 + (1));\nseq__47263_48690 \x3d G__48695;\nchunk__47265_48691 \x3d G__48696;\ncount__47266_48692 \x3d G__48697;\ni__47267_48693 \x3d G__48698;\ncontinue;\n} else {\nvar G__48699 \x3d seq__47263_48690;\nvar G__48700 \x3d chunk__47265_48691;\nvar G__48701 \x3d count__47266_48692;\nvar G__48702 \x3d (i__47267_48693 + (1));\nseq__47263_48690 \x3d G__48699;\nchunk__47265_48691 \x3d G__48700;\ncount__47266_48692 \x3d G__48701;\ni__47267_48693 \x3d G__48702;\ncontinue;\n}\n} else {\nvar temp__5753__auto___48703__$1 \x3d cljs.core.seq(seq__47263_48690);\nif(temp__5753__auto___48703__$1){\nvar seq__47263_48704__$1 \x3d temp__5753__auto___48703__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__47263_48704__$1)){\nvar c__4591__auto___48706 \x3d cljs.core.chunk_first(seq__47263_48704__$1);\nvar G__48707 \x3d cljs.core.chunk_rest(seq__47263_48704__$1);\nvar G__48708 \x3d c__4591__auto___48706;\nvar G__48709 \x3d cljs.core.count(c__4591__auto___48706);\nvar G__48710 \x3d (0);\nseq__47263_48690 \x3d G__48707;\nchunk__47265_48691 \x3d G__48708;\ncount__47266_48692 \x3d G__48709;\ni__47267_48693 \x3d G__48710;\ncontinue;\n} else {\nvar child_48713 \x3d cljs.core.first(seq__47263_48704__$1);\nif(cljs.core.truth_(child_48713)){\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(node,child_48713);\n\n\nvar G__48715 \x3d cljs.core.next(seq__47263_48704__$1);\nvar G__48716 \x3d null;\nvar G__48717 \x3d (0);\nvar G__48718 \x3d (0);\nseq__47263_48690 \x3d G__48715;\nchunk__47265_48691 \x3d G__48716;\ncount__47266_48692 \x3d G__48717;\ni__47267_48693 \x3d G__48718;\ncontinue;\n} else {\nvar G__48725 \x3d cljs.core.next(seq__47263_48704__$1);\nvar G__48726 \x3d null;\nvar G__48727 \x3d (0);\nvar G__48728 \x3d (0);\nseq__47263_48690 \x3d G__48725;\nchunk__47265_48691 \x3d G__48726;\ncount__47266_48692 \x3d G__48727;\ni__47267_48693 \x3d G__48728;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n} else {\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(node,children_48688);\n}\n\n\nvar G__48729 \x3d cljs.core.next(seq__47049_48679__$1);\nvar G__48730 \x3d null;\nvar G__48731 \x3d (0);\nvar G__48732 \x3d (0);\nseq__47049_48630 \x3d G__48729;\nchunk__47050_48631 \x3d G__48730;\ncount__47051_48632 \x3d G__48731;\ni__47052_48633 \x3d G__48732;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn node;\n});\n(cljs.core.Keyword.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Keyword.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn shadow.dom.make_dom_node(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$__$1], null));\n}));\n\n(cljs.core.PersistentVector.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentVector.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn shadow.dom.make_dom_node(this$__$1);\n}));\n\n(cljs.core.LazySeq.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.LazySeq.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2(shadow.dom._to_dom,this$__$1);\n}));\nif(cljs.core.truth_(((typeof HTMLElement) !\x3d \x27undefined\x27))){\n(HTMLElement.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(HTMLElement.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn this$__$1;\n}));\n} else {\n}\nif(cljs.core.truth_(((typeof DocumentFragment) !\x3d \x27undefined\x27))){\n(DocumentFragment.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(DocumentFragment.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn this$__$1;\n}));\n} else {\n}\n/**\n * clear node children\n */\nshadow.dom.reset \x3d (function shadow$dom$reset(node){\nreturn goog.dom.removeChildren(shadow.dom.dom_node(node));\n});\nshadow.dom.remove \x3d (function shadow$dom$remove(node){\nif((((!((node \x3d\x3d null))))?(((((node.cljs$lang$protocol_mask$partition0$ \x26 (8388608))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d node.cljs$core$ISeqable$))))?true:false):false)){\nvar seq__47397 \x3d cljs.core.seq(node);\nvar chunk__47398 \x3d null;\nvar count__47400 \x3d (0);\nvar i__47401 \x3d (0);\nwhile(true){\nif((i__47401 \x3c count__47400)){\nvar n \x3d chunk__47398.cljs$core$IIndexed$_nth$arity$2(null,i__47401);\n(shadow.dom.remove.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.remove.cljs$core$IFn$_invoke$arity$1(n) : shadow.dom.remove.call(null,n));\n\n\nvar G__48740 \x3d seq__47397;\nvar G__48741 \x3d chunk__47398;\nvar G__48742 \x3d count__47400;\nvar G__48743 \x3d (i__47401 + (1));\nseq__47397 \x3d G__48740;\nchunk__47398 \x3d G__48741;\ncount__47400 \x3d G__48742;\ni__47401 \x3d G__48743;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__47397);\nif(temp__5753__auto__){\nvar seq__47397__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__47397__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__47397__$1);\nvar G__48744 \x3d cljs.core.chunk_rest(seq__47397__$1);\nvar G__48745 \x3d c__4591__auto__;\nvar G__48746 \x3d cljs.core.count(c__4591__auto__);\nvar G__48747 \x3d (0);\nseq__47397 \x3d G__48744;\nchunk__47398 \x3d G__48745;\ncount__47400 \x3d G__48746;\ni__47401 \x3d G__48747;\ncontinue;\n} else {\nvar n \x3d cljs.core.first(seq__47397__$1);\n(shadow.dom.remove.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.remove.cljs$core$IFn$_invoke$arity$1(n) : shadow.dom.remove.call(null,n));\n\n\nvar G__48749 \x3d cljs.core.next(seq__47397__$1);\nvar G__48750 \x3d null;\nvar G__48751 \x3d (0);\nvar G__48752 \x3d (0);\nseq__47397 \x3d G__48749;\nchunk__47398 \x3d G__48750;\ncount__47400 \x3d G__48751;\ni__47401 \x3d G__48752;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn goog.dom.removeNode(node);\n}\n});\nshadow.dom.replace_node \x3d (function shadow$dom$replace_node(old,new$){\nreturn goog.dom.replaceNode(shadow.dom.dom_node(new$),shadow.dom.dom_node(old));\n});\nshadow.dom.text \x3d (function shadow$dom$text(var_args){\nvar G__47452 \x3d arguments.length;\nswitch (G__47452) {\ncase 2:\nreturn shadow.dom.text.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 1:\nreturn shadow.dom.text.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.text.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,new_text){\nreturn (shadow.dom.dom_node(el).innerText \x3d new_text);\n}));\n\n(shadow.dom.text.cljs$core$IFn$_invoke$arity$1 \x3d (function (el){\nreturn shadow.dom.dom_node(el).innerText;\n}));\n\n(shadow.dom.text.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.check \x3d (function shadow$dom$check(var_args){\nvar G__47467 \x3d arguments.length;\nswitch (G__47467) {\ncase 1:\nreturn shadow.dom.check.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.check.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.check.cljs$core$IFn$_invoke$arity$1 \x3d (function (el){\nreturn shadow.dom.check.cljs$core$IFn$_invoke$arity$2(el,true);\n}));\n\n(shadow.dom.check.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,checked){\nreturn (shadow.dom.dom_node(el).checked \x3d checked);\n}));\n\n(shadow.dom.check.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.checked_QMARK_ \x3d (function shadow$dom$checked_QMARK_(el){\nreturn shadow.dom.dom_node(el).checked;\n});\nshadow.dom.form_elements \x3d (function shadow$dom$form_elements(el){\nreturn (new shadow.dom.NativeColl(shadow.dom.dom_node(el).elements));\n});\nshadow.dom.children \x3d (function shadow$dom$children(el){\nreturn (new shadow.dom.NativeColl(shadow.dom.dom_node(el).children));\n});\nshadow.dom.child_nodes \x3d (function shadow$dom$child_nodes(el){\nreturn (new shadow.dom.NativeColl(shadow.dom.dom_node(el).childNodes));\n});\nshadow.dom.attr \x3d (function shadow$dom$attr(var_args){\nvar G__47538 \x3d arguments.length;\nswitch (G__47538) {\ncase 2:\nreturn shadow.dom.attr.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.dom.attr.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.attr.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,key){\nreturn shadow.dom.dom_node(el).getAttribute(cljs.core.name(key));\n}));\n\n(shadow.dom.attr.cljs$core$IFn$_invoke$arity$3 \x3d (function (el,key,default$){\nvar or__4160__auto__ \x3d shadow.dom.dom_node(el).getAttribute(cljs.core.name(key));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn default$;\n}\n}));\n\n(shadow.dom.attr.cljs$lang$maxFixedArity \x3d 3);\n\nshadow.dom.del_attr \x3d (function shadow$dom$del_attr(el,key){\nreturn shadow.dom.dom_node(el).removeAttribute(cljs.core.name(key));\n});\nshadow.dom.data \x3d (function shadow$dom$data(el,key){\nreturn shadow.dom.dom_node(el).getAttribute([\x22data-\x22,cljs.core.name(key)].join(\x27\x27));\n});\nshadow.dom.set_data \x3d (function shadow$dom$set_data(el,key,value){\nreturn shadow.dom.dom_node(el).setAttribute([\x22data-\x22,cljs.core.name(key)].join(\x27\x27),cljs.core.str.cljs$core$IFn$_invoke$arity$1(value));\n});\nshadow.dom.set_html \x3d (function shadow$dom$set_html(node,text){\nreturn (shadow.dom.dom_node(node).innerHTML \x3d text);\n});\nshadow.dom.get_html \x3d (function shadow$dom$get_html(node){\nreturn shadow.dom.dom_node(node).innerHTML;\n});\nshadow.dom.fragment \x3d (function shadow$dom$fragment(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48785 \x3d arguments.length;\nvar i__4772__auto___48786 \x3d (0);\nwhile(true){\nif((i__4772__auto___48786 \x3c len__4771__auto___48785)){\nargs__4777__auto__.push((arguments[i__4772__auto___48786]));\n\nvar G__48791 \x3d (i__4772__auto___48786 + (1));\ni__4772__auto___48786 \x3d G__48791;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn shadow.dom.fragment.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(shadow.dom.fragment.cljs$core$IFn$_invoke$arity$variadic \x3d (function (nodes){\nvar fragment \x3d document.createDocumentFragment();\nvar seq__47617_48799 \x3d cljs.core.seq(nodes);\nvar chunk__47619_48800 \x3d null;\nvar count__47620_48801 \x3d (0);\nvar i__47621_48802 \x3d (0);\nwhile(true){\nif((i__47621_48802 \x3c count__47620_48801)){\nvar node_48806 \x3d chunk__47619_48800.cljs$core$IIndexed$_nth$arity$2(null,i__47621_48802);\nfragment.appendChild(shadow.dom._to_dom(node_48806));\n\n\nvar G__48807 \x3d seq__47617_48799;\nvar G__48808 \x3d chunk__47619_48800;\nvar G__48809 \x3d count__47620_48801;\nvar G__48810 \x3d (i__47621_48802 + (1));\nseq__47617_48799 \x3d G__48807;\nchunk__47619_48800 \x3d G__48808;\ncount__47620_48801 \x3d G__48809;\ni__47621_48802 \x3d G__48810;\ncontinue;\n} else {\nvar temp__5753__auto___48816 \x3d cljs.core.seq(seq__47617_48799);\nif(temp__5753__auto___48816){\nvar seq__47617_48817__$1 \x3d temp__5753__auto___48816;\nif(cljs.core.chunked_seq_QMARK_(seq__47617_48817__$1)){\nvar c__4591__auto___48822 \x3d cljs.core.chunk_first(seq__47617_48817__$1);\nvar G__48823 \x3d cljs.core.chunk_rest(seq__47617_48817__$1);\nvar G__48824 \x3d c__4591__auto___48822;\nvar G__48825 \x3d cljs.core.count(c__4591__auto___48822);\nvar G__48826 \x3d (0);\nseq__47617_48799 \x3d G__48823;\nchunk__47619_48800 \x3d G__48824;\ncount__47620_48801 \x3d G__48825;\ni__47621_48802 \x3d G__48826;\ncontinue;\n} else {\nvar node_48829 \x3d cljs.core.first(seq__47617_48817__$1);\nfragment.appendChild(shadow.dom._to_dom(node_48829));\n\n\nvar G__48835 \x3d cljs.core.next(seq__47617_48817__$1);\nvar G__48836 \x3d null;\nvar G__48837 \x3d (0);\nvar G__48838 \x3d (0);\nseq__47617_48799 \x3d G__48835;\nchunk__47619_48800 \x3d G__48836;\ncount__47620_48801 \x3d G__48837;\ni__47621_48802 \x3d G__48838;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn (new shadow.dom.NativeColl(fragment));\n}));\n\n(shadow.dom.fragment.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(shadow.dom.fragment.cljs$lang$applyTo \x3d (function (seq47604){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq47604));\n}));\n\n/**\n * given a html string, eval all \x3cscript\x3e tags and return the html without the scripts\n * don\x27t do this for everything, only content you trust.\n */\nshadow.dom.eval_scripts \x3d (function shadow$dom$eval_scripts(s){\nvar scripts \x3d cljs.core.re_seq(/\x3cscript[^\x3e]*?\x3e(.+?)\x3c\\/script\x3e/,s);\nvar seq__47657_48856 \x3d cljs.core.seq(scripts);\nvar chunk__47658_48857 \x3d null;\nvar count__47659_48858 \x3d (0);\nvar i__47660_48859 \x3d (0);\nwhile(true){\nif((i__47660_48859 \x3c count__47659_48858)){\nvar vec__47680_48864 \x3d chunk__47658_48857.cljs$core$IIndexed$_nth$arity$2(null,i__47660_48859);\nvar script_tag_48865 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47680_48864,(0),null);\nvar script_body_48866 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47680_48864,(1),null);\neval(script_body_48866);\n\n\nvar G__48871 \x3d seq__47657_48856;\nvar G__48872 \x3d chunk__47658_48857;\nvar G__48873 \x3d count__47659_48858;\nvar G__48874 \x3d (i__47660_48859 + (1));\nseq__47657_48856 \x3d G__48871;\nchunk__47658_48857 \x3d G__48872;\ncount__47659_48858 \x3d G__48873;\ni__47660_48859 \x3d G__48874;\ncontinue;\n} else {\nvar temp__5753__auto___48876 \x3d cljs.core.seq(seq__47657_48856);\nif(temp__5753__auto___48876){\nvar seq__47657_48877__$1 \x3d temp__5753__auto___48876;\nif(cljs.core.chunked_seq_QMARK_(seq__47657_48877__$1)){\nvar c__4591__auto___48879 \x3d cljs.core.chunk_first(seq__47657_48877__$1);\nvar G__48880 \x3d cljs.core.chunk_rest(seq__47657_48877__$1);\nvar G__48881 \x3d c__4591__auto___48879;\nvar G__48882 \x3d cljs.core.count(c__4591__auto___48879);\nvar G__48883 \x3d (0);\nseq__47657_48856 \x3d G__48880;\nchunk__47658_48857 \x3d G__48881;\ncount__47659_48858 \x3d G__48882;\ni__47660_48859 \x3d G__48883;\ncontinue;\n} else {\nvar vec__47688_48888 \x3d cljs.core.first(seq__47657_48877__$1);\nvar script_tag_48889 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47688_48888,(0),null);\nvar script_body_48891 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47688_48888,(1),null);\neval(script_body_48891);\n\n\nvar G__48895 \x3d cljs.core.next(seq__47657_48877__$1);\nvar G__48896 \x3d null;\nvar G__48897 \x3d (0);\nvar G__48898 \x3d (0);\nseq__47657_48856 \x3d G__48895;\nchunk__47658_48857 \x3d G__48896;\ncount__47659_48858 \x3d G__48897;\ni__47660_48859 \x3d G__48898;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (s__$1,p__47695){\nvar vec__47696 \x3d p__47695;\nvar script_tag \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47696,(0),null);\nvar script_body \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47696,(1),null);\nreturn clojure.string.replace(s__$1,script_tag,\x22\x22);\n}),s,scripts);\n});\nshadow.dom.str__GT_fragment \x3d (function shadow$dom$str__GT_fragment(s){\nvar el \x3d document.createElement(\x22div\x22);\n(el.innerHTML \x3d s);\n\nreturn (new shadow.dom.NativeColl(goog.dom.childrenToNode_(document,el)));\n});\nshadow.dom.node_name \x3d (function shadow$dom$node_name(el){\nreturn shadow.dom.dom_node(el).nodeName;\n});\nshadow.dom.ancestor_by_class \x3d (function shadow$dom$ancestor_by_class(el,cls){\nreturn goog.dom.getAncestorByClass(shadow.dom.dom_node(el),cls);\n});\nshadow.dom.ancestor_by_tag \x3d (function shadow$dom$ancestor_by_tag(var_args){\nvar G__47734 \x3d arguments.length;\nswitch (G__47734) {\ncase 2:\nreturn shadow.dom.ancestor_by_tag.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.dom.ancestor_by_tag.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.ancestor_by_tag.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,tag){\nreturn goog.dom.getAncestorByTagNameAndClass(shadow.dom.dom_node(el),cljs.core.name(tag));\n}));\n\n(shadow.dom.ancestor_by_tag.cljs$core$IFn$_invoke$arity$3 \x3d (function (el,tag,cls){\nreturn goog.dom.getAncestorByTagNameAndClass(shadow.dom.dom_node(el),cljs.core.name(tag),cljs.core.name(cls));\n}));\n\n(shadow.dom.ancestor_by_tag.cljs$lang$maxFixedArity \x3d 3);\n\nshadow.dom.get_value \x3d (function shadow$dom$get_value(dom){\nreturn goog.dom.forms.getValue(shadow.dom.dom_node(dom));\n});\nshadow.dom.set_value \x3d (function shadow$dom$set_value(dom,value){\nreturn goog.dom.forms.setValue(shadow.dom.dom_node(dom),value);\n});\nshadow.dom.px \x3d (function shadow$dom$px(value){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1((value | (0))),\x22px\x22].join(\x27\x27);\n});\nshadow.dom.pct \x3d (function shadow$dom$pct(value){\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(value),\x22%\x22].join(\x27\x27);\n});\nshadow.dom.remove_style_STAR_ \x3d (function shadow$dom$remove_style_STAR_(el,style){\nreturn el.style.removeProperty(cljs.core.name(style));\n});\nshadow.dom.remove_style \x3d (function shadow$dom$remove_style(el,style){\nvar el__$1 \x3d shadow.dom.dom_node(el);\nreturn shadow.dom.remove_style_STAR_(el__$1,style);\n});\nshadow.dom.remove_styles \x3d (function shadow$dom$remove_styles(el,style_keys){\nvar el__$1 \x3d shadow.dom.dom_node(el);\nvar seq__47775 \x3d cljs.core.seq(style_keys);\nvar chunk__47776 \x3d null;\nvar count__47777 \x3d (0);\nvar i__47778 \x3d (0);\nwhile(true){\nif((i__47778 \x3c count__47777)){\nvar it \x3d chunk__47776.cljs$core$IIndexed$_nth$arity$2(null,i__47778);\nshadow.dom.remove_style_STAR_(el__$1,it);\n\n\nvar G__48939 \x3d seq__47775;\nvar G__48940 \x3d chunk__47776;\nvar G__48941 \x3d count__47777;\nvar G__48942 \x3d (i__47778 + (1));\nseq__47775 \x3d G__48939;\nchunk__47776 \x3d G__48940;\ncount__47777 \x3d G__48941;\ni__47778 \x3d G__48942;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__47775);\nif(temp__5753__auto__){\nvar seq__47775__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__47775__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__47775__$1);\nvar G__48948 \x3d cljs.core.chunk_rest(seq__47775__$1);\nvar G__48949 \x3d c__4591__auto__;\nvar G__48950 \x3d cljs.core.count(c__4591__auto__);\nvar G__48951 \x3d (0);\nseq__47775 \x3d G__48948;\nchunk__47776 \x3d G__48949;\ncount__47777 \x3d G__48950;\ni__47778 \x3d G__48951;\ncontinue;\n} else {\nvar it \x3d cljs.core.first(seq__47775__$1);\nshadow.dom.remove_style_STAR_(el__$1,it);\n\n\nvar G__48954 \x3d cljs.core.next(seq__47775__$1);\nvar G__48955 \x3d null;\nvar G__48956 \x3d (0);\nvar G__48957 \x3d (0);\nseq__47775 \x3d G__48954;\nchunk__47776 \x3d G__48955;\ncount__47777 \x3d G__48956;\ni__47778 \x3d G__48957;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nshadow.dom.Coordinate \x3d (function (x,y,__meta,__extmap,__hash){\nthis.x \x3d x;\nthis.y \x3d y;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(shadow.dom.Coordinate.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k47794,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__47807 \x3d k47794;\nvar G__47807__$1 \x3d (((G__47807 instanceof cljs.core.Keyword))?G__47807.fqn:null);\nswitch (G__47807__$1) {\ncase \x22x\x22:\nreturn self__.x;\n\nbreak;\ncase \x22y\x22:\nreturn self__.y;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k47794,else__4418__auto__);\n\n}\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__47826){\nvar vec__47828 \x3d p__47826;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47828,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47828,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#shadow.dom.Coordinate{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),self__.x],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776),self__.y],null))], null),self__.__extmap));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__47793){\nvar self__ \x3d this;\nvar G__47793__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__47793__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new shadow.dom.Coordinate(self__.x,self__.y,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (2 + cljs.core.count(self__.__extmap));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (145542109 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this47795,other47796){\nvar self__ \x3d this;\nvar this47795__$1 \x3d this;\nreturn (((!((other47796 \x3d\x3d null)))) \x26\x26 ((this47795__$1.constructor \x3d\x3d\x3d other47796.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this47795__$1.x,other47796.x)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this47795__$1.y,other47796.y)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this47795__$1.__extmap,other47796.__extmap)));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776),null,new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new shadow.dom.Coordinate(self__.x,self__.y,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__47793){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__47884 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__47885 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__47884.cljs$core$IFn$_invoke$arity$2 ? pred__47884.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),expr__47885) : pred__47884.call(null,new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),expr__47885)))){\nreturn (new shadow.dom.Coordinate(G__47793,self__.y,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__47884.cljs$core$IFn$_invoke$arity$2 ? pred__47884.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776),expr__47885) : pred__47884.call(null,new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776),expr__47885)))){\nreturn (new shadow.dom.Coordinate(self__.x,G__47793,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new shadow.dom.Coordinate(self__.x,self__.y,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__47793),null));\n}\n}\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),self__.x,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776),self__.y,null))], null),self__.__extmap));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__47793){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new shadow.dom.Coordinate(self__.x,self__.y,G__47793,self__.__extmap,self__.__hash));\n}));\n\n(shadow.dom.Coordinate.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(shadow.dom.Coordinate.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null);\n}));\n\n(shadow.dom.Coordinate.cljs$lang$type \x3d true);\n\n(shadow.dom.Coordinate.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22shadow.dom/Coordinate\x22,null,(1),null));\n}));\n\n(shadow.dom.Coordinate.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22shadow.dom/Coordinate\x22);\n}));\n\n/**\n * Positional factory function for shadow.dom/Coordinate.\n */\nshadow.dom.__GT_Coordinate \x3d (function shadow$dom$__GT_Coordinate(x,y){\nreturn (new shadow.dom.Coordinate(x,y,null,null,null));\n});\n\n/**\n * Factory function for shadow.dom/Coordinate, taking a map of keywords to field values.\n */\nshadow.dom.map__GT_Coordinate \x3d (function shadow$dom$map__GT_Coordinate(G__47797){\nvar extmap__4454__auto__ \x3d (function (){var G__47944 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__47797,new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776)], 0));\nif(cljs.core.record_QMARK_(G__47797)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__47944);\n} else {\nreturn G__47944;\n}\n})();\nreturn (new shadow.dom.Coordinate(new cljs.core.Keyword(null,\x22x\x22,\x22x\x22,2099068185).cljs$core$IFn$_invoke$arity$1(G__47797),new cljs.core.Keyword(null,\x22y\x22,\x22y\x22,-1757859776).cljs$core$IFn$_invoke$arity$1(G__47797),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nshadow.dom.get_position \x3d (function shadow$dom$get_position(el){\nvar pos \x3d goog.style.getPosition(shadow.dom.dom_node(el));\nreturn shadow.dom.__GT_Coordinate(pos.x,pos.y);\n});\nshadow.dom.get_client_position \x3d (function shadow$dom$get_client_position(el){\nvar pos \x3d goog.style.getClientPosition(shadow.dom.dom_node(el));\nreturn shadow.dom.__GT_Coordinate(pos.x,pos.y);\n});\nshadow.dom.get_page_offset \x3d (function shadow$dom$get_page_offset(el){\nvar pos \x3d goog.style.getPageOffset(shadow.dom.dom_node(el));\nreturn shadow.dom.__GT_Coordinate(pos.x,pos.y);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nshadow.dom.Size \x3d (function (w,h,__meta,__extmap,__hash){\nthis.w \x3d w;\nthis.h \x3d h;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(shadow.dom.Size.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(shadow.dom.Size.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k47959,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__47983 \x3d k47959;\nvar G__47983__$1 \x3d (((G__47983 instanceof cljs.core.Keyword))?G__47983.fqn:null);\nswitch (G__47983__$1) {\ncase \x22w\x22:\nreturn self__.w;\n\nbreak;\ncase \x22h\x22:\nreturn self__.h;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k47959,else__4418__auto__);\n\n}\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__47987){\nvar vec__47992 \x3d p__47987;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47992,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47992,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#shadow.dom.Size{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),self__.w],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740),self__.h],null))], null),self__.__extmap));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__47958){\nvar self__ \x3d this;\nvar G__47958__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__47958__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(shadow.dom.Size.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new shadow.dom.Size(self__.w,self__.h,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (2 + cljs.core.count(self__.__extmap));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-1228019642 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this47961,other47962){\nvar self__ \x3d this;\nvar this47961__$1 \x3d this;\nreturn (((!((other47962 \x3d\x3d null)))) \x26\x26 ((this47961__$1.constructor \x3d\x3d\x3d other47962.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this47961__$1.w,other47962.w)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this47961__$1.h,other47962.h)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this47961__$1.__extmap,other47962.__extmap)));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),null,new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new shadow.dom.Size(self__.w,self__.h,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__47958){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__48018 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__48019 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__48018.cljs$core$IFn$_invoke$arity$2 ? pred__48018.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),expr__48019) : pred__48018.call(null,new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),expr__48019)))){\nreturn (new shadow.dom.Size(G__47958,self__.h,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__48018.cljs$core$IFn$_invoke$arity$2 ? pred__48018.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740),expr__48019) : pred__48018.call(null,new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740),expr__48019)))){\nreturn (new shadow.dom.Size(self__.w,G__47958,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new shadow.dom.Size(self__.w,self__.h,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__47958),null));\n}\n}\n}));\n\n(shadow.dom.Size.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),self__.w,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740),self__.h,null))], null),self__.__extmap));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__47958){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new shadow.dom.Size(self__.w,self__.h,G__47958,self__.__extmap,self__.__hash));\n}));\n\n(shadow.dom.Size.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(shadow.dom.Size.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22w\x22,\x22w\x22,1994700528,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null);\n}));\n\n(shadow.dom.Size.cljs$lang$type \x3d true);\n\n(shadow.dom.Size.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22shadow.dom/Size\x22,null,(1),null));\n}));\n\n(shadow.dom.Size.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22shadow.dom/Size\x22);\n}));\n\n/**\n * Positional factory function for shadow.dom/Size.\n */\nshadow.dom.__GT_Size \x3d (function shadow$dom$__GT_Size(w,h){\nreturn (new shadow.dom.Size(w,h,null,null,null));\n});\n\n/**\n * Factory function for shadow.dom/Size, taking a map of keywords to field values.\n */\nshadow.dom.map__GT_Size \x3d (function shadow$dom$map__GT_Size(G__47972){\nvar extmap__4454__auto__ \x3d (function (){var G__48039 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__47972,new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740)], 0));\nif(cljs.core.record_QMARK_(G__47972)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__48039);\n} else {\nreturn G__48039;\n}\n})();\nreturn (new shadow.dom.Size(new cljs.core.Keyword(null,\x22w\x22,\x22w\x22,354169001).cljs$core$IFn$_invoke$arity$1(G__47972),new cljs.core.Keyword(null,\x22h\x22,\x22h\x22,1109658740).cljs$core$IFn$_invoke$arity$1(G__47972),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nshadow.dom.size__GT_clj \x3d (function shadow$dom$size__GT_clj(size){\nreturn (new shadow.dom.Size(size.width,size.height,null,null,null));\n});\nshadow.dom.get_size \x3d (function shadow$dom$get_size(el){\nreturn shadow.dom.size__GT_clj(goog.style.getSize(shadow.dom.dom_node(el)));\n});\nshadow.dom.get_height \x3d (function shadow$dom$get_height(el){\nreturn shadow.dom.get_size(el).h;\n});\nshadow.dom.get_viewport_size \x3d (function shadow$dom$get_viewport_size(){\nreturn shadow.dom.size__GT_clj(goog.dom.getViewportSize());\n});\nshadow.dom.first_child \x3d (function shadow$dom$first_child(el){\nreturn (shadow.dom.dom_node(el).children[(0)]);\n});\nshadow.dom.select_option_values \x3d (function shadow$dom$select_option_values(el){\nvar native$ \x3d shadow.dom.dom_node(el);\nvar opts \x3d (native$[\x22options\x22]);\nvar a__4645__auto__ \x3d opts;\nvar l__4646__auto__ \x3d a__4645__auto__.length;\nvar i \x3d (0);\nvar ret \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nif((i \x3c l__4646__auto__)){\nvar G__49049 \x3d (i + (1));\nvar G__49050 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,(opts[i][\x22value\x22]));\ni \x3d G__49049;\nret \x3d G__49050;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n});\nshadow.dom.build_url \x3d (function shadow$dom$build_url(path,query_params){\nif(cljs.core.empty_QMARK_(query_params)){\nreturn path;\n} else {\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(path),\x22?\x22,clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22\x26\x22,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__48080){\nvar vec__48083 \x3d p__48080;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48083,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48083,(1),null);\nreturn [cljs.core.name(k),\x22\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(encodeURIComponent(cljs.core.str.cljs$core$IFn$_invoke$arity$1(v)))].join(\x27\x27);\n}),query_params))].join(\x27\x27);\n}\n});\nshadow.dom.redirect \x3d (function shadow$dom$redirect(var_args){\nvar G__48123 \x3d arguments.length;\nswitch (G__48123) {\ncase 1:\nreturn shadow.dom.redirect.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.dom.redirect.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.redirect.cljs$core$IFn$_invoke$arity$1 \x3d (function (path){\nreturn shadow.dom.redirect.cljs$core$IFn$_invoke$arity$2(path,cljs.core.PersistentArrayMap.EMPTY);\n}));\n\n(shadow.dom.redirect.cljs$core$IFn$_invoke$arity$2 \x3d (function (path,query_params){\nreturn (document[\x22location\x22][\x22href\x22] \x3d shadow.dom.build_url(path,query_params));\n}));\n\n(shadow.dom.redirect.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.dom.reload_BANG_ \x3d (function shadow$dom$reload_BANG_(){\nreturn (document.location.href \x3d document.location.href);\n});\nshadow.dom.tag_name \x3d (function shadow$dom$tag_name(el){\nvar dom \x3d shadow.dom.dom_node(el);\nreturn dom.tagName;\n});\nshadow.dom.insert_after \x3d (function shadow$dom$insert_after(ref,new$){\nvar new_node \x3d shadow.dom.dom_node(new$);\ngoog.dom.insertSiblingAfter(new_node,shadow.dom.dom_node(ref));\n\nreturn new_node;\n});\nshadow.dom.insert_before \x3d (function shadow$dom$insert_before(ref,new$){\nvar new_node \x3d shadow.dom.dom_node(new$);\ngoog.dom.insertSiblingBefore(new_node,shadow.dom.dom_node(ref));\n\nreturn new_node;\n});\nshadow.dom.insert_first \x3d (function shadow$dom$insert_first(ref,new$){\nvar temp__5751__auto__ \x3d shadow.dom.dom_node(ref).firstChild;\nif(cljs.core.truth_(temp__5751__auto__)){\nvar child \x3d temp__5751__auto__;\nreturn shadow.dom.insert_before(child,new$);\n} else {\nreturn shadow.dom.append.cljs$core$IFn$_invoke$arity$2(ref,new$);\n}\n});\nshadow.dom.index_of \x3d (function shadow$dom$index_of(el){\nvar el__$1 \x3d shadow.dom.dom_node(el);\nvar i \x3d (0);\nwhile(true){\nvar ps \x3d el__$1.previousSibling;\nif((ps \x3d\x3d null)){\nreturn i;\n} else {\nvar G__49061 \x3d ps;\nvar G__49062 \x3d (i + (1));\nel__$1 \x3d G__49061;\ni \x3d G__49062;\ncontinue;\n}\nbreak;\n}\n});\nshadow.dom.get_parent \x3d (function shadow$dom$get_parent(el){\nreturn goog.dom.getParentElement(shadow.dom.dom_node(el));\n});\nshadow.dom.parents \x3d (function shadow$dom$parents(el){\nvar parent \x3d shadow.dom.get_parent(el);\nif(cljs.core.truth_(parent)){\nreturn cljs.core.cons(parent,(new cljs.core.LazySeq(null,(function (){\nreturn (shadow.dom.parents.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.parents.cljs$core$IFn$_invoke$arity$1(parent) : shadow.dom.parents.call(null,parent));\n}),null,null)));\n} else {\nreturn null;\n}\n});\nshadow.dom.matches \x3d (function shadow$dom$matches(el,sel){\nreturn shadow.dom.dom_node(el).matches(sel);\n});\nshadow.dom.get_next_sibling \x3d (function shadow$dom$get_next_sibling(el){\nreturn goog.dom.getNextElementSibling(shadow.dom.dom_node(el));\n});\nshadow.dom.get_previous_sibling \x3d (function shadow$dom$get_previous_sibling(el){\nreturn goog.dom.getPreviousElementSibling(shadow.dom.dom_node(el));\n});\nshadow.dom.xmlns \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 2, [\x22svg\x22,\x22http://www.w3.org/2000/svg\x22,\x22xlink\x22,\x22http://www.w3.org/1999/xlink\x22], null));\nshadow.dom.create_svg_node \x3d (function shadow$dom$create_svg_node(tag_def,props){\nvar vec__48192 \x3d shadow.dom.parse_tag(tag_def);\nvar tag_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48192,(0),null);\nvar tag_id \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48192,(1),null);\nvar tag_classes \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48192,(2),null);\nvar el \x3d document.createElementNS(\x22http://www.w3.org/2000/svg\x22,tag_name);\nif(cljs.core.truth_(tag_id)){\nel.setAttribute(\x22id\x22,tag_id);\n} else {\n}\n\nif(cljs.core.truth_(tag_classes)){\nel.setAttribute(\x22class\x22,shadow.dom.merge_class_string(new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996).cljs$core$IFn$_invoke$arity$1(props),tag_classes));\n} else {\n}\n\nvar seq__48199_49069 \x3d cljs.core.seq(props);\nvar chunk__48200_49070 \x3d null;\nvar count__48201_49071 \x3d (0);\nvar i__48202_49072 \x3d (0);\nwhile(true){\nif((i__48202_49072 \x3c count__48201_49071)){\nvar vec__48219_49073 \x3d chunk__48200_49070.cljs$core$IIndexed$_nth$arity$2(null,i__48202_49072);\nvar k_49074 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48219_49073,(0),null);\nvar v_49075 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48219_49073,(1),null);\nel.setAttributeNS((function (){var temp__5753__auto__ \x3d cljs.core.namespace(k_49074);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ns \x3d temp__5753__auto__;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.dom.xmlns),ns);\n} else {\nreturn null;\n}\n})(),cljs.core.name(k_49074),v_49075);\n\n\nvar G__49079 \x3d seq__48199_49069;\nvar G__49080 \x3d chunk__48200_49070;\nvar G__49081 \x3d count__48201_49071;\nvar G__49082 \x3d (i__48202_49072 + (1));\nseq__48199_49069 \x3d G__49079;\nchunk__48200_49070 \x3d G__49080;\ncount__48201_49071 \x3d G__49081;\ni__48202_49072 \x3d G__49082;\ncontinue;\n} else {\nvar temp__5753__auto___49083 \x3d cljs.core.seq(seq__48199_49069);\nif(temp__5753__auto___49083){\nvar seq__48199_49084__$1 \x3d temp__5753__auto___49083;\nif(cljs.core.chunked_seq_QMARK_(seq__48199_49084__$1)){\nvar c__4591__auto___49085 \x3d cljs.core.chunk_first(seq__48199_49084__$1);\nvar G__49086 \x3d cljs.core.chunk_rest(seq__48199_49084__$1);\nvar G__49087 \x3d c__4591__auto___49085;\nvar G__49088 \x3d cljs.core.count(c__4591__auto___49085);\nvar G__49089 \x3d (0);\nseq__48199_49069 \x3d G__49086;\nchunk__48200_49070 \x3d G__49087;\ncount__48201_49071 \x3d G__49088;\ni__48202_49072 \x3d G__49089;\ncontinue;\n} else {\nvar vec__48223_49091 \x3d cljs.core.first(seq__48199_49084__$1);\nvar k_49092 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48223_49091,(0),null);\nvar v_49093 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48223_49091,(1),null);\nel.setAttributeNS((function (){var temp__5753__auto____$1 \x3d cljs.core.namespace(k_49092);\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar ns \x3d temp__5753__auto____$1;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.dom.xmlns),ns);\n} else {\nreturn null;\n}\n})(),cljs.core.name(k_49092),v_49093);\n\n\nvar G__49097 \x3d cljs.core.next(seq__48199_49084__$1);\nvar G__49098 \x3d null;\nvar G__49099 \x3d (0);\nvar G__49100 \x3d (0);\nseq__48199_49069 \x3d G__49097;\nchunk__48200_49070 \x3d G__49098;\ncount__48201_49071 \x3d G__49099;\ni__48202_49072 \x3d G__49100;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn el;\n});\nshadow.dom.svg_node \x3d (function shadow$dom$svg_node(el){\nif((el \x3d\x3d null)){\nreturn null;\n} else {\nif((((!((el \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d el.shadow$dom$SVGElement$))))?true:false):false)){\nreturn el.shadow$dom$SVGElement$_to_svg$arity$1(null);\n} else {\nreturn el;\n\n}\n}\n});\nshadow.dom.make_svg_node \x3d (function shadow$dom$make_svg_node(structure){\nvar vec__48234 \x3d shadow.dom.destructure_node(shadow.dom.create_svg_node,structure);\nvar node \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48234,(0),null);\nvar node_children \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48234,(1),null);\nvar seq__48237_49102 \x3d cljs.core.seq(node_children);\nvar chunk__48239_49103 \x3d null;\nvar count__48240_49104 \x3d (0);\nvar i__48241_49105 \x3d (0);\nwhile(true){\nif((i__48241_49105 \x3c count__48240_49104)){\nvar child_struct_49107 \x3d chunk__48239_49103.cljs$core$IIndexed$_nth$arity$2(null,i__48241_49105);\nif((!((child_struct_49107 \x3d\x3d null)))){\nif(typeof child_struct_49107 \x3d\x3d\x3d \x27string\x27){\nvar text_49108 \x3d (node[\x22textContent\x22]);\n(node[\x22textContent\x22] \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1(text_49108),child_struct_49107].join(\x27\x27));\n} else {\nvar children_49109 \x3d shadow.dom.svg_node(child_struct_49107);\nif(cljs.core.seq_QMARK_(children_49109)){\nvar seq__48302_49112 \x3d cljs.core.seq(children_49109);\nvar chunk__48304_49113 \x3d null;\nvar count__48305_49114 \x3d (0);\nvar i__48306_49115 \x3d (0);\nwhile(true){\nif((i__48306_49115 \x3c count__48305_49114)){\nvar child_49116 \x3d chunk__48304_49113.cljs$core$IIndexed$_nth$arity$2(null,i__48306_49115);\nif(cljs.core.truth_(child_49116)){\nnode.appendChild(child_49116);\n\n\nvar G__49117 \x3d seq__48302_49112;\nvar G__49118 \x3d chunk__48304_49113;\nvar G__49119 \x3d count__48305_49114;\nvar G__49120 \x3d (i__48306_49115 + (1));\nseq__48302_49112 \x3d G__49117;\nchunk__48304_49113 \x3d G__49118;\ncount__48305_49114 \x3d G__49119;\ni__48306_49115 \x3d G__49120;\ncontinue;\n} else {\nvar G__49121 \x3d seq__48302_49112;\nvar G__49122 \x3d chunk__48304_49113;\nvar G__49123 \x3d count__48305_49114;\nvar G__49124 \x3d (i__48306_49115 + (1));\nseq__48302_49112 \x3d G__49121;\nchunk__48304_49113 \x3d G__49122;\ncount__48305_49114 \x3d G__49123;\ni__48306_49115 \x3d G__49124;\ncontinue;\n}\n} else {\nvar temp__5753__auto___49126 \x3d cljs.core.seq(seq__48302_49112);\nif(temp__5753__auto___49126){\nvar seq__48302_49127__$1 \x3d temp__5753__auto___49126;\nif(cljs.core.chunked_seq_QMARK_(seq__48302_49127__$1)){\nvar c__4591__auto___49128 \x3d cljs.core.chunk_first(seq__48302_49127__$1);\nvar G__49129 \x3d cljs.core.chunk_rest(seq__48302_49127__$1);\nvar G__49130 \x3d c__4591__auto___49128;\nvar G__49131 \x3d cljs.core.count(c__4591__auto___49128);\nvar G__49132 \x3d (0);\nseq__48302_49112 \x3d G__49129;\nchunk__48304_49113 \x3d G__49130;\ncount__48305_49114 \x3d G__49131;\ni__48306_49115 \x3d G__49132;\ncontinue;\n} else {\nvar child_49134 \x3d cljs.core.first(seq__48302_49127__$1);\nif(cljs.core.truth_(child_49134)){\nnode.appendChild(child_49134);\n\n\nvar G__49135 \x3d cljs.core.next(seq__48302_49127__$1);\nvar G__49136 \x3d null;\nvar G__49137 \x3d (0);\nvar G__49138 \x3d (0);\nseq__48302_49112 \x3d G__49135;\nchunk__48304_49113 \x3d G__49136;\ncount__48305_49114 \x3d G__49137;\ni__48306_49115 \x3d G__49138;\ncontinue;\n} else {\nvar G__49141 \x3d cljs.core.next(seq__48302_49127__$1);\nvar G__49142 \x3d null;\nvar G__49143 \x3d (0);\nvar G__49144 \x3d (0);\nseq__48302_49112 \x3d G__49141;\nchunk__48304_49113 \x3d G__49142;\ncount__48305_49114 \x3d G__49143;\ni__48306_49115 \x3d G__49144;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n} else {\nnode.appendChild(children_49109);\n}\n}\n\n\nvar G__49145 \x3d seq__48237_49102;\nvar G__49146 \x3d chunk__48239_49103;\nvar G__49147 \x3d count__48240_49104;\nvar G__49148 \x3d (i__48241_49105 + (1));\nseq__48237_49102 \x3d G__49145;\nchunk__48239_49103 \x3d G__49146;\ncount__48240_49104 \x3d G__49147;\ni__48241_49105 \x3d G__49148;\ncontinue;\n} else {\nvar G__49149 \x3d seq__48237_49102;\nvar G__49150 \x3d chunk__48239_49103;\nvar G__49151 \x3d count__48240_49104;\nvar G__49152 \x3d (i__48241_49105 + (1));\nseq__48237_49102 \x3d G__49149;\nchunk__48239_49103 \x3d G__49150;\ncount__48240_49104 \x3d G__49151;\ni__48241_49105 \x3d G__49152;\ncontinue;\n}\n} else {\nvar temp__5753__auto___49154 \x3d cljs.core.seq(seq__48237_49102);\nif(temp__5753__auto___49154){\nvar seq__48237_49156__$1 \x3d temp__5753__auto___49154;\nif(cljs.core.chunked_seq_QMARK_(seq__48237_49156__$1)){\nvar c__4591__auto___49157 \x3d cljs.core.chunk_first(seq__48237_49156__$1);\nvar G__49158 \x3d cljs.core.chunk_rest(seq__48237_49156__$1);\nvar G__49159 \x3d c__4591__auto___49157;\nvar G__49160 \x3d cljs.core.count(c__4591__auto___49157);\nvar G__49161 \x3d (0);\nseq__48237_49102 \x3d G__49158;\nchunk__48239_49103 \x3d G__49159;\ncount__48240_49104 \x3d G__49160;\ni__48241_49105 \x3d G__49161;\ncontinue;\n} else {\nvar child_struct_49163 \x3d cljs.core.first(seq__48237_49156__$1);\nif((!((child_struct_49163 \x3d\x3d null)))){\nif(typeof child_struct_49163 \x3d\x3d\x3d \x27string\x27){\nvar text_49164 \x3d (node[\x22textContent\x22]);\n(node[\x22textContent\x22] \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1(text_49164),child_struct_49163].join(\x27\x27));\n} else {\nvar children_49165 \x3d shadow.dom.svg_node(child_struct_49163);\nif(cljs.core.seq_QMARK_(children_49165)){\nvar seq__48322_49169 \x3d cljs.core.seq(children_49165);\nvar chunk__48324_49170 \x3d null;\nvar count__48325_49171 \x3d (0);\nvar i__48326_49172 \x3d (0);\nwhile(true){\nif((i__48326_49172 \x3c count__48325_49171)){\nvar child_49175 \x3d chunk__48324_49170.cljs$core$IIndexed$_nth$arity$2(null,i__48326_49172);\nif(cljs.core.truth_(child_49175)){\nnode.appendChild(child_49175);\n\n\nvar G__49176 \x3d seq__48322_49169;\nvar G__49177 \x3d chunk__48324_49170;\nvar G__49178 \x3d count__48325_49171;\nvar G__49179 \x3d (i__48326_49172 + (1));\nseq__48322_49169 \x3d G__49176;\nchunk__48324_49170 \x3d G__49177;\ncount__48325_49171 \x3d G__49178;\ni__48326_49172 \x3d G__49179;\ncontinue;\n} else {\nvar G__49180 \x3d seq__48322_49169;\nvar G__49181 \x3d chunk__48324_49170;\nvar G__49182 \x3d count__48325_49171;\nvar G__49183 \x3d (i__48326_49172 + (1));\nseq__48322_49169 \x3d G__49180;\nchunk__48324_49170 \x3d G__49181;\ncount__48325_49171 \x3d G__49182;\ni__48326_49172 \x3d G__49183;\ncontinue;\n}\n} else {\nvar temp__5753__auto___49185__$1 \x3d cljs.core.seq(seq__48322_49169);\nif(temp__5753__auto___49185__$1){\nvar seq__48322_49186__$1 \x3d temp__5753__auto___49185__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__48322_49186__$1)){\nvar c__4591__auto___49191 \x3d cljs.core.chunk_first(seq__48322_49186__$1);\nvar G__49192 \x3d cljs.core.chunk_rest(seq__48322_49186__$1);\nvar G__49193 \x3d c__4591__auto___49191;\nvar G__49194 \x3d cljs.core.count(c__4591__auto___49191);\nvar G__49195 \x3d (0);\nseq__48322_49169 \x3d G__49192;\nchunk__48324_49170 \x3d G__49193;\ncount__48325_49171 \x3d G__49194;\ni__48326_49172 \x3d G__49195;\ncontinue;\n} else {\nvar child_49198 \x3d cljs.core.first(seq__48322_49186__$1);\nif(cljs.core.truth_(child_49198)){\nnode.appendChild(child_49198);\n\n\nvar G__49199 \x3d cljs.core.next(seq__48322_49186__$1);\nvar G__49200 \x3d null;\nvar G__49201 \x3d (0);\nvar G__49202 \x3d (0);\nseq__48322_49169 \x3d G__49199;\nchunk__48324_49170 \x3d G__49200;\ncount__48325_49171 \x3d G__49201;\ni__48326_49172 \x3d G__49202;\ncontinue;\n} else {\nvar G__49206 \x3d cljs.core.next(seq__48322_49186__$1);\nvar G__49207 \x3d null;\nvar G__49208 \x3d (0);\nvar G__49209 \x3d (0);\nseq__48322_49169 \x3d G__49206;\nchunk__48324_49170 \x3d G__49207;\ncount__48325_49171 \x3d G__49208;\ni__48326_49172 \x3d G__49209;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n} else {\nnode.appendChild(children_49165);\n}\n}\n\n\nvar G__49211 \x3d cljs.core.next(seq__48237_49156__$1);\nvar G__49212 \x3d null;\nvar G__49213 \x3d (0);\nvar G__49214 \x3d (0);\nseq__48237_49102 \x3d G__49211;\nchunk__48239_49103 \x3d G__49212;\ncount__48240_49104 \x3d G__49213;\ni__48241_49105 \x3d G__49214;\ncontinue;\n} else {\nvar G__49216 \x3d cljs.core.next(seq__48237_49156__$1);\nvar G__49217 \x3d null;\nvar G__49218 \x3d (0);\nvar G__49219 \x3d (0);\nseq__48237_49102 \x3d G__49216;\nchunk__48239_49103 \x3d G__49217;\ncount__48240_49104 \x3d G__49218;\ni__48241_49105 \x3d G__49219;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn node;\n});\ngoog.object.set(shadow.dom.SVGElement,\x22string\x22,true);\n\ngoog.object.set(shadow.dom._to_svg,\x22string\x22,(function (this$){\nif((this$ instanceof cljs.core.Keyword)){\nreturn shadow.dom.make_svg_node(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [this$], null));\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22strings cannot be in svgs\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22this\x22,\x22this\x22,-611633625),this$], null));\n}\n}));\n\n(cljs.core.PersistentVector.prototype.shadow$dom$SVGElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentVector.prototype.shadow$dom$SVGElement$_to_svg$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn shadow.dom.make_svg_node(this$__$1);\n}));\n\n(cljs.core.LazySeq.prototype.shadow$dom$SVGElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.LazySeq.prototype.shadow$dom$SVGElement$_to_svg$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2(shadow.dom._to_svg,this$__$1);\n}));\n\ngoog.object.set(shadow.dom.SVGElement,\x22null\x22,true);\n\ngoog.object.set(shadow.dom._to_svg,\x22null\x22,(function (_){\nreturn null;\n}));\nshadow.dom.svg \x3d (function shadow$dom$svg(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49230 \x3d arguments.length;\nvar i__4772__auto___49235 \x3d (0);\nwhile(true){\nif((i__4772__auto___49235 \x3c len__4771__auto___49230)){\nargs__4777__auto__.push((arguments[i__4772__auto___49235]));\n\nvar G__49238 \x3d (i__4772__auto___49235 + (1));\ni__4772__auto___49235 \x3d G__49238;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn shadow.dom.svg.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(shadow.dom.svg.cljs$core$IFn$_invoke$arity$variadic \x3d (function (attrs,children){\nreturn shadow.dom._to_svg(cljs.core.vec(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22svg\x22,\x22svg\x22,856789142),attrs], null),children)));\n}));\n\n(shadow.dom.svg.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(shadow.dom.svg.cljs$lang$applyTo \x3d (function (seq48364){\nvar G__48365 \x3d cljs.core.first(seq48364);\nvar seq48364__$1 \x3d cljs.core.next(seq48364);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__48365,seq48364__$1);\n}));\n\n/**\n * returns a channel for events on el\n * transform-fn should be a (fn [e el] some-val) where some-val will be put on the chan\n * once-or-cleanup handles the removal of the event handler\n * - true: remove after one event\n * - false: never removed\n * - chan: remove on msg/close\n */\nshadow.dom.event_chan \x3d (function shadow$dom$event_chan(var_args){\nvar G__48394 \x3d arguments.length;\nswitch (G__48394) {\ncase 2:\nreturn shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$2 \x3d (function (el,event){\nreturn shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$4(el,event,null,false);\n}));\n\n(shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$3 \x3d (function (el,event,xf){\nreturn shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$4(el,event,xf,false);\n}));\n\n(shadow.dom.event_chan.cljs$core$IFn$_invoke$arity$4 \x3d (function (el,event,xf,once_or_cleanup){\nvar buf \x3d cljs.core.async.sliding_buffer((1));\nvar chan \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2(buf,xf);\nvar event_fn \x3d (function shadow$dom$event_fn(e){\ncljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(chan,e);\n\nif(once_or_cleanup \x3d\x3d\x3d true){\nshadow.dom.remove_event_handler(el,event,shadow$dom$event_fn);\n\nreturn cljs.core.async.close_BANG_(chan);\n} else {\nreturn null;\n}\n});\nshadow.dom.dom_listen(shadow.dom.dom_node(el),cljs.core.name(event),event_fn);\n\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d once_or_cleanup;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (!(once_or_cleanup \x3d\x3d\x3d true));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar c__42953__auto___49260 \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_48419){\nvar state_val_48420 \x3d (state_48419[(1)]);\nif((state_val_48420 \x3d\x3d\x3d (1))){\nvar state_48419__$1 \x3d state_48419;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_48419__$1,(2),once_or_cleanup);\n} else {\nif((state_val_48420 \x3d\x3d\x3d (2))){\nvar inst_48415 \x3d (state_48419[(2)]);\nvar inst_48417 \x3d shadow.dom.remove_event_handler(el,event,event_fn);\nvar state_48419__$1 \x3d (function (){var statearr_48436 \x3d state_48419;\n(statearr_48436[(7)] \x3d inst_48415);\n\nreturn statearr_48436;\n})();\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_48419__$1,inst_48417);\n} else {\nreturn null;\n}\n}\n});\nreturn (function() {\nvar shadow$dom$state_machine__42703__auto__ \x3d null;\nvar shadow$dom$state_machine__42703__auto____0 \x3d (function (){\nvar statearr_48440 \x3d [null,null,null,null,null,null,null,null];\n(statearr_48440[(0)] \x3d shadow$dom$state_machine__42703__auto__);\n\n(statearr_48440[(1)] \x3d (1));\n\nreturn statearr_48440;\n});\nvar shadow$dom$state_machine__42703__auto____1 \x3d (function (state_48419){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_48419);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e48442){var ex__42707__auto__ \x3d e48442;\nvar statearr_48443_49272 \x3d state_48419;\n(statearr_48443_49272[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_48419[(4)]))){\nvar statearr_48444_49274 \x3d state_48419;\n(statearr_48444_49274[(1)] \x3d cljs.core.first((state_48419[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__49282 \x3d state_48419;\nstate_48419 \x3d G__49282;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\nshadow$dom$state_machine__42703__auto__ \x3d function(state_48419){\nswitch(arguments.length){\ncase 0:\nreturn shadow$dom$state_machine__42703__auto____0.call(this);\ncase 1:\nreturn shadow$dom$state_machine__42703__auto____1.call(this,state_48419);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nshadow$dom$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d shadow$dom$state_machine__42703__auto____0;\nshadow$dom$state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d shadow$dom$state_machine__42703__auto____1;\nreturn shadow$dom$state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_48447 \x3d f__42954__auto__();\n(statearr_48447[(6)] \x3d c__42953__auto___49260);\n\nreturn statearr_48447;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\n} else {\n}\n\nreturn chan;\n}));\n\n(shadow.dom.event_chan.cljs$lang$maxFixedArity \x3d 4);\n\n");
SHADOW_ENV.evalLoad("clojure.data.js", true , "goog.provide(\x27clojure.data\x27);\n/**\n * Internal helper for diff.\n */\nclojure.data.atom_diff \x3d (function clojure$data$atom_diff(a,b){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(a,b)){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,a], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [a,b,null], null);\n}\n});\n/**\n * Convert an associative-by-numeric-index collection into\n * an equivalent vector, with nil for any missing keys\n */\nclojure.data.vectorize \x3d (function clojure$data$vectorize(m){\nif(cljs.core.seq(m)){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (result,p__42840){\nvar vec__42841 \x3d p__42840;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42841,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42841,(1),null);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(result,k,v);\n}),cljs.core.vec(cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.max,cljs.core.keys(m)),null)),m);\n} else {\nreturn null;\n}\n});\n/**\n * Diff associative things a and b, comparing only the key k.\n */\nclojure.data.diff_associative_key \x3d (function clojure$data$diff_associative_key(a,b,k){\nvar va \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(a,k);\nvar vb \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(b,k);\nvar vec__42858 \x3d clojure.data.diff(va,vb);\nvar a_STAR_ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42858,(0),null);\nvar b_STAR_ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42858,(1),null);\nvar ab \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42858,(2),null);\nvar in_a \x3d cljs.core.contains_QMARK_(a,k);\nvar in_b \x3d cljs.core.contains_QMARK_(b,k);\nvar same \x3d ((in_a) \x26\x26 (in_b) \x26\x26 ((((!((ab \x3d\x3d null)))) || ((((va \x3d\x3d null)) \x26\x26 ((vb \x3d\x3d null)))))));\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [((((in_a) \x26\x26 ((((!((a_STAR_ \x3d\x3d null)))) || ((!(same)))))))?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,a_STAR_]):null),((((in_b) \x26\x26 ((((!((b_STAR_ \x3d\x3d null)))) || ((!(same)))))))?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,b_STAR_]):null),((same)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ab]):null)], null);\n});\n/**\n * Diff associative things a and b, comparing only keys in ks (if supplied).\n */\nclojure.data.diff_associative \x3d (function clojure$data$diff_associative(var_args){\nvar G__42877 \x3d arguments.length;\nswitch (G__42877) {\ncase 2:\nreturn clojure.data.diff_associative.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn clojure.data.diff_associative.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(clojure.data.diff_associative.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,b){\nreturn clojure.data.diff_associative.cljs$core$IFn$_invoke$arity$3(a,b,clojure.set.union.cljs$core$IFn$_invoke$arity$2(cljs.core.keys(a),cljs.core.keys(b)));\n}));\n\n(clojure.data.diff_associative.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,ks){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (diff1,diff2){\nreturn cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$3(cljs.core.merge,diff1,diff2));\n}),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,null], null),cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.partial.cljs$core$IFn$_invoke$arity$3(clojure.data.diff_associative_key,a,b),ks));\n}));\n\n(clojure.data.diff_associative.cljs$lang$maxFixedArity \x3d 3);\n\nclojure.data.diff_sequential \x3d (function clojure$data$diff_sequential(a,b){\nreturn cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2(clojure.data.vectorize,clojure.data.diff_associative.cljs$core$IFn$_invoke$arity$3(((cljs.core.vector_QMARK_(a))?a:cljs.core.vec(a)),((cljs.core.vector_QMARK_(b))?b:cljs.core.vec(b)),cljs.core.range.cljs$core$IFn$_invoke$arity$1((function (){var x__4249__auto__ \x3d cljs.core.count(a);\nvar y__4250__auto__ \x3d cljs.core.count(b);\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})()))));\n});\nclojure.data.diff_set \x3d (function clojure$data$diff_set(a,b){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.not_empty(clojure.set.difference.cljs$core$IFn$_invoke$arity$2(a,b)),cljs.core.not_empty(clojure.set.difference.cljs$core$IFn$_invoke$arity$2(b,a)),cljs.core.not_empty(clojure.set.intersection.cljs$core$IFn$_invoke$arity$2(a,b))], null);\n});\n\n/**\n * Implementation detail. Subject to change.\n * @interface\n */\nclojure.data.EqualityPartition \x3d function(){};\n\nvar clojure$data$EqualityPartition$equality_partition$dyn_43050 \x3d (function (x){\nvar x__4463__auto__ \x3d (((x \x3d\x3d null))?null:x);\nvar m__4464__auto__ \x3d (clojure.data.equality_partition[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4464__auto__.call(null,x));\n} else {\nvar m__4461__auto__ \x3d (clojure.data.equality_partition[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(x) : m__4461__auto__.call(null,x));\n} else {\nthrow cljs.core.missing_protocol(\x22EqualityPartition.equality-partition\x22,x);\n}\n}\n});\n/**\n * Implementation detail. Subject to change.\n */\nclojure.data.equality_partition \x3d (function clojure$data$equality_partition(x){\nif((((!((x \x3d\x3d null)))) \x26\x26 ((!((x.clojure$data$EqualityPartition$equality_partition$arity$1 \x3d\x3d null)))))){\nreturn x.clojure$data$EqualityPartition$equality_partition$arity$1(x);\n} else {\nreturn clojure$data$EqualityPartition$equality_partition$dyn_43050(x);\n}\n});\n\n\n/**\n * Implementation detail. Subject to change.\n * @interface\n */\nclojure.data.Diff \x3d function(){};\n\nvar clojure$data$Diff$diff_similar$dyn_43055 \x3d (function (a,b){\nvar x__4463__auto__ \x3d (((a \x3d\x3d null))?null:a);\nvar m__4464__auto__ \x3d (clojure.data.diff_similar[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(a,b) : m__4464__auto__.call(null,a,b));\n} else {\nvar m__4461__auto__ \x3d (clojure.data.diff_similar[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(a,b) : m__4461__auto__.call(null,a,b));\n} else {\nthrow cljs.core.missing_protocol(\x22Diff.diff-similar\x22,a);\n}\n}\n});\n/**\n * Implementation detail. Subject to change.\n */\nclojure.data.diff_similar \x3d (function clojure$data$diff_similar(a,b){\nif((((!((a \x3d\x3d null)))) \x26\x26 ((!((a.clojure$data$Diff$diff_similar$arity$2 \x3d\x3d null)))))){\nreturn a.clojure$data$Diff$diff_similar$arity$2(a,b);\n} else {\nreturn clojure$data$Diff$diff_similar$dyn_43055(a,b);\n}\n});\n\ngoog.object.set(clojure.data.EqualityPartition,\x22null\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22null\x22,(function (x){\nreturn new cljs.core.Keyword(null,\x22atom\x22,\x22atom\x22,-397043653);\n}));\n\ngoog.object.set(clojure.data.EqualityPartition,\x22string\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22string\x22,(function (x){\nreturn new cljs.core.Keyword(null,\x22atom\x22,\x22atom\x22,-397043653);\n}));\n\ngoog.object.set(clojure.data.EqualityPartition,\x22number\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22number\x22,(function (x){\nreturn new cljs.core.Keyword(null,\x22atom\x22,\x22atom\x22,-397043653);\n}));\n\ngoog.object.set(clojure.data.EqualityPartition,\x22array\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22array\x22,(function (x){\nreturn new cljs.core.Keyword(null,\x22sequential\x22,\x22sequential\x22,-1082983960);\n}));\n\ngoog.object.set(clojure.data.EqualityPartition,\x22function\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22function\x22,(function (x){\nreturn new cljs.core.Keyword(null,\x22atom\x22,\x22atom\x22,-397043653);\n}));\n\ngoog.object.set(clojure.data.EqualityPartition,\x22boolean\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22boolean\x22,(function (x){\nreturn new cljs.core.Keyword(null,\x22atom\x22,\x22atom\x22,-397043653);\n}));\n\ngoog.object.set(clojure.data.EqualityPartition,\x22_\x22,true);\n\ngoog.object.set(clojure.data.equality_partition,\x22_\x22,(function (x){\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (1024))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IMap$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IMap,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IMap,x))){\nreturn new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461);\n} else {\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (4096))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ISet$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.ISet,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.ISet,x))){\nreturn new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554);\n} else {\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (16777216))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$ISequential$))))?true:(((!x.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.ISequential,x):false)):cljs.core.native_satisfies_QMARK_(cljs.core.ISequential,x))){\nreturn new cljs.core.Keyword(null,\x22sequential\x22,\x22sequential\x22,-1082983960);\n} else {\nreturn new cljs.core.Keyword(null,\x22atom\x22,\x22atom\x22,-397043653);\n\n}\n}\n}\n}));\ngoog.object.set(clojure.data.Diff,\x22null\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22null\x22,(function (a,b){\nreturn clojure.data.atom_diff(a,b);\n}));\n\ngoog.object.set(clojure.data.Diff,\x22string\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22string\x22,(function (a,b){\nreturn clojure.data.atom_diff(a,b);\n}));\n\ngoog.object.set(clojure.data.Diff,\x22number\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22number\x22,(function (a,b){\nreturn clojure.data.atom_diff(a,b);\n}));\n\ngoog.object.set(clojure.data.Diff,\x22array\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22array\x22,(function (a,b){\nreturn clojure.data.diff_sequential(a,b);\n}));\n\ngoog.object.set(clojure.data.Diff,\x22function\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22function\x22,(function (a,b){\nreturn clojure.data.atom_diff(a,b);\n}));\n\ngoog.object.set(clojure.data.Diff,\x22boolean\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22boolean\x22,(function (a,b){\nreturn clojure.data.atom_diff(a,b);\n}));\n\ngoog.object.set(clojure.data.Diff,\x22_\x22,true);\n\ngoog.object.set(clojure.data.diff_similar,\x22_\x22,(function (a,b){\nvar fexpr__42976 \x3d (function (){var G__42978 \x3d clojure.data.equality_partition(a);\nvar G__42978__$1 \x3d (((G__42978 instanceof cljs.core.Keyword))?G__42978.fqn:null);\nswitch (G__42978__$1) {\ncase \x22atom\x22:\nreturn clojure.data.atom_diff;\n\nbreak;\ncase \x22set\x22:\nreturn clojure.data.diff_set;\n\nbreak;\ncase \x22sequential\x22:\nreturn clojure.data.diff_sequential;\n\nbreak;\ncase \x22map\x22:\nreturn clojure.data.diff_associative;\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__42978__$1)].join(\x27\x27)));\n\n}\n})();\nreturn (fexpr__42976.cljs$core$IFn$_invoke$arity$2 ? fexpr__42976.cljs$core$IFn$_invoke$arity$2(a,b) : fexpr__42976.call(null,a,b));\n}));\n/**\n * Recursively compares a and b, returning a tuple of\n *   [things-only-in-a things-only-in-b things-in-both].\n *   Comparison rules:\n * \n *   * For equal a and b, return [nil nil a].\n *   * Maps are subdiffed where keys match and values differ.\n *   * Sets are never subdiffed.\n *   * All sequential things are treated as associative collections\n *  by their indexes, with results returned as vectors.\n *   * Everything else (including strings!) is treated as\n *  an atom and compared for equality.\n */\nclojure.data.diff \x3d (function clojure$data$diff(a,b){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(a,b)){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,null,a], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(clojure.data.equality_partition(a),clojure.data.equality_partition(b))){\nreturn clojure.data.diff_similar(a,b);\n} else {\nreturn clojure.data.atom_diff(a,b);\n}\n}\n});\n");
SHADOW_ENV.evalLoad("shadow.util.js", true , "goog.provide(\x27shadow.util\x27);\nshadow.util.console_friendly \x3d (function shadow$util$console_friendly(a){\nif((a \x3d\x3d null)){\nreturn \x22nil\x22;\n} else {\nif((a instanceof cljs.core.Keyword)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(a);\n} else {\nif(typeof a \x3d\x3d\x3d \x27string\x27){\nreturn a;\n} else {\nif(typeof a \x3d\x3d\x3d \x27number\x27){\nreturn a;\n} else {\nif((((!((a \x3d\x3d null))))?(((((a.cljs$lang$protocol_mask$partition0$ \x26 (2147483648))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d a.cljs$core$IPrintWithWriter$))))?true:(((!a.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IPrintWithWriter,a):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IPrintWithWriter,a))){\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([a], 0));\n} else {\nreturn a;\n\n}\n}\n}\n}\n}\n});\nshadow.util.console_QMARK_ \x3d (typeof console !\x3d\x3d \x27undefined\x27);\nshadow.util.log \x3d (function shadow$util$log(var_args){\nvar G__42861 \x3d arguments.length;\nswitch (G__42861) {\ncase 1:\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___42928 \x3d arguments.length;\nvar i__4772__auto___42929 \x3d (0);\nwhile(true){\nif((i__4772__auto___42929 \x3c len__4771__auto___42928)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___42929]));\n\nvar G__42930 \x3d (i__4772__auto___42929 + (1));\ni__4772__auto___42929 \x3d G__42930;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((6)),(0),null));\nreturn shadow.util.log.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),argseq__4793__auto__);\n\n}\n});\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$1 \x3d (function (a1){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1));\n} else {\nreturn null;\n}\n}));\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$2 \x3d (function (a1,a2){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1),shadow.util.console_friendly(a2));\n} else {\nreturn null;\n}\n}));\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$3 \x3d (function (a1,a2,a3){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1),shadow.util.console_friendly(a2),shadow.util.console_friendly(a3));\n} else {\nreturn null;\n}\n}));\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$4 \x3d (function (a1,a2,a3,a4){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1),shadow.util.console_friendly(a2),shadow.util.console_friendly(a3),shadow.util.console_friendly(a4));\n} else {\nreturn null;\n}\n}));\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$5 \x3d (function (a1,a2,a3,a4,a5){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1),shadow.util.console_friendly(a2),shadow.util.console_friendly(a3),shadow.util.console_friendly(a4),shadow.util.console_friendly(a5));\n} else {\nreturn null;\n}\n}));\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$6 \x3d (function (a1,a2,a3,a4,a5,a6){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1),shadow.util.console_friendly(a2),shadow.util.console_friendly(a3),shadow.util.console_friendly(a4),shadow.util.console_friendly(a5),shadow.util.console_friendly(a6));\n} else {\nreturn null;\n}\n}));\n\n(shadow.util.log.cljs$core$IFn$_invoke$arity$variadic \x3d (function (a1,a2,a3,a4,a5,a6,more){\nif(shadow.util.console_QMARK_){\nreturn console.log(shadow.util.console_friendly(a1),shadow.util.console_friendly(a2),shadow.util.console_friendly(a3),shadow.util.console_friendly(a4),shadow.util.console_friendly(a5),shadow.util.console_friendly(a6),\x22more:\x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([more], 0)));\n} else {\nreturn null;\n}\n}));\n\n/** @this {Function} */\n(shadow.util.log.cljs$lang$applyTo \x3d (function (seq42851){\nvar G__42852 \x3d cljs.core.first(seq42851);\nvar seq42851__$1 \x3d cljs.core.next(seq42851);\nvar G__42853 \x3d cljs.core.first(seq42851__$1);\nvar seq42851__$2 \x3d cljs.core.next(seq42851__$1);\nvar G__42854 \x3d cljs.core.first(seq42851__$2);\nvar seq42851__$3 \x3d cljs.core.next(seq42851__$2);\nvar G__42855 \x3d cljs.core.first(seq42851__$3);\nvar seq42851__$4 \x3d cljs.core.next(seq42851__$3);\nvar G__42856 \x3d cljs.core.first(seq42851__$4);\nvar seq42851__$5 \x3d cljs.core.next(seq42851__$4);\nvar G__42857 \x3d cljs.core.first(seq42851__$5);\nvar seq42851__$6 \x3d cljs.core.next(seq42851__$5);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__42852,G__42853,G__42854,G__42855,G__42856,G__42857,seq42851__$6);\n}));\n\n(shadow.util.log.cljs$lang$maxFixedArity \x3d (6));\n\nshadow.util.remove_from_vector \x3d (function shadow$util$remove_from_vector(coll,key){\nreturn cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (v,p__42886){\nvar vec__42887 \x3d p__42886;\nvar idx \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42887,(0),null);\nvar item \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__42887,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(idx,key)){\nreturn v;\n} else {\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(v,item);\n}\n}),cljs.core.transient$(cljs.core.PersistentVector.EMPTY),cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$2(cljs.core.vector,coll)));\n});\nshadow.util.remove_item_from_coll \x3d (function shadow$util$remove_item_from_coll(coll,key,value){\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (16384))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IVector$))))?true:(((!coll.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IVector,coll):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IVector,coll))){\nreturn shadow.util.remove_from_vector(coll,key);\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (1024))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$IMap$))))?true:(((!coll.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.IMap,coll):false)):cljs.core.native_satisfies_QMARK_(cljs.core.IMap,coll))){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(coll,key);\n} else {\nif((((!((coll \x3d\x3d null))))?(((((coll.cljs$lang$protocol_mask$partition0$ \x26 (4096))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d coll.cljs$core$ISet$))))?true:(((!coll.cljs$lang$protocol_mask$partition0$))?cljs.core.native_satisfies_QMARK_(cljs.core.ISet,coll):false)):cljs.core.native_satisfies_QMARK_(cljs.core.ISet,coll))){\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$2(coll,value);\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22unknown coll type\x22,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22coll\x22,\x22coll\x22,1647737163),coll,new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),key,new cljs.core.Keyword(null,\x22value\x22,\x22value\x22,305978217),value], null));\n\n}\n}\n}\n});\n");
SHADOW_ENV.evalLoad("shadow.object.js", true , "goog.provide(\x27shadow.object\x27);\nshadow.object.console_friendly \x3d shadow.util.console_friendly;\nshadow.object.log \x3d shadow.util.log;\nshadow.object.debug \x3d shadow.util.log;\nshadow.object.info \x3d shadow.util.log;\nshadow.object.warn \x3d shadow.util.log;\nshadow.object.error \x3d shadow.util.log;\nshadow.object.obj_id \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1((0));\nshadow.object.next_id \x3d (function shadow$object$next_id(){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(shadow.object.obj_id,cljs.core.inc);\n});\nshadow.object.object_defs \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nshadow.object.behavior_fns \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nshadow.object.instances \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nshadow.object.instance_parent \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nshadow.object.instance_children \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nshadow.object.events \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nshadow.object.define_event \x3d (function shadow$object$define_event(event_name,desc,args){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(shadow.object.events,cljs.core.assoc,event_name,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),event_name,new cljs.core.Keyword(null,\x22description\x22,\x22description\x22,-1428560544),desc,new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),args], null));\n});\nshadow.object.unmunge \x3d (function shadow$object$unmunge(s){\nreturn clojure.string.replace(clojure.string.replace(s,/_DOT_/,\x22.\x22),/_/,\x22-\x22);\n});\nshadow.object.define_event(new cljs.core.Keyword(null,\x22init\x22,\x22init\x22,-1875481434),\x22object initialization\x22,cljs.core.PersistentVector.EMPTY);\nshadow.object.define_event(new cljs.core.Keyword(null,\x22destroy\x22,\x22destroy\x22,-843660405),\x22object descruction\x22,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22cause\x22,\x22cause\x22,231901252),\x22cause of destruction, :parent means the parent was destroyed, :direct is default\x22], null)], null));\nshadow.object.define_event(new cljs.core.Keyword(\x22dom\x22,\x22init\x22,\x22dom/init\x22,-1875647652),\x22called after the dom was created but has not entered the document yet\x22,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22dom\x22,\x22dom\x22,-1236537922),\x22the dom that was created\x22], null)], null));\nshadow.object.define_event(new cljs.core.Keyword(\x22dom\x22,\x22entered\x22,\x22dom/entered\x22,506699596),\x22should be called whenever a dom node is added to the document, since that\\n   is not in control of this library its up to you to call this\\n   use (so/notify-tree! your-obj :dom/entered) to notify the node and every child you created\x22,cljs.core.PersistentVector.EMPTY);\nshadow.object.define_event(new cljs.core.Keyword(null,\x22bind-children-update\x22,\x22bind-children-update\x22,-1610690160),\x22need to rethink this\x22,cljs.core.PersistentVector.EMPTY);\n\n/**\n * @interface\n */\nshadow.object.IObject \x3d function(){};\n\nvar shadow$object$IObject$_id$dyn_49657 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.object._id[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.object._id[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IObject.-id\x22,this$);\n}\n}\n});\nshadow.object._id \x3d (function shadow$object$_id(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$object$IObject$_id$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$object$IObject$_id$arity$1(this$);\n} else {\nreturn shadow$object$IObject$_id$dyn_49657(this$);\n}\n});\n\nvar shadow$object$IObject$_type$dyn_49662 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.object._type[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.object._type[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IObject.-type\x22,this$);\n}\n}\n});\nshadow.object._type \x3d (function shadow$object$_type(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$object$IObject$_type$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$object$IObject$_type$arity$1(this$);\n} else {\nreturn shadow$object$IObject$_type$dyn_49662(this$);\n}\n});\n\nvar shadow$object$IObject$_data$dyn_49668 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.object._data[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.object._data[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IObject.-data\x22,this$);\n}\n}\n});\nshadow.object._data \x3d (function shadow$object$_data(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$object$IObject$_data$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$object$IObject$_data$arity$1(this$);\n} else {\nreturn shadow$object$IObject$_data$dyn_49668(this$);\n}\n});\n\nvar shadow$object$IObject$_update$dyn_49674 \x3d (function (this$,update_fn){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.object._update[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,update_fn) : m__4464__auto__.call(null,this$,update_fn));\n} else {\nvar m__4461__auto__ \x3d (shadow.object._update[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,update_fn) : m__4461__auto__.call(null,this$,update_fn));\n} else {\nthrow cljs.core.missing_protocol(\x22IObject.-update\x22,this$);\n}\n}\n});\n/**\n * update and notify watches\n */\nshadow.object._update \x3d (function shadow$object$_update(this$,update_fn){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$object$IObject$_update$arity$2 \x3d\x3d null)))))){\nreturn this$.shadow$object$IObject$_update$arity$2(this$,update_fn);\n} else {\nreturn shadow$object$IObject$_update$dyn_49674(this$,update_fn);\n}\n});\n\nvar shadow$object$IObject$_destroy_BANG_$dyn_49685 \x3d (function (this$,cause){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.object._destroy_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,cause) : m__4464__auto__.call(null,this$,cause));\n} else {\nvar m__4461__auto__ \x3d (shadow.object._destroy_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,cause) : m__4461__auto__.call(null,this$,cause));\n} else {\nthrow cljs.core.missing_protocol(\x22IObject.-destroy!\x22,this$);\n}\n}\n});\nshadow.object._destroy_BANG_ \x3d (function shadow$object$_destroy_BANG_(this$,cause){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$object$IObject$_destroy_BANG_$arity$2 \x3d\x3d null)))))){\nreturn this$.shadow$object$IObject$_destroy_BANG_$arity$2(this$,cause);\n} else {\nreturn shadow$object$IObject$_destroy_BANG_$dyn_49685(this$,cause);\n}\n});\n\nshadow.object.get_type \x3d (function shadow$object$get_type(this$){\nreturn shadow.object._type(this$);\n});\nshadow.object.get_type_attr \x3d (function shadow$object$get_type_attr(var_args){\nvar G__48544 \x3d arguments.length;\nswitch (G__48544) {\ncase 2:\nreturn shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$2 \x3d (function (oref,key){\nif((oref \x3d\x3d null)){\nreturn null;\n} else {\nvar type_id \x3d (((oref instanceof cljs.core.Keyword))?oref:shadow.object._type(oref));\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.object_defs),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [type_id,key], null));\n}\n}));\n\n(shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$3 \x3d (function (oref,key,default$){\nif((oref \x3d\x3d null)){\nreturn default$;\n} else {\nvar type_id \x3d (((oref instanceof cljs.core.Keyword))?oref:shadow.object._type(oref));\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(shadow.object.object_defs),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [type_id,key], null),default$);\n}\n}));\n\n(shadow.object.get_type_attr.cljs$lang$maxFixedArity \x3d 3);\n\nshadow.object.get_dom \x3d (function shadow$object$get_dom(oref){\nreturn new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311).cljs$core$IFn$_invoke$arity$1(oref);\n});\ngoog.exportSymbol(\x27shadow.object.get_dom\x27, shadow.object.get_dom);\nshadow.object.get_by_id \x3d (function shadow$object$get_by_id(id){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.instances),id);\n});\ngoog.exportSymbol(\x27shadow.object.get_by_id\x27, shadow.object.get_by_id);\nshadow.object.get_from_dom \x3d (function shadow$object$get_from_dom(dom){\nvar oid \x3d shadow.dom.data(dom,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334));\nif(cljs.core.truth_(oid)){\nreturn shadow.object.get_by_id(parseInt(oid,(10)));\n} else {\nreturn null;\n}\n});\ngoog.exportSymbol(\x27shadow.object.get_from_dom\x27, shadow.object.get_from_dom);\nshadow.object.is_object_QMARK_ \x3d (function shadow$object$is_object_QMARK_(obj_or_dom){\nvar or__4160__auto__ \x3d (((!((obj_or_dom \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj_or_dom.shadow$object$IObject$))))?true:(((!obj_or_dom.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(shadow.object.IObject,obj_or_dom):false)):cljs.core.native_satisfies_QMARK_(shadow.object.IObject,obj_or_dom));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn shadow.object.get_from_dom(obj_or_dom);\n}\n});\nshadow.object.equal_QMARK_ \x3d (function shadow$object$equal_QMARK_(obj,obj_or_dom){\nif((((!((obj \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.shadow$object$IObject$))))?true:(((!obj.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(shadow.object.IObject,obj):false)):cljs.core.native_satisfies_QMARK_(shadow.object.IObject,obj))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,\x22can only test objects\x22,\x22\\n\x22,\x22(satisfies? IObject obj)\x22].join(\x27\x27)));\n}\n\nif((((!((obj_or_dom \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj_or_dom.shadow$object$IObject$))))?true:(((!obj_or_dom.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(shadow.object.IObject,obj_or_dom):false)):cljs.core.native_satisfies_QMARK_(shadow.object.IObject,obj_or_dom))){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(shadow.object._id(obj),shadow.object._id(obj_or_dom));\n} else {\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(shadow.object._id(obj),(function (){var temp__5753__auto__ \x3d shadow.dom.data(obj_or_dom,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar oid \x3d temp__5753__auto__;\nreturn parseInt(oid,(10));\n} else {\nreturn null;\n}\n})());\n}\n});\nshadow.object.get_parent \x3d (function shadow$object$get_parent(oref){\nvar temp__5753__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.instance_parent),shadow.object._id(oref));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar parent_id \x3d temp__5753__auto__;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.instances),parent_id);\n} else {\nreturn null;\n}\n});\ngoog.exportSymbol(\x27shadow.object.get_parent\x27, shadow.object.get_parent);\nshadow.object.get_parent_of_type \x3d (function shadow$object$get_parent_of_type(oref,parent_type){\nvar parent \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(oref);\nwhile(true){\nif(cljs.core.truth_(parent)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(shadow.object._type(parent),parent_type)){\nreturn parent;\n} else {\nvar G__49753 \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(parent);\nparent \x3d G__49753;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\ngoog.exportSymbol(\x27shadow.object.get_parent_of_type\x27, shadow.object.get_parent_of_type);\nshadow.object.get_children \x3d (function shadow$object$get_children(parent){\nvar parent_id \x3d shadow.object._id(parent);\nvar child_ids \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(shadow.object.instance_children),parent_id,cljs.core.PersistentVector.EMPTY);\nvar instances \x3d cljs.core.deref(shadow.object.instances);\nreturn cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__48629_SHARP_){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(instances,p1__48629_SHARP_);\n}),child_ids));\n});\ngoog.exportSymbol(\x27shadow.object.get_children\x27, shadow.object.get_children);\nshadow.object.tree_seq \x3d (function shadow$object$tree_seq(var_args){\nvar G__48660 \x3d arguments.length;\nswitch (G__48660) {\ncase 1:\nreturn shadow.object.tree_seq.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.object.tree_seq.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\ngoog.exportSymbol(\x27shadow.object.tree_seq\x27, shadow.object.tree_seq);\n\n(shadow.object.tree_seq.cljs$core$IFn$_invoke$arity$1 \x3d (function (root){\nreturn shadow.object.tree_seq.cljs$core$IFn$_invoke$arity$2(root,(function (node){\nreturn true;\n}));\n}));\n\n(shadow.object.tree_seq.cljs$core$IFn$_invoke$arity$2 \x3d (function (root,branch_QMARK_){\nreturn cljs.core.tree_seq(branch_QMARK_,shadow.object.get_children,root);\n}));\n\n(shadow.object.tree_seq.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.object.get_children_of_type \x3d (function shadow$object$get_children_of_type(oref,type){\nvar type_kw \x3d (((type instanceof cljs.core.Keyword))?type:shadow.object._type(type));\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__48685_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type_kw,shadow.object._type(p1__48685_SHARP_));\n}),shadow.object.get_children(oref));\n});\n/**\n * basically (get-children (:parent this))\n */\nshadow.object.get_siblings \x3d (function shadow$object$get_siblings(p__48705){\nvar map__48711 \x3d p__48705;\nvar map__48711__$1 \x3d cljs.core.__destructure_map(map__48711);\nvar oref \x3d map__48711__$1;\nvar parent \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48711__$1,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779));\nif(cljs.core.truth_(parent)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22object has no parent, thus has no siblings\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22oref\x22,\x22oref\x22,-1547494840),oref], null));\n}\n\nreturn shadow.object.get_children(parent);\n});\n/**\n * returns set of all siblings of a common type\n */\nshadow.object.get_siblings_of_type \x3d (function shadow$object$get_siblings_of_type(var_args){\nvar G__48734 \x3d arguments.length;\nswitch (G__48734) {\ncase 1:\nreturn shadow.object.get_siblings_of_type.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.object.get_siblings_of_type.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.get_siblings_of_type.cljs$core$IFn$_invoke$arity$1 \x3d (function (oref){\nreturn shadow.object.get_siblings_of_type.cljs$core$IFn$_invoke$arity$2(oref,oref);\n}));\n\n(shadow.object.get_siblings_of_type.cljs$core$IFn$_invoke$arity$2 \x3d (function (oref,type){\nvar type_kw \x3d (((type instanceof cljs.core.Keyword))?type:shadow.object._type(type));\nreturn cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__48724_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(type_kw,shadow.object._type(p1__48724_SHARP_));\n}),shadow.object.get_siblings(oref));\n}));\n\n(shadow.object.get_siblings_of_type.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.object.get_collection_item \x3d (function shadow$object$get_collection_item(oref){\nvar item_key \x3d new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-item-key\x22,\x22shadow.object/coll-item-key\x22,1888444366).cljs$core$IFn$_invoke$arity$1(oref);\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(oref,item_key);\n});\n/**\n * find the object that contains this dom node\n */\nshadow.object.find_containing_object \x3d (function shadow$object$find_containing_object(dom){\nwhile(true){\nvar temp__5751__auto__ \x3d shadow.object.get_from_dom(dom);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar obj \x3d temp__5751__auto__;\nreturn obj;\n} else {\nvar temp__5753__auto__ \x3d dom.parentElement;\nif(cljs.core.truth_(temp__5753__auto__)){\nvar parent \x3d temp__5753__auto__;\nvar G__49801 \x3d parent;\ndom \x3d G__49801;\ncontinue;\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.object.notify_BANG_ \x3d (function shadow$object$notify_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49802 \x3d arguments.length;\nvar i__4772__auto___49803 \x3d (0);\nwhile(true){\nif((i__4772__auto___49803 \x3c len__4771__auto___49802)){\nargs__4777__auto__.push((arguments[i__4772__auto___49803]));\n\nvar G__49804 \x3d (i__4772__auto___49803 + (1));\ni__4772__auto___49803 \x3d G__49804;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn shadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(shadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (oref,ev,args){\nvar temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(oref,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633),ev], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar reactions_to_trigger \x3d temp__5753__auto__;\nvar seq__48770 \x3d cljs.core.seq(reactions_to_trigger);\nvar chunk__48771 \x3d null;\nvar count__48772 \x3d (0);\nvar i__48773 \x3d (0);\nwhile(true){\nif((i__48773 \x3c count__48772)){\nvar rfn \x3d chunk__48771.cljs$core$IIndexed$_nth$arity$2(null,i__48773);\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2(rfn,cljs.core.cons(oref,args));\n\n\nvar G__49829 \x3d seq__48770;\nvar G__49830 \x3d chunk__48771;\nvar G__49831 \x3d count__48772;\nvar G__49832 \x3d (i__48773 + (1));\nseq__48770 \x3d G__49829;\nchunk__48771 \x3d G__49830;\ncount__48772 \x3d G__49831;\ni__48773 \x3d G__49832;\ncontinue;\n} else {\nvar temp__5753__auto____$1 \x3d cljs.core.seq(seq__48770);\nif(temp__5753__auto____$1){\nvar seq__48770__$1 \x3d temp__5753__auto____$1;\nif(cljs.core.chunked_seq_QMARK_(seq__48770__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__48770__$1);\nvar G__49833 \x3d cljs.core.chunk_rest(seq__48770__$1);\nvar G__49835 \x3d c__4591__auto__;\nvar G__49836 \x3d cljs.core.count(c__4591__auto__);\nvar G__49837 \x3d (0);\nseq__48770 \x3d G__49833;\nchunk__48771 \x3d G__49835;\ncount__48772 \x3d G__49836;\ni__48773 \x3d G__49837;\ncontinue;\n} else {\nvar rfn \x3d cljs.core.first(seq__48770__$1);\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2(rfn,cljs.core.cons(oref,args));\n\n\nvar G__49838 \x3d cljs.core.next(seq__48770__$1);\nvar G__49839 \x3d null;\nvar G__49840 \x3d (0);\nvar G__49841 \x3d (0);\nseq__48770 \x3d G__49838;\nchunk__48771 \x3d G__49839;\ncount__48772 \x3d G__49840;\ni__48773 \x3d G__49841;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn null;\n}\n}));\n\n(shadow.object.notify_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(shadow.object.notify_BANG_.cljs$lang$applyTo \x3d (function (seq48755){\nvar G__48756 \x3d cljs.core.first(seq48755);\nvar seq48755__$1 \x3d cljs.core.next(seq48755);\nvar G__48757 \x3d cljs.core.first(seq48755__$1);\nvar seq48755__$2 \x3d cljs.core.next(seq48755__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__48756,G__48757,seq48755__$2);\n}));\n\nshadow.object.do_notify_tree \x3d (function shadow$object$do_notify_tree(current_obj,ev,notify_fn){\nvar seq__48850_49846 \x3d cljs.core.seq(shadow.object.get_children(current_obj));\nvar chunk__48851_49847 \x3d null;\nvar count__48852_49848 \x3d (0);\nvar i__48853_49849 \x3d (0);\nwhile(true){\nif((i__48853_49849 \x3c count__48852_49848)){\nvar child_49850 \x3d chunk__48851_49847.cljs$core$IIndexed$_nth$arity$2(null,i__48853_49849);\n(shadow.object.do_notify_tree.cljs$core$IFn$_invoke$arity$3 ? shadow.object.do_notify_tree.cljs$core$IFn$_invoke$arity$3(child_49850,ev,notify_fn) : shadow.object.do_notify_tree.call(null,child_49850,ev,notify_fn));\n\n\nvar G__49873 \x3d seq__48850_49846;\nvar G__49874 \x3d chunk__48851_49847;\nvar G__49875 \x3d count__48852_49848;\nvar G__49876 \x3d (i__48853_49849 + (1));\nseq__48850_49846 \x3d G__49873;\nchunk__48851_49847 \x3d G__49874;\ncount__48852_49848 \x3d G__49875;\ni__48853_49849 \x3d G__49876;\ncontinue;\n} else {\nvar temp__5753__auto___49877 \x3d cljs.core.seq(seq__48850_49846);\nif(temp__5753__auto___49877){\nvar seq__48850_49878__$1 \x3d temp__5753__auto___49877;\nif(cljs.core.chunked_seq_QMARK_(seq__48850_49878__$1)){\nvar c__4591__auto___49879 \x3d cljs.core.chunk_first(seq__48850_49878__$1);\nvar G__49880 \x3d cljs.core.chunk_rest(seq__48850_49878__$1);\nvar G__49881 \x3d c__4591__auto___49879;\nvar G__49882 \x3d cljs.core.count(c__4591__auto___49879);\nvar G__49883 \x3d (0);\nseq__48850_49846 \x3d G__49880;\nchunk__48851_49847 \x3d G__49881;\ncount__48852_49848 \x3d G__49882;\ni__48853_49849 \x3d G__49883;\ncontinue;\n} else {\nvar child_49884 \x3d cljs.core.first(seq__48850_49878__$1);\n(shadow.object.do_notify_tree.cljs$core$IFn$_invoke$arity$3 ? shadow.object.do_notify_tree.cljs$core$IFn$_invoke$arity$3(child_49884,ev,notify_fn) : shadow.object.do_notify_tree.call(null,child_49884,ev,notify_fn));\n\n\nvar G__49885 \x3d cljs.core.next(seq__48850_49878__$1);\nvar G__49886 \x3d null;\nvar G__49887 \x3d (0);\nvar G__49888 \x3d (0);\nseq__48850_49846 \x3d G__49885;\nchunk__48851_49847 \x3d G__49886;\ncount__48852_49848 \x3d G__49887;\ni__48853_49849 \x3d G__49888;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn (notify_fn.cljs$core$IFn$_invoke$arity$1 ? notify_fn.cljs$core$IFn$_invoke$arity$1(current_obj) : notify_fn.call(null,current_obj));\n});\nshadow.object.notify_tree_BANG_ \x3d (function shadow$object$notify_tree_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49890 \x3d arguments.length;\nvar i__4772__auto___49891 \x3d (0);\nwhile(true){\nif((i__4772__auto___49891 \x3c len__4771__auto___49890)){\nargs__4777__auto__.push((arguments[i__4772__auto___49891]));\n\nvar G__49892 \x3d (i__4772__auto___49891 + (1));\ni__4772__auto___49891 \x3d G__49892;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn shadow.object.notify_tree_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(shadow.object.notify_tree_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (oref,ev,args){\nvar notify_fn \x3d (function (obj){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(shadow.object.notify_BANG_,obj,ev,args);\n});\nreturn shadow.object.do_notify_tree(oref,ev,notify_fn);\n}));\n\n(shadow.object.notify_tree_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(shadow.object.notify_tree_BANG_.cljs$lang$applyTo \x3d (function (seq48911){\nvar G__48913 \x3d cljs.core.first(seq48911);\nvar seq48911__$1 \x3d cljs.core.next(seq48911);\nvar G__48914 \x3d cljs.core.first(seq48911__$1);\nvar seq48911__$2 \x3d cljs.core.next(seq48911__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__48913,G__48914,seq48911__$2);\n}));\n\nshadow.object.notify_down_BANG_ \x3d shadow.object.notify_tree_BANG_;\nshadow.object.notify_up_BANG_ \x3d (function shadow$object$notify_up_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49921 \x3d arguments.length;\nvar i__4772__auto___49922 \x3d (0);\nwhile(true){\nif((i__4772__auto___49922 \x3c len__4771__auto___49921)){\nargs__4777__auto__.push((arguments[i__4772__auto___49922]));\n\nvar G__49923 \x3d (i__4772__auto___49922 + (1));\ni__4772__auto___49922 \x3d G__49923;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn shadow.object.notify_up_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(shadow.object.notify_up_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (oref,ev,args){\nvar current \x3d shadow.object.get_parent(oref);\nwhile(true){\nif(cljs.core.truth_(current)){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(shadow.object.notify_BANG_,current,ev,args);\n\nvar G__49924 \x3d shadow.object.get_parent(current);\ncurrent \x3d G__49924;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(shadow.object.notify_up_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(shadow.object.notify_up_BANG_.cljs$lang$applyTo \x3d (function (seq48931){\nvar G__48932 \x3d cljs.core.first(seq48931);\nvar seq48931__$1 \x3d cljs.core.next(seq48931);\nvar G__48933 \x3d cljs.core.first(seq48931__$1);\nvar seq48931__$2 \x3d cljs.core.next(seq48931__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__48932,G__48933,seq48931__$2);\n}));\n\nshadow.object.update_BANG_ \x3d (function shadow$object$update_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49926 \x3d arguments.length;\nvar i__4772__auto___49927 \x3d (0);\nwhile(true){\nif((i__4772__auto___49927 \x3c len__4771__auto___49926)){\nargs__4777__auto__.push((arguments[i__4772__auto___49927]));\n\nvar G__49928 \x3d (i__4772__auto___49927 + (1));\ni__4772__auto___49927 \x3d G__49928;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn shadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(shadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (oref,update_fn,args){\nif(cljs.core.fn_QMARK_(update_fn)){\n} else {\nthrow [\x22update! expects a fn as second arg, not \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([update_fn], 0))].join(\x27\x27);\n}\n\nvar id \x3d shadow.object._id(oref);\nvar data \x3d shadow.object._data(oref);\nvar work_fn \x3d (function (data__$1){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(update_fn,data__$1,args);\n});\nreturn shadow.object._update(oref,work_fn);\n}));\n\n(shadow.object.update_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(shadow.object.update_BANG_.cljs$lang$applyTo \x3d (function (seq48976){\nvar G__48977 \x3d cljs.core.first(seq48976);\nvar seq48976__$1 \x3d cljs.core.next(seq48976);\nvar G__48978 \x3d cljs.core.first(seq48976__$1);\nvar seq48976__$2 \x3d cljs.core.next(seq48976__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__48977,G__48978,seq48976__$2);\n}));\n\nshadow.object.return_value \x3d (function shadow$object$return_value(oref,return_value){\nreturn shadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic(oref,cljs.core.assoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.object\x22,\x22return-value\x22,\x22shadow.object/return-value\x22,1397593360),return_value], 0));\n});\nshadow.object.set_parent_BANG_ \x3d (function shadow$object$set_parent_BANG_(child,parent){\nvar child_id \x3d shadow.object._id(child);\nvar parent_id \x3d shadow.object._id(parent);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(shadow.object.instance_parent,cljs.core.assoc,child_id,parent_id);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(shadow.object.instance_children,(function (x){\nvar current \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(x,parent_id,cljs.core.PersistentHashSet.EMPTY);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(x,parent_id,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(current,child_id));\n}));\n\nreturn true;\n});\nshadow.object.dom_destroy \x3d (function shadow$object$dom_destroy(this$,cause){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cause,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779))){\nreturn shadow.dom.remove(new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311).cljs$core$IFn$_invoke$arity$1(this$));\n} else {\nvar temp__5751__auto__ \x3d shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$2(this$,new cljs.core.Keyword(\x22dom\x22,\x22remove\x22,\x22dom/remove\x22,-131527420));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar custom_remove \x3d temp__5751__auto__;\nvar G__48997 \x3d this$;\nvar G__48998 \x3d new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311).cljs$core$IFn$_invoke$arity$1(this$);\nreturn (custom_remove.cljs$core$IFn$_invoke$arity$2 ? custom_remove.cljs$core$IFn$_invoke$arity$2(G__48997,G__48998) : custom_remove.call(null,G__48997,G__48998));\n} else {\nreturn shadow.dom.remove(new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311).cljs$core$IFn$_invoke$arity$1(this$));\n}\n}\n});\nshadow.object.destroy_BANG_ \x3d (function shadow$object$destroy_BANG_(var_args){\nvar G__49004 \x3d arguments.length;\nswitch (G__49004) {\ncase 1:\nreturn shadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$1 \x3d (function (oref){\nreturn shadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$2(oref,new cljs.core.Keyword(null,\x22direct\x22,\x22direct\x22,-1775717856));\n}));\n\n(shadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (oref,cause){\nreturn shadow.object._destroy_BANG_(oref,cause);\n}));\n\n(shadow.object.destroy_BANG_.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.object.bind_dom_events \x3d (function shadow$object$bind_dom_events(oref,dom,dom_events){\nif((cljs.core.rem(cljs.core.count(dom_events),(2)) \x3d\x3d\x3d (0))){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22object defined invalid event\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22object-type\x22,\x22object-type\x22,-1889869015),shadow.object._type(oref),new cljs.core.Keyword(\x22dom\x22,\x22events\x22,\x22dom/events\x22,1793437527),dom_events], null));\n}\n\nvar seq__49012 \x3d cljs.core.seq(cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),dom_events));\nvar chunk__49013 \x3d null;\nvar count__49014 \x3d (0);\nvar i__49015 \x3d (0);\nwhile(true){\nif((i__49015 \x3c count__49014)){\nvar vec__49039 \x3d chunk__49013.cljs$core$IIndexed$_nth$arity$2(null,i__49015);\nvar ev \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49039,(0),null);\nvar handler \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49039,(1),null);\nvar ev_def \x3d vec__49039;\nif((handler \x3d\x3d null)){\nthrow [\x22ev with nil handler \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ev], 0))].join(\x27\x27);\n} else {\n}\n\nvar handler_49993__$1 \x3d (((handler instanceof cljs.core.Keyword))?((function (seq__49012,chunk__49013,count__49014,i__49015,vec__49039,ev,handler,ev_def){\nreturn (function (this$,e,el){\nreturn shadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic(this$,handler,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([e,el], 0));\n});})(seq__49012,chunk__49013,count__49014,i__49015,vec__49039,ev,handler,ev_def))\n:handler);\nshadow.dom.on.cljs$core$IFn$_invoke$arity$3(dom,ev,((function (seq__49012,chunk__49013,count__49014,i__49015,handler_49993__$1,vec__49039,ev,handler,ev_def){\nreturn (function shadow$object$bind_dom_events_$_dom_event_handler(e,el){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22A\x22,el.tagName)){\nshadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1(e);\n} else {\n}\n\nreturn (handler_49993__$1.cljs$core$IFn$_invoke$arity$3 ? handler_49993__$1.cljs$core$IFn$_invoke$arity$3(oref,e,el) : handler_49993__$1.call(null,oref,e,el));\n});})(seq__49012,chunk__49013,count__49014,i__49015,handler_49993__$1,vec__49039,ev,handler,ev_def))\n);\n\n\nvar G__49995 \x3d seq__49012;\nvar G__49996 \x3d chunk__49013;\nvar G__49997 \x3d count__49014;\nvar G__49998 \x3d (i__49015 + (1));\nseq__49012 \x3d G__49995;\nchunk__49013 \x3d G__49996;\ncount__49014 \x3d G__49997;\ni__49015 \x3d G__49998;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__49012);\nif(temp__5753__auto__){\nvar seq__49012__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__49012__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__49012__$1);\nvar G__49999 \x3d cljs.core.chunk_rest(seq__49012__$1);\nvar G__50000 \x3d c__4591__auto__;\nvar G__50001 \x3d cljs.core.count(c__4591__auto__);\nvar G__50002 \x3d (0);\nseq__49012 \x3d G__49999;\nchunk__49013 \x3d G__50000;\ncount__49014 \x3d G__50001;\ni__49015 \x3d G__50002;\ncontinue;\n} else {\nvar vec__49046 \x3d cljs.core.first(seq__49012__$1);\nvar ev \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49046,(0),null);\nvar handler \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49046,(1),null);\nvar ev_def \x3d vec__49046;\nif((handler \x3d\x3d null)){\nthrow [\x22ev with nil handler \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ev], 0))].join(\x27\x27);\n} else {\n}\n\nvar handler_50004__$1 \x3d (((handler instanceof cljs.core.Keyword))?((function (seq__49012,chunk__49013,count__49014,i__49015,vec__49046,ev,handler,ev_def,seq__49012__$1,temp__5753__auto__){\nreturn (function (this$,e,el){\nreturn shadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic(this$,handler,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([e,el], 0));\n});})(seq__49012,chunk__49013,count__49014,i__49015,vec__49046,ev,handler,ev_def,seq__49012__$1,temp__5753__auto__))\n:handler);\nshadow.dom.on.cljs$core$IFn$_invoke$arity$3(dom,ev,((function (seq__49012,chunk__49013,count__49014,i__49015,handler_50004__$1,vec__49046,ev,handler,ev_def,seq__49012__$1,temp__5753__auto__){\nreturn (function shadow$object$bind_dom_events_$_dom_event_handler(e,el){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22A\x22,el.tagName)){\nshadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1(e);\n} else {\n}\n\nreturn (handler_50004__$1.cljs$core$IFn$_invoke$arity$3 ? handler_50004__$1.cljs$core$IFn$_invoke$arity$3(oref,e,el) : handler_50004__$1.call(null,oref,e,el));\n});})(seq__49012,chunk__49013,count__49014,i__49015,handler_50004__$1,vec__49046,ev,handler,ev_def,seq__49012__$1,temp__5753__auto__))\n);\n\n\nvar G__50014 \x3d cljs.core.next(seq__49012__$1);\nvar G__50015 \x3d null;\nvar G__50016 \x3d (0);\nvar G__50017 \x3d (0);\nseq__49012 \x3d G__50014;\nchunk__49013 \x3d G__50015;\ncount__49014 \x3d G__50016;\ni__49015 \x3d G__50017;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.object.reaction_merge \x3d (function shadow$object$reaction_merge(result,p__49051){\nvar vec__49055 \x3d p__49051;\nvar event \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49055,(0),null);\nvar handler \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49055,(1),null);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d event;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn handler;\n} else {\nreturn and__4149__auto__;\n}\n})())){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid reaction\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22event\x22,\x22event\x22,301435442),event,new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612),handler], null));\n}\n\nvar current \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(result,event,cljs.core.List.EMPTY);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(result,event,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(current,handler));\n});\nshadow.object.merge_reactions \x3d (function shadow$object$merge_reactions(result,behavior){\nif(cljs.core.sequential_QMARK_(behavior)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22behaviors must be vectors\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22behavior\x22,\x22behavior\x22,1202392908),behavior], null));\n}\n\nif(cljs.core.even_QMARK_(cljs.core.count(behavior))){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid behavior\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22behavior\x22,\x22behavior\x22,1202392908),behavior], null));\n}\n\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(shadow.object.reaction_merge,result,cljs.core.reverse(cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),behavior)));\n});\nshadow.object.merge_behaviors \x3d (function shadow$object$merge_behaviors(result,behavior){\nif(cljs.core.sequential_QMARK_(behavior)){\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(result,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633)], null),shadow.object.merge_reactions,behavior);\n} else {\nif(cljs.core.map_QMARK_(behavior)){\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$3(cljs.core.update_in.cljs$core$IFn$_invoke$arity$3(cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(result,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633)], null),shadow.object.merge_reactions,new cljs.core.Keyword(null,\x22on\x22,\x22on\x22,173873944).cljs$core$IFn$_invoke$arity$2(behavior,cljs.core.PersistentVector.EMPTY)),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22watch\x22,\x22watch\x22,380988277)], null),(function (watches){\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2(watches,new cljs.core.Keyword(null,\x22watch\x22,\x22watch\x22,380988277).cljs$core$IFn$_invoke$arity$2(behavior,cljs.core.PersistentVector.EMPTY));\n})),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22dom\x22,\x22events\x22,\x22dom/events\x22,1793437527)], null),(function (default$){\nreturn cljs.core.vec(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(default$,new cljs.core.Keyword(\x22dom\x22,\x22events\x22,\x22dom/events\x22,1793437527).cljs$core$IFn$_invoke$arity$2(behavior,cljs.core.PersistentVector.EMPTY)));\n}));\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22behavior not understood\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22behavior\x22,\x22behavior\x22,1202392908),behavior], null));\n\n}\n}\n});\nshadow.object.define \x3d (function shadow$object$define(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___50055 \x3d arguments.length;\nvar i__4772__auto___50056 \x3d (0);\nwhile(true){\nif((i__4772__auto___50056 \x3c len__4771__auto___50055)){\nargs__4777__auto__.push((arguments[i__4772__auto___50056]));\n\nvar G__50057 \x3d (i__4772__auto___50056 + (1));\ni__4772__auto___50056 \x3d G__50057;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn shadow.object.define.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(shadow.object.define.cljs$core$IFn$_invoke$arity$variadic \x3d (function (id,args){\nif((id instanceof cljs.core.Keyword)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22object id needs to be a keyword\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),id,new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),args], null));\n}\n\nif(cljs.core.even_QMARK_(cljs.core.count(args))){\n} else {\nthrow [\x22invalid object definition \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(id),\x22 args: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([args], 0))].join(\x27\x27);\n}\n\nif(cljs.core.contains_QMARK_(cljs.core.deref(shadow.object.object_defs),id)){\nconsole.warn([\x22object already defined \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(id)].join(\x27\x27));\n} else {\n}\n\ntry{var odef \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,args);\nvar reactions \x3d shadow.object.merge_reactions(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22on\x22,\x22on\x22,173873944).cljs$core$IFn$_invoke$arity$2(odef,cljs.core.PersistentVector.EMPTY));\nvar odef__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(odef,new cljs.core.Keyword(\x22shadow.object\x22,\x22id\x22,\x22shadow.object/id\x22,-647954841),id,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633),reactions], 0));\nvar odef__$2 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(shadow.object.merge_behaviors,odef__$1,cljs.core.reverse(new cljs.core.Keyword(null,\x22behaviors\x22,\x22behaviors\x22,120724909).cljs$core$IFn$_invoke$arity$2(odef__$1,cljs.core.PersistentVector.EMPTY)));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(shadow.object.object_defs,cljs.core.assoc,id,odef__$2);\n\nreturn odef__$2;\n}catch (e49094){if((e49094 instanceof Object)){\nvar e \x3d e49094;\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22failed to define object\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),id,new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),args], null));\n} else {\nthrow e49094;\n\n}\n}}));\n\n(shadow.object.define.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(shadow.object.define.cljs$lang$applyTo \x3d (function (seq49066){\nvar G__49067 \x3d cljs.core.first(seq49066);\nvar seq49066__$1 \x3d cljs.core.next(seq49066);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__49067,seq49066__$1);\n}));\n\nshadow.object.merge_defaults \x3d (function shadow$object$merge_defaults(data,type){\nvar defaults \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.object_defs),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [type,new cljs.core.Keyword(null,\x22defaults\x22,\x22defaults\x22,976027214)], null));\nif((defaults \x3d\x3d null)){\nreturn data;\n} else {\nif(cljs.core.map_QMARK_(defaults)){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([defaults,data], 0));\n} else {\nif(cljs.core.fn_QMARK_(defaults)){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(defaults.cljs$core$IFn$_invoke$arity$0 ? defaults.cljs$core$IFn$_invoke$arity$0() : defaults.call(null)),data], 0));\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid object defaults\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22defaults\x22,\x22defaults\x22,976027214),defaults,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),type], null));\n\n}\n}\n}\n});\nshadow.object.make_dom \x3d (function shadow$object$make_dom(var_args){\nvar G__49140 \x3d arguments.length;\nswitch (G__49140) {\ncase 3:\nreturn shadow.object.make_dom.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.object.make_dom.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.make_dom.cljs$core$IFn$_invoke$arity$3 \x3d (function (oref,dom_key,events_key){\nreturn shadow.object.make_dom.cljs$core$IFn$_invoke$arity$4(oref,dom_key,events_key,null);\n}));\n\n(shadow.object.make_dom.cljs$core$IFn$_invoke$arity$4 \x3d (function (oref,dom_key,events_key,value){\nvar dom_fn \x3d (((dom_key instanceof cljs.core.Keyword))?shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$2(oref,dom_key):dom_key);\nvar events \x3d (((events_key instanceof cljs.core.Keyword))?shadow.object.get_type_attr.cljs$core$IFn$_invoke$arity$3(oref,events_key,cljs.core.PersistentVector.EMPTY):events_key);\nvar dom \x3d (function (){var G__49168 \x3d (dom_fn.cljs$core$IFn$_invoke$arity$2 ? dom_fn.cljs$core$IFn$_invoke$arity$2(oref,value) : dom_fn.call(null,oref,value));\nreturn (shadow.dom.build.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.build.cljs$core$IFn$_invoke$arity$1(G__49168) : shadow.dom.build.call(null,G__49168));\n})();\nshadow.object.bind_dom_events(oref,dom,events);\n\nreturn dom;\n}));\n\n(shadow.object.make_dom.cljs$lang$maxFixedArity \x3d 4);\n\nshadow.object.alive_QMARK_ \x3d (function shadow$object$alive_QMARK_(obj){\nreturn cljs.core.contains_QMARK_(cljs.core.deref(shadow.object.instances),shadow.object._id(obj));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nshadow.object.Watch \x3d (function (key,handler,__meta,__extmap,__hash){\nthis.key \x3d key;\nthis.handler \x3d handler;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(shadow.object.Watch.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(shadow.object.Watch.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k49188,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__49224 \x3d k49188;\nvar G__49224__$1 \x3d (((G__49224 instanceof cljs.core.Keyword))?G__49224.fqn:null);\nswitch (G__49224__$1) {\ncase \x22key\x22:\nreturn self__.key;\n\nbreak;\ncase \x22handler\x22:\nreturn self__.handler;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k49188,else__4418__auto__);\n\n}\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__49228){\nvar vec__49232 \x3d p__49228;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49232,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49232,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#shadow.object.Watch{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),self__.key],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612),self__.handler],null))], null),self__.__extmap));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__49187){\nvar self__ \x3d this;\nvar G__49187__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__49187__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(shadow.object.Watch.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new shadow.object.Watch(self__.key,self__.handler,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (2 + cljs.core.count(self__.__extmap));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-17677043 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this49189,other49190){\nvar self__ \x3d this;\nvar this49189__$1 \x3d this;\nreturn (((!((other49190 \x3d\x3d null)))) \x26\x26 ((this49189__$1.constructor \x3d\x3d\x3d other49190.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this49189__$1.key,other49190.key)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this49189__$1.handler,other49190.handler)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this49189__$1.__extmap,other49190.__extmap)));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),null,new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new shadow.object.Watch(self__.key,self__.handler,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__49187){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__49276 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__49277 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__49276.cljs$core$IFn$_invoke$arity$2 ? pred__49276.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),expr__49277) : pred__49276.call(null,new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),expr__49277)))){\nreturn (new shadow.object.Watch(G__49187,self__.handler,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__49276.cljs$core$IFn$_invoke$arity$2 ? pred__49276.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612),expr__49277) : pred__49276.call(null,new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612),expr__49277)))){\nreturn (new shadow.object.Watch(self__.key,G__49187,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new shadow.object.Watch(self__.key,self__.handler,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__49187),null));\n}\n}\n}));\n\n(shadow.object.Watch.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),self__.key,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612),self__.handler,null))], null),self__.__extmap));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__49187){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new shadow.object.Watch(self__.key,self__.handler,G__49187,self__.__extmap,self__.__hash));\n}));\n\n(shadow.object.Watch.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(shadow.object.Watch.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22handler\x22,\x22handler\x22,1444934915,null)], null);\n}));\n\n(shadow.object.Watch.cljs$lang$type \x3d true);\n\n(shadow.object.Watch.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22shadow.object/Watch\x22,null,(1),null));\n}));\n\n(shadow.object.Watch.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22shadow.object/Watch\x22);\n}));\n\n/**\n * Positional factory function for shadow.object/Watch.\n */\nshadow.object.__GT_Watch \x3d (function shadow$object$__GT_Watch(key,handler){\nreturn (new shadow.object.Watch(key,handler,null,null,null));\n});\n\n/**\n * Factory function for shadow.object/Watch, taking a map of keywords to field values.\n */\nshadow.object.map__GT_Watch \x3d (function shadow$object$map__GT_Watch(G__49203){\nvar extmap__4454__auto__ \x3d (function (){var G__49310 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__49203,new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612)], 0));\nif(cljs.core.record_QMARK_(G__49203)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__49310);\n} else {\nreturn G__49310;\n}\n})();\nreturn (new shadow.object.Watch(new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587).cljs$core$IFn$_invoke$arity$1(G__49203),new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612).cljs$core$IFn$_invoke$arity$1(G__49203),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IWatchable}\n * @implements {cljs.core.IEquiv}\n * @implements {shadow.object.IObject}\n * @implements {cljs.core.async.impl.protocols.ReadPort}\n * @implements {cljs.core.IDeref}\n * @implements {shadow.dom.IElement}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {shadow.dom.SVGElement}\n * @implements {cljs.core.ILookup}\n*/\nshadow.object.ObjectRef \x3d (function (id,type,data,watches,result_chan){\nthis.id \x3d id;\nthis.type \x3d type;\nthis.data \x3d data;\nthis.watches \x3d watches;\nthis.result_chan \x3d result_chan;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2149613824;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 2;\n});\n(shadow.object.ObjectRef.prototype.cljs$core$async$impl$protocols$ReadPort$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.object.ObjectRef.prototype.cljs$core$async$impl$protocols$ReadPort$take_BANG_$arity$2 \x3d (function (this$,handler){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core.async.impl.protocols.take_BANG_(self__.result_chan,handler);\n}));\n\n(shadow.object.ObjectRef.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([this$], 0));\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this$,k){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),k)){\nreturn shadow.object.get_parent(this$__$1);\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(self__.data,k);\n}\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this$,k,d){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),k)){\nreturn shadow.object.get_parent(this$__$1);\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.data,k,d);\n}\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this$,writer,opts){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core._write(writer,[\x22#\x3cObjectRef {:id \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.id),\x22, :type \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.type),\x22}\x3e\x22].join(\x27\x27));\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$dom$SVGElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.object.ObjectRef.prototype.shadow$dom$SVGElement$_to_svg$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311).cljs$core$IFn$_invoke$arity$1(self__.data);\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (((other instanceof shadow.object.ObjectRef)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this$__$1.shadow$object$IObject$_id$arity$1(null),other.shadow$object$IObject$_id$arity$1(null))));\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$dom$IElement$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.object.ObjectRef.prototype.shadow$dom$IElement$_to_dom$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311).cljs$core$IFn$_invoke$arity$1(self__.data);\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$IWatchable$_notify_watches$arity$3 \x3d (function (this$,oldval,newval){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nthrow (new Error(\x22who be calling?\x22));\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$IWatchable$_add_watch$arity$3 \x3d (function (this$,key,f){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (self__.watches \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(self__.watches,(new shadow.object.Watch(key,f,null,null,null))));\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$IWatchable$_remove_watch$arity$2 \x3d (function (this$,key){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (self__.watches \x3d cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p1__49316_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(key,new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587).cljs$core$IFn$_invoke$arity$1(p1__49316_SHARP_));\n}),self__.watches));\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$object$IObject$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.object.ObjectRef.prototype.shadow$object$IObject$_id$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.id;\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$object$IObject$_type$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.type;\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$object$IObject$_data$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.data;\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$object$IObject$_update$arity$2 \x3d (function (this$,update_fn){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar old \x3d self__.data;\nvar new$ \x3d (update_fn.cljs$core$IFn$_invoke$arity$1 ? update_fn.cljs$core$IFn$_invoke$arity$1(self__.data) : update_fn.call(null,self__.data));\n(self__.data \x3d new$);\n\nvar seq__49328 \x3d cljs.core.seq(self__.watches);\nvar chunk__49329 \x3d null;\nvar count__49330 \x3d (0);\nvar i__49331 \x3d (0);\nwhile(true){\nif((i__49331 \x3c count__49330)){\nvar map__49334 \x3d chunk__49329.cljs$core$IIndexed$_nth$arity$2(null,i__49331);\nvar map__49334__$1 \x3d cljs.core.__destructure_map(map__49334);\nvar watch \x3d map__49334__$1;\nvar key \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49334__$1,new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587));\nvar handler \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49334__$1,new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612));\nif(shadow.object.alive_QMARK_(this$__$1)){\n(handler.cljs$core$IFn$_invoke$arity$4 ? handler.cljs$core$IFn$_invoke$arity$4(key,this$__$1,old,new$) : handler.call(null,key,this$__$1,old,new$));\n} else {\n}\n\n\nvar G__50184 \x3d seq__49328;\nvar G__50185 \x3d chunk__49329;\nvar G__50186 \x3d count__49330;\nvar G__50187 \x3d (i__49331 + (1));\nseq__49328 \x3d G__50184;\nchunk__49329 \x3d G__50185;\ncount__49330 \x3d G__50186;\ni__49331 \x3d G__50187;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__49328);\nif(temp__5753__auto__){\nvar seq__49328__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__49328__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__49328__$1);\nvar G__50189 \x3d cljs.core.chunk_rest(seq__49328__$1);\nvar G__50190 \x3d c__4591__auto__;\nvar G__50191 \x3d cljs.core.count(c__4591__auto__);\nvar G__50192 \x3d (0);\nseq__49328 \x3d G__50189;\nchunk__49329 \x3d G__50190;\ncount__49330 \x3d G__50191;\ni__49331 \x3d G__50192;\ncontinue;\n} else {\nvar map__49336 \x3d cljs.core.first(seq__49328__$1);\nvar map__49336__$1 \x3d cljs.core.__destructure_map(map__49336);\nvar watch \x3d map__49336__$1;\nvar key \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49336__$1,new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587));\nvar handler \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49336__$1,new cljs.core.Keyword(null,\x22handler\x22,\x22handler\x22,-195596612));\nif(shadow.object.alive_QMARK_(this$__$1)){\n(handler.cljs$core$IFn$_invoke$arity$4 ? handler.cljs$core$IFn$_invoke$arity$4(key,this$__$1,old,new$) : handler.call(null,key,this$__$1,old,new$));\n} else {\n}\n\n\nvar G__50236 \x3d cljs.core.next(seq__49328__$1);\nvar G__50237 \x3d null;\nvar G__50238 \x3d (0);\nvar G__50239 \x3d (0);\nseq__49328 \x3d G__50236;\nchunk__49329 \x3d G__50237;\ncount__49330 \x3d G__50238;\ni__49331 \x3d G__50239;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(shadow.object.ObjectRef.prototype.shadow$object$IObject$_destroy_BANG_$arity$2 \x3d (function (this$,cause){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar parent_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.instance_parent),self__.id);\nvar seq__49341_50240 \x3d cljs.core.seq(shadow.object.get_children(this$__$1));\nvar chunk__49342_50241 \x3d null;\nvar count__49343_50242 \x3d (0);\nvar i__49344_50243 \x3d (0);\nwhile(true){\nif((i__49344_50243 \x3c count__49343_50242)){\nvar child_50244 \x3d chunk__49342_50241.cljs$core$IIndexed$_nth$arity$2(null,i__49344_50243);\nshadow.object._destroy_BANG_(child_50244,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779));\n\n\nvar G__50245 \x3d seq__49341_50240;\nvar G__50246 \x3d chunk__49342_50241;\nvar G__50247 \x3d count__49343_50242;\nvar G__50248 \x3d (i__49344_50243 + (1));\nseq__49341_50240 \x3d G__50245;\nchunk__49342_50241 \x3d G__50246;\ncount__49343_50242 \x3d G__50247;\ni__49344_50243 \x3d G__50248;\ncontinue;\n} else {\nvar temp__5753__auto___50249 \x3d cljs.core.seq(seq__49341_50240);\nif(temp__5753__auto___50249){\nvar seq__49341_50250__$1 \x3d temp__5753__auto___50249;\nif(cljs.core.chunked_seq_QMARK_(seq__49341_50250__$1)){\nvar c__4591__auto___50251 \x3d cljs.core.chunk_first(seq__49341_50250__$1);\nvar G__50252 \x3d cljs.core.chunk_rest(seq__49341_50250__$1);\nvar G__50253 \x3d c__4591__auto___50251;\nvar G__50254 \x3d cljs.core.count(c__4591__auto___50251);\nvar G__50255 \x3d (0);\nseq__49341_50240 \x3d G__50252;\nchunk__49342_50241 \x3d G__50253;\ncount__49343_50242 \x3d G__50254;\ni__49344_50243 \x3d G__50255;\ncontinue;\n} else {\nvar child_50256 \x3d cljs.core.first(seq__49341_50250__$1);\nshadow.object._destroy_BANG_(child_50256,new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779));\n\n\nvar G__50257 \x3d cljs.core.next(seq__49341_50250__$1);\nvar G__50258 \x3d null;\nvar G__50259 \x3d (0);\nvar G__50260 \x3d (0);\nseq__49341_50240 \x3d G__50257;\nchunk__49342_50241 \x3d G__50258;\ncount__49343_50242 \x3d G__50259;\ni__49344_50243 \x3d G__50260;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nshadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic(this$__$1,new cljs.core.Keyword(null,\x22destroy\x22,\x22destroy\x22,-843660405),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cause], 0));\n\nshadow.object.dom_destroy(this$__$1,cause);\n\nvar return_value_50261 \x3d new cljs.core.Keyword(\x22shadow.object\x22,\x22return-value\x22,\x22shadow.object/return-value\x22,1397593360).cljs$core$IFn$_invoke$arity$1(this$__$1);\nif((return_value_50261 \x3d\x3d null)){\n} else {\ncljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2(self__.result_chan,return_value_50261);\n}\n\ncljs.core.async.close_BANG_(self__.result_chan);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(shadow.object.instances,cljs.core.dissoc,self__.id);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(shadow.object.instance_parent,cljs.core.dissoc,self__.id);\n\nif(cljs.core.truth_(parent_id)){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(shadow.object.instance_children,cljs.core.update_in,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [parent_id], null),cljs.core.disj,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.id], 0));\n} else {\nreturn null;\n}\n}));\n\n(shadow.object.ObjectRef.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.data;\n}));\n\n(shadow.object.ObjectRef.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22id\x22,\x22id\x22,252129435,null),new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22watches\x22,\x22watches\x22,1367433992,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22result-chan\x22,\x22result-chan\x22,3070926,null)], null);\n}));\n\n(shadow.object.ObjectRef.cljs$lang$type \x3d true);\n\n(shadow.object.ObjectRef.cljs$lang$ctorStr \x3d \x22shadow.object/ObjectRef\x22);\n\n(shadow.object.ObjectRef.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.object/ObjectRef\x22);\n}));\n\n/**\n * Positional factory function for shadow.object/ObjectRef.\n */\nshadow.object.__GT_ObjectRef \x3d (function shadow$object$__GT_ObjectRef(id,type,data,watches,result_chan){\nreturn (new shadow.object.ObjectRef(id,type,data,watches,result_chan));\n});\n\nshadow.object.add_reaction_BANG_ \x3d (function shadow$object$add_reaction_BANG_(var_args){\nvar G__49351 \x3d arguments.length;\nswitch (G__49351) {\ncase 3:\nreturn shadow.object.add_reaction_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 2:\nreturn shadow.object.add_reaction_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.add_reaction_BANG_.cljs$core$IFn$_invoke$arity$3 \x3d (function (oref,ev,handler_fn){\nreturn shadow.object.add_reaction_BANG_.cljs$core$IFn$_invoke$arity$2(oref,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ev,handler_fn], null));\n}));\n\n(shadow.object.add_reaction_BANG_.cljs$core$IFn$_invoke$arity$2 \x3d (function (oref,list){\nreturn shadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic(oref,cljs.core.update_in,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633)], null),shadow.object.merge_reactions,list], 0));\n}));\n\n(shadow.object.add_reaction_BANG_.cljs$lang$maxFixedArity \x3d 3);\n\nshadow.object.bind_change \x3d (function shadow$object$bind_change(var_args){\nvar G__49357 \x3d arguments.length;\nswitch (G__49357) {\ncase 3:\nreturn shadow.object.bind_change.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.object.bind_change.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.bind_change.cljs$core$IFn$_invoke$arity$3 \x3d (function (oref,attr,callback){\nreturn shadow.object.bind_change.cljs$core$IFn$_invoke$arity$4(oref,attr,callback,cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22bind-change\x22));\n}));\n\n(shadow.object.bind_change.cljs$core$IFn$_invoke$arity$4 \x3d (function (oref,attr,callback,watch_key){\nif((((!((oref \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d oref.shadow$object$IObject$))))?true:(((!oref.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(shadow.object.IObject,oref):false)):cljs.core.native_satisfies_QMARK_(shadow.object.IObject,oref))){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22binding currently only supports shadow objects, other atoms might leak, may add later\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22oref\x22,\x22oref\x22,-1547494840),oref,new cljs.core.Keyword(null,\x22attr\x22,\x22attr\x22,-604132353),attr], null));\n}\n\nvar attr__$1 \x3d ((cljs.core.sequential_QMARK_(attr))?attr:new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [attr], null));\nreturn cljs.core.add_watch(oref,watch_key,(function shadow$object$bind_change_watch(_,___$1,old,new$){\nvar ov \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(old,attr__$1);\nvar nv \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(new$,attr__$1);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ov,nv)){\nreturn null;\n} else {\nreturn (callback.cljs$core$IFn$_invoke$arity$2 ? callback.cljs$core$IFn$_invoke$arity$2(ov,nv) : callback.call(null,ov,nv));\n}\n}));\n}));\n\n(shadow.object.bind_change.cljs$lang$maxFixedArity \x3d 4);\n\nshadow.object.dom_enter \x3d (function shadow$object$dom_enter(parent,child){\nshadow.dom.append.cljs$core$IFn$_invoke$arity$2(parent,child);\n\nif(cljs.core.truth_(shadow.dom.contains_QMARK_.cljs$core$IFn$_invoke$arity$1(parent))){\nreturn shadow.object.notify_tree_BANG_(child,new cljs.core.Keyword(\x22dom\x22,\x22entered\x22,\x22dom/entered\x22,506699596));\n} else {\nreturn null;\n}\n});\nshadow.object.create \x3d (function shadow$object$create(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___50278 \x3d arguments.length;\nvar i__4772__auto___50279 \x3d (0);\nwhile(true){\nif((i__4772__auto___50279 \x3c len__4771__auto___50278)){\nargs__4777__auto__.push((arguments[i__4772__auto___50279]));\n\nvar G__50281 \x3d (i__4772__auto___50279 + (1));\ni__4772__auto___50279 \x3d G__50281;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn shadow.object.create.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(shadow.object.create.cljs$core$IFn$_invoke$arity$variadic \x3d (function (type,args,node_children){\nif(cljs.core.contains_QMARK_(cljs.core.deref(shadow.object.object_defs),type)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2([\x22cannot create unknown child type: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(type)].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),type,new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),args], null));\n}\n\nif(cljs.core.map_QMARK_(args)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22so/create second arg must be a map\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),args], null));\n}\n\nvar oid \x3d shadow.object.next_id();\nvar parent \x3d new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779).cljs$core$IFn$_invoke$arity$1(args);\nvar result_chan \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\nvar odef \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.object.object_defs),type);\nvar obj \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(shadow.object.merge_defaults(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(args,new cljs.core.Keyword(\x22shadow.object\x22,\x22object-id\x22,\x22shadow.object/object-id\x22,-685993804),oid,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633),cljs.core.get.cljs$core$IFn$_invoke$arity$3(odef,new cljs.core.Keyword(\x22shadow.object\x22,\x22reactions\x22,\x22shadow.object/reactions\x22,1966199633),cljs.core.PersistentArrayMap.EMPTY)], 0)),type),new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22dom\x22,\x22dom\x22,-1236537922)], 0));\nvar oref \x3d (new shadow.object.ObjectRef(oid,type,obj,cljs.core.PersistentVector.EMPTY,result_chan));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(shadow.object.instances,cljs.core.assoc,oid,oref);\n\nif(cljs.core.truth_(parent)){\nshadow.object.set_parent_BANG_(oref,parent);\n} else {\n}\n\nshadow.object.notify_BANG_(oref,new cljs.core.Keyword(null,\x22init\x22,\x22init\x22,-1875481434));\n\nvar dom_events_50291 \x3d new cljs.core.Keyword(\x22dom\x22,\x22events\x22,\x22dom/events\x22,1793437527).cljs$core$IFn$_invoke$arity$2(odef,cljs.core.PersistentVector.EMPTY);\nvar temp__5751__auto___50292 \x3d new cljs.core.Keyword(null,\x22dom\x22,\x22dom\x22,-1236537922).cljs$core$IFn$_invoke$arity$1(args);\nif(cljs.core.truth_(temp__5751__auto___50292)){\nvar dom_50294 \x3d temp__5751__auto___50292;\nshadow.dom.set_data(dom_50294,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid);\n\nshadow.object.bind_dom_events(oref,dom_50294,dom_events_50291);\n\nshadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic(oref,cljs.core.assoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311),dom_50294], 0));\n\nshadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic(oref,new cljs.core.Keyword(\x22dom\x22,\x22init\x22,\x22dom/init\x22,-1875647652),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([dom_50294], 0));\n} else {\nvar temp__5753__auto___50295 \x3d new cljs.core.Keyword(null,\x22dom\x22,\x22dom\x22,-1236537922).cljs$core$IFn$_invoke$arity$1(odef);\nif(cljs.core.truth_(temp__5753__auto___50295)){\nvar dom_fn_50297 \x3d temp__5753__auto___50295;\nvar dom_50298 \x3d (function (){var G__49387 \x3d (dom_fn_50297.cljs$core$IFn$_invoke$arity$2 ? dom_fn_50297.cljs$core$IFn$_invoke$arity$2(oref,node_children) : dom_fn_50297.call(null,oref,node_children));\nreturn (shadow.dom.build.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.build.cljs$core$IFn$_invoke$arity$1(G__49387) : shadow.dom.build.call(null,G__49387));\n})();\nshadow.dom.set_data(dom_50298,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid);\n\nshadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic(oref,cljs.core.assoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.object\x22,\x22dom\x22,\x22shadow.object/dom\x22,-1238263311),dom_50298], 0));\n\nshadow.object.bind_dom_events(oref,dom_50298,dom_events_50291);\n\nshadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic(oref,new cljs.core.Keyword(\x22dom\x22,\x22init\x22,\x22dom/init\x22,-1875647652),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([dom_50298], 0));\n} else {\n}\n}\n\nvar temp__5753__auto___50300 \x3d new cljs.core.Keyword(null,\x22watch\x22,\x22watch\x22,380988277).cljs$core$IFn$_invoke$arity$1(odef);\nif(cljs.core.truth_(temp__5753__auto___50300)){\nvar watches_50301 \x3d temp__5753__auto___50300;\nvar seq__49390_50302 \x3d cljs.core.seq(cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),watches_50301));\nvar chunk__49391_50303 \x3d null;\nvar count__49392_50304 \x3d (0);\nvar i__49393_50305 \x3d (0);\nwhile(true){\nif((i__49393_50305 \x3c count__49392_50304)){\nvar vec__49413_50306 \x3d chunk__49391_50303.cljs$core$IIndexed$_nth$arity$2(null,i__49393_50305);\nvar attr_50307 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49413_50306,(0),null);\nvar handler_50308 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49413_50306,(1),null);\nshadow.object.bind_change.cljs$core$IFn$_invoke$arity$3(oref,attr_50307,((function (seq__49390_50302,chunk__49391_50303,count__49392_50304,i__49393_50305,vec__49413_50306,attr_50307,handler_50308,watches_50301,temp__5753__auto___50300,oid,parent,result_chan,odef,obj,oref){\nreturn (function (old,new$){\nreturn (handler_50308.cljs$core$IFn$_invoke$arity$3 ? handler_50308.cljs$core$IFn$_invoke$arity$3(oref,old,new$) : handler_50308.call(null,oref,old,new$));\n});})(seq__49390_50302,chunk__49391_50303,count__49392_50304,i__49393_50305,vec__49413_50306,attr_50307,handler_50308,watches_50301,temp__5753__auto___50300,oid,parent,result_chan,odef,obj,oref))\n);\n\n\nvar G__50309 \x3d seq__49390_50302;\nvar G__50310 \x3d chunk__49391_50303;\nvar G__50311 \x3d count__49392_50304;\nvar G__50312 \x3d (i__49393_50305 + (1));\nseq__49390_50302 \x3d G__50309;\nchunk__49391_50303 \x3d G__50310;\ncount__49392_50304 \x3d G__50311;\ni__49393_50305 \x3d G__50312;\ncontinue;\n} else {\nvar temp__5753__auto___50313__$1 \x3d cljs.core.seq(seq__49390_50302);\nif(temp__5753__auto___50313__$1){\nvar seq__49390_50314__$1 \x3d temp__5753__auto___50313__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__49390_50314__$1)){\nvar c__4591__auto___50315 \x3d cljs.core.chunk_first(seq__49390_50314__$1);\nvar G__50316 \x3d cljs.core.chunk_rest(seq__49390_50314__$1);\nvar G__50317 \x3d c__4591__auto___50315;\nvar G__50318 \x3d cljs.core.count(c__4591__auto___50315);\nvar G__50319 \x3d (0);\nseq__49390_50302 \x3d G__50316;\nchunk__49391_50303 \x3d G__50317;\ncount__49392_50304 \x3d G__50318;\ni__49393_50305 \x3d G__50319;\ncontinue;\n} else {\nvar vec__49422_50320 \x3d cljs.core.first(seq__49390_50314__$1);\nvar attr_50321 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49422_50320,(0),null);\nvar handler_50322 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49422_50320,(1),null);\nshadow.object.bind_change.cljs$core$IFn$_invoke$arity$3(oref,attr_50321,((function (seq__49390_50302,chunk__49391_50303,count__49392_50304,i__49393_50305,vec__49422_50320,attr_50321,handler_50322,seq__49390_50314__$1,temp__5753__auto___50313__$1,watches_50301,temp__5753__auto___50300,oid,parent,result_chan,odef,obj,oref){\nreturn (function (old,new$){\nreturn (handler_50322.cljs$core$IFn$_invoke$arity$3 ? handler_50322.cljs$core$IFn$_invoke$arity$3(oref,old,new$) : handler_50322.call(null,oref,old,new$));\n});})(seq__49390_50302,chunk__49391_50303,count__49392_50304,i__49393_50305,vec__49422_50320,attr_50321,handler_50322,seq__49390_50314__$1,temp__5753__auto___50313__$1,watches_50301,temp__5753__auto___50300,oid,parent,result_chan,odef,obj,oref))\n);\n\n\nvar G__50325 \x3d cljs.core.next(seq__49390_50314__$1);\nvar G__50326 \x3d null;\nvar G__50327 \x3d (0);\nvar G__50328 \x3d (0);\nseq__49390_50302 \x3d G__50325;\nchunk__49391_50303 \x3d G__50326;\ncount__49392_50304 \x3d G__50327;\ni__49393_50305 \x3d G__50328;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n} else {\n}\n\nreturn oref;\n}));\n\n(shadow.object.create.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(shadow.object.create.cljs$lang$applyTo \x3d (function (seq49374){\nvar G__49375 \x3d cljs.core.first(seq49374);\nvar seq49374__$1 \x3d cljs.core.next(seq49374);\nvar G__49376 \x3d cljs.core.first(seq49374__$1);\nvar seq49374__$2 \x3d cljs.core.next(seq49374__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__49375,G__49376,seq49374__$2);\n}));\n\n/**\n * [oref attr node-gen] produces a node via (node-gen new-value)\n * watches obj for changes and replaces the generated node on change (node-gen defaults to str)\n * \n *   only use if the node has no attached behavior like clicks, use bind with an extra object for those\n */\nshadow.object.bind_simple \x3d (function shadow$object$bind_simple(var_args){\nvar G__49435 \x3d arguments.length;\nswitch (G__49435) {\ncase 2:\nreturn shadow.object.bind_simple.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn shadow.object.bind_simple.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.bind_simple.cljs$core$IFn$_invoke$arity$2 \x3d (function (oref,attr){\nreturn shadow.object.bind_simple.cljs$core$IFn$_invoke$arity$3(oref,attr,cljs.core.str);\n}));\n\n(shadow.object.bind_simple.cljs$core$IFn$_invoke$arity$3 \x3d (function (oref,attr,node_gen){\nvar attr__$1 \x3d ((cljs.core.sequential_QMARK_(attr))?attr:new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [attr], null));\nvar node_get \x3d (function (p1__49431_SHARP_){\nvar G__49446 \x3d (node_gen.cljs$core$IFn$_invoke$arity$1 ? node_gen.cljs$core$IFn$_invoke$arity$1(p1__49431_SHARP_) : node_gen.call(null,p1__49431_SHARP_));\nreturn (shadow.dom.build.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.build.cljs$core$IFn$_invoke$arity$1(G__49446) : shadow.dom.build.call(null,G__49446));\n});\nvar node \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(node_get(cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(oref,attr__$1)));\nvar bind_key \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22bind\x22);\nshadow.object.bind_change.cljs$core$IFn$_invoke$arity$3(oref,attr__$1,(function (old,new$){\nvar new_node \x3d node_get(new$);\nvar current_node \x3d cljs.core.deref(node);\nshadow.dom.replace_node(current_node,new_node);\n\nreturn cljs.core.reset_BANG_(node,new_node);\n}));\n\nreturn cljs.core.deref(node);\n}));\n\n(shadow.object.bind_simple.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * bind the given attribute a child item\n *   the item will be recreated whenever the value changes (old one will be destroyed)\n */\nshadow.object.bind \x3d (function shadow$object$bind(oref,attr,item_type,item_key,item_attrs){\nvar attr__$1 \x3d ((cljs.core.sequential_QMARK_(attr))?attr:new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [attr], null));\nvar curval \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(oref,attr__$1);\nvar make_child_fn \x3d (function (value){\nreturn shadow.object.create(item_type,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([item_attrs,cljs.core.PersistentArrayMap.createAsIfByAssoc([new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),oref,item_key,value])], 0)));\n});\nvar child \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(make_child_fn(curval));\nshadow.object.bind_change.cljs$core$IFn$_invoke$arity$3(oref,attr__$1,(function (old,new$){\nvar new_child \x3d make_child_fn(new$);\nvar current_node \x3d cljs.core.deref(child);\nshadow.dom.replace_node(current_node,new_child);\n\nshadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(child));\n\ncljs.core.reset_BANG_(child,new_child);\n\nreturn (shadow.object.notify_down_BANG_.cljs$core$IFn$_invoke$arity$2 ? shadow.object.notify_down_BANG_.cljs$core$IFn$_invoke$arity$2(new_child,new cljs.core.Keyword(\x22dom\x22,\x22entered\x22,\x22dom/entered\x22,506699596)) : shadow.object.notify_down_BANG_.call(null,new_child,new cljs.core.Keyword(\x22dom\x22,\x22entered\x22,\x22dom/entered\x22,506699596)));\n}));\n\nreturn cljs.core.deref(child);\n});\nshadow.object.coll_destroy_children \x3d (function shadow$object$coll_destroy_children(children,c,diff){\nvar seq__49488_50347 \x3d cljs.core.seq(cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(children,(c + diff),c));\nvar chunk__49489_50348 \x3d null;\nvar count__49490_50349 \x3d (0);\nvar i__49491_50350 \x3d (0);\nwhile(true){\nif((i__49491_50350 \x3c count__49490_50349)){\nvar obj_50351 \x3d chunk__49489_50348.cljs$core$IIndexed$_nth$arity$2(null,i__49491_50350);\nvar obj_50352__$1 \x3d shadow.object.get_from_dom(obj_50351);\nshadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$1(obj_50352__$1);\n\n\nvar G__50353 \x3d seq__49488_50347;\nvar G__50354 \x3d chunk__49489_50348;\nvar G__50355 \x3d count__49490_50349;\nvar G__50356 \x3d (i__49491_50350 + (1));\nseq__49488_50347 \x3d G__50353;\nchunk__49489_50348 \x3d G__50354;\ncount__49490_50349 \x3d G__50355;\ni__49491_50350 \x3d G__50356;\ncontinue;\n} else {\nvar temp__5753__auto___50357 \x3d cljs.core.seq(seq__49488_50347);\nif(temp__5753__auto___50357){\nvar seq__49488_50358__$1 \x3d temp__5753__auto___50357;\nif(cljs.core.chunked_seq_QMARK_(seq__49488_50358__$1)){\nvar c__4591__auto___50359 \x3d cljs.core.chunk_first(seq__49488_50358__$1);\nvar G__50360 \x3d cljs.core.chunk_rest(seq__49488_50358__$1);\nvar G__50361 \x3d c__4591__auto___50359;\nvar G__50362 \x3d cljs.core.count(c__4591__auto___50359);\nvar G__50363 \x3d (0);\nseq__49488_50347 \x3d G__50360;\nchunk__49489_50348 \x3d G__50361;\ncount__49490_50349 \x3d G__50362;\ni__49491_50350 \x3d G__50363;\ncontinue;\n} else {\nvar obj_50364 \x3d cljs.core.first(seq__49488_50358__$1);\nvar obj_50365__$1 \x3d shadow.object.get_from_dom(obj_50364);\nshadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$1(obj_50365__$1);\n\n\nvar G__50366 \x3d cljs.core.next(seq__49488_50358__$1);\nvar G__50367 \x3d null;\nvar G__50368 \x3d (0);\nvar G__50369 \x3d (0);\nseq__49488_50347 \x3d G__50366;\nchunk__49489_50348 \x3d G__50367;\ncount__49490_50349 \x3d G__50368;\ni__49491_50350 \x3d G__50369;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(children,(0),(c + diff));\n});\nshadow.object.bind_children \x3d (function shadow$object$bind_children(var_args){\nvar G__49507 \x3d arguments.length;\nswitch (G__49507) {\ncase 5:\nreturn shadow.object.bind_children.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn shadow.object.bind_children.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.object.bind_children.cljs$core$IFn$_invoke$arity$5 \x3d (function (node,parent,attr,item_type,item_key){\nreturn shadow.object.bind_children.cljs$core$IFn$_invoke$arity$6(node,parent,attr,item_type,item_key,(function (p1__49501_SHARP_){\nreturn cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$2(cljs.core.vector,p1__49501_SHARP_);\n}));\n}));\n\n(shadow.object.bind_children.cljs$core$IFn$_invoke$arity$6 \x3d (function (node,parent,attr,item_type,item_key,coll_transform){\nvar attr__$1 \x3d ((cljs.core.sequential_QMARK_(attr))?attr:new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [attr], null));\nvar update_children \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(true);\nvar coll_dom \x3d (shadow.dom.build.cljs$core$IFn$_invoke$arity$1 ? shadow.dom.build.cljs$core$IFn$_invoke$arity$1(node) : shadow.dom.build.call(null,node));\nvar make_item_fn \x3d (function (p__49514){\nvar vec__49516 \x3d p__49514;\nvar key \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49516,(0),null);\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49516,(1),null);\nvar obj \x3d shadow.object.create(item_type,cljs.core.PersistentArrayMap.createAsIfByAssoc([new cljs.core.Keyword(null,\x22parent\x22,\x22parent\x22,-878878779),parent,new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-path\x22,\x22shadow.object/coll-path\x22,1583850048),attr__$1,new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-key\x22,\x22shadow.object/coll-key\x22,827543616),key,new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-item-key\x22,\x22shadow.object/coll-item-key\x22,1888444366),item_key,item_key,val]));\nshadow.object.bind_change.cljs$core$IFn$_invoke$arity$3(obj,item_key,(function (old,new$){\nvar parent_key \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(attr__$1,new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-key\x22,\x22shadow.object/coll-key\x22,827543616).cljs$core$IFn$_invoke$arity$1(obj));\n(shadow.object.log.cljs$core$IFn$_invoke$arity$6 ? shadow.object.log.cljs$core$IFn$_invoke$arity$6(\x22direct child update\x22,parent,obj,key,parent_key,new$) : shadow.object.log.call(null,\x22direct child update\x22,parent,obj,key,parent_key,new$));\n\ncljs.core.reset_BANG_(update_children,false);\n\nshadow.object.update_BANG_.cljs$core$IFn$_invoke$arity$variadic(parent,cljs.core.assoc_in,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([parent_key,new$], 0));\n\nreturn cljs.core.reset_BANG_(update_children,true);\n}));\n\nreturn obj;\n});\nvar seq__49526_50409 \x3d cljs.core.seq((function (){var G__49538 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(parent,attr__$1);\nreturn (coll_transform.cljs$core$IFn$_invoke$arity$1 ? coll_transform.cljs$core$IFn$_invoke$arity$1(G__49538) : coll_transform.call(null,G__49538));\n})());\nvar chunk__49527_50410 \x3d null;\nvar count__49528_50411 \x3d (0);\nvar i__49529_50412 \x3d (0);\nwhile(true){\nif((i__49529_50412 \x3c count__49528_50411)){\nvar item_50425 \x3d chunk__49527_50410.cljs$core$IIndexed$_nth$arity$2(null,i__49529_50412);\nshadow.object.dom_enter(coll_dom,make_item_fn(item_50425));\n\n\nvar G__50429 \x3d seq__49526_50409;\nvar G__50430 \x3d chunk__49527_50410;\nvar G__50431 \x3d count__49528_50411;\nvar G__50432 \x3d (i__49529_50412 + (1));\nseq__49526_50409 \x3d G__50429;\nchunk__49527_50410 \x3d G__50430;\ncount__49528_50411 \x3d G__50431;\ni__49529_50412 \x3d G__50432;\ncontinue;\n} else {\nvar temp__5753__auto___50433 \x3d cljs.core.seq(seq__49526_50409);\nif(temp__5753__auto___50433){\nvar seq__49526_50434__$1 \x3d temp__5753__auto___50433;\nif(cljs.core.chunked_seq_QMARK_(seq__49526_50434__$1)){\nvar c__4591__auto___50436 \x3d cljs.core.chunk_first(seq__49526_50434__$1);\nvar G__50437 \x3d cljs.core.chunk_rest(seq__49526_50434__$1);\nvar G__50438 \x3d c__4591__auto___50436;\nvar G__50439 \x3d cljs.core.count(c__4591__auto___50436);\nvar G__50440 \x3d (0);\nseq__49526_50409 \x3d G__50437;\nchunk__49527_50410 \x3d G__50438;\ncount__49528_50411 \x3d G__50439;\ni__49529_50412 \x3d G__50440;\ncontinue;\n} else {\nvar item_50441 \x3d cljs.core.first(seq__49526_50434__$1);\nshadow.object.dom_enter(coll_dom,make_item_fn(item_50441));\n\n\nvar G__50442 \x3d cljs.core.next(seq__49526_50434__$1);\nvar G__50443 \x3d null;\nvar G__50444 \x3d (0);\nvar G__50445 \x3d (0);\nseq__49526_50409 \x3d G__50442;\nchunk__49527_50410 \x3d G__50443;\ncount__49528_50411 \x3d G__50444;\ni__49529_50412 \x3d G__50445;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nshadow.object.bind_change.cljs$core$IFn$_invoke$arity$3(parent,attr__$1,(function shadow$object$bind_children_watch(old,new$){\nif(cljs.core.truth_(cljs.core.deref(update_children))){\nvar children \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,shadow.dom.children(coll_dom));\nvar new_coll \x3d cljs.core.vec((coll_transform.cljs$core$IFn$_invoke$arity$1 ? coll_transform.cljs$core$IFn$_invoke$arity$1(new$) : coll_transform.call(null,new$)));\nvar count_children \x3d cljs.core.count(children);\nvar count_new \x3d cljs.core.count(new$);\nvar diff \x3d (count_new - count_children);\nvar children__$1 \x3d (((diff \x3c (0)))?shadow.object.coll_destroy_children(children,count_children,diff):children);\nvar count_children__$1 \x3d (function (){var x__4252__auto__ \x3d count_new;\nvar y__4253__auto__ \x3d count_children;\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})();\nvar n__4648__auto___50466 \x3d count_children__$1;\nvar idx_50467 \x3d (0);\nwhile(true){\nif((idx_50467 \x3c n__4648__auto___50466)){\nvar cn_50468 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children__$1,idx_50467);\nvar cc_50469 \x3d shadow.object.get_from_dom(cn_50468);\nvar ckey_50470 \x3d new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-key\x22,\x22shadow.object/coll-key\x22,827543616).cljs$core$IFn$_invoke$arity$1(cc_50469);\nvar cval_50471 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cc_50469,item_key);\nvar vec__49560_50472 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new_coll,idx_50467);\nvar nkey_50473 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49560_50472,(0),null);\nvar nval_50474 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49560_50472,(1),null);\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ckey_50470,nkey_50473)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cval_50471,nval_50474)))){\n} else {\nvar new_obj_50475 \x3d make_item_fn(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [nkey_50473,nval_50474], null));\nshadow.dom.replace_node(cn_50468,new_obj_50475);\n\nshadow.object.destroy_BANG_.cljs$core$IFn$_invoke$arity$1(cc_50469);\n\nshadow.object.notify_tree_BANG_(new_obj_50475,new cljs.core.Keyword(\x22dom\x22,\x22entered\x22,\x22dom/entered\x22,506699596));\n}\n\nvar G__50476 \x3d (idx_50467 + (1));\nidx_50467 \x3d G__50476;\ncontinue;\n} else {\n}\nbreak;\n}\n\nif((diff \x3e (0))){\nvar seq__49574_50478 \x3d cljs.core.seq(cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(new_coll,count_children__$1,count_new));\nvar chunk__49575_50479 \x3d null;\nvar count__49576_50480 \x3d (0);\nvar i__49577_50481 \x3d (0);\nwhile(true){\nif((i__49577_50481 \x3c count__49576_50480)){\nvar item_50489 \x3d chunk__49575_50479.cljs$core$IIndexed$_nth$arity$2(null,i__49577_50481);\nshadow.object.dom_enter(coll_dom,make_item_fn(item_50489));\n\n\nvar G__50490 \x3d seq__49574_50478;\nvar G__50491 \x3d chunk__49575_50479;\nvar G__50492 \x3d count__49576_50480;\nvar G__50493 \x3d (i__49577_50481 + (1));\nseq__49574_50478 \x3d G__50490;\nchunk__49575_50479 \x3d G__50491;\ncount__49576_50480 \x3d G__50492;\ni__49577_50481 \x3d G__50493;\ncontinue;\n} else {\nvar temp__5753__auto___50494 \x3d cljs.core.seq(seq__49574_50478);\nif(temp__5753__auto___50494){\nvar seq__49574_50495__$1 \x3d temp__5753__auto___50494;\nif(cljs.core.chunked_seq_QMARK_(seq__49574_50495__$1)){\nvar c__4591__auto___50497 \x3d cljs.core.chunk_first(seq__49574_50495__$1);\nvar G__50499 \x3d cljs.core.chunk_rest(seq__49574_50495__$1);\nvar G__50500 \x3d c__4591__auto___50497;\nvar G__50501 \x3d cljs.core.count(c__4591__auto___50497);\nvar G__50502 \x3d (0);\nseq__49574_50478 \x3d G__50499;\nchunk__49575_50479 \x3d G__50500;\ncount__49576_50480 \x3d G__50501;\ni__49577_50481 \x3d G__50502;\ncontinue;\n} else {\nvar item_50503 \x3d cljs.core.first(seq__49574_50495__$1);\nshadow.object.dom_enter(coll_dom,make_item_fn(item_50503));\n\n\nvar G__50504 \x3d cljs.core.next(seq__49574_50495__$1);\nvar G__50505 \x3d null;\nvar G__50506 \x3d (0);\nvar G__50507 \x3d (0);\nseq__49574_50478 \x3d G__50504;\nchunk__49575_50479 \x3d G__50505;\ncount__49576_50480 \x3d G__50506;\ni__49577_50481 \x3d G__50507;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n} else {\n}\n\nreturn shadow.object.notify_BANG_(parent,new cljs.core.Keyword(null,\x22bind-children-update\x22,\x22bind-children-update\x22,-1610690160));\n} else {\nreturn null;\n}\n}));\n\nreturn coll_dom;\n}));\n\n(shadow.object.bind_children.cljs$lang$maxFixedArity \x3d 6);\n\nshadow.object.remove_in_parent_BANG_ \x3d (function shadow$object$remove_in_parent_BANG_(oref){\nvar parent \x3d shadow.object.get_parent(oref);\nvar key \x3d new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-key\x22,\x22shadow.object/coll-key\x22,827543616).cljs$core$IFn$_invoke$arity$1(oref);\nvar value \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(oref,new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-item-key\x22,\x22shadow.object/coll-item-key\x22,1888444366).cljs$core$IFn$_invoke$arity$1(oref));\nvar path \x3d new cljs.core.Keyword(\x22shadow.object\x22,\x22coll-path\x22,\x22shadow.object/coll-path\x22,1583850048).cljs$core$IFn$_invoke$arity$1(oref);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d key;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn path;\n} else {\nreturn and__4149__auto__;\n}\n})())){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22remove-in-parent! should only be called from items created via so/bind-children\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22oref\x22,\x22oref\x22,-1547494840),oref], null));\n}\n\nvar coll \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(parent,path);\nvar new_coll \x3d shadow.util.remove_item_from_coll(coll,key,value);\nreturn shadow.object.notify_BANG_.cljs$core$IFn$_invoke$arity$variadic(parent,new cljs.core.Keyword(\x22bind\x22,\x22update\x22,\x22bind/update\x22,1048601733),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path,new_coll], 0));\n});\nshadow.object.inspect_BANG_ \x3d (function shadow$object$inspect_BANG_(oref){\nvar G__49593 \x3d \x22inspect!\x22;\nvar G__49594 \x3d shadow.object._id(oref);\nvar G__49595 \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(shadow.object._type(oref));\nvar G__49596 \x3d cljs.core.clj__GT_js(cljs.core.deref(shadow.object._data(oref)));\nreturn (shadow.object.info.cljs$core$IFn$_invoke$arity$4 ? shadow.object.info.cljs$core$IFn$_invoke$arity$4(G__49593,G__49594,G__49595,G__49596) : shadow.object.info.call(null,G__49593,G__49594,G__49595,G__49596));\n});\nshadow.object.dump_BANG_ \x3d (function shadow$object$dump_BANG_(){\n(shadow.object.info.cljs$core$IFn$_invoke$arity$1 ? shadow.object.info.cljs$core$IFn$_invoke$arity$1(\x22--------------- LIVE OBJECTS ------------\x22) : shadow.object.info.call(null,\x22--------------- LIVE OBJECTS ------------\x22));\n\nvar seq__49600_50512 \x3d cljs.core.seq(cljs.core.seq(cljs.core.deref(shadow.object.instances)));\nvar chunk__49602_50513 \x3d null;\nvar count__49603_50514 \x3d (0);\nvar i__49604_50515 \x3d (0);\nwhile(true){\nif((i__49604_50515 \x3c count__49603_50514)){\nvar vec__49629_50517 \x3d chunk__49602_50513.cljs$core$IIndexed$_nth$arity$2(null,i__49604_50515);\nvar id_50518 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49629_50517,(0),null);\nvar oref_50519 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49629_50517,(1),null);\nvar G__49632_50520 \x3d \x22dump\x22;\nvar G__49633_50521 \x3d id_50518;\nvar G__49634_50522 \x3d cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([shadow.object._type(oref_50519)], 0));\nvar G__49635_50523 \x3d cljs.core.deref(shadow.object._data(oref_50519));\n(shadow.object.info.cljs$core$IFn$_invoke$arity$4 ? shadow.object.info.cljs$core$IFn$_invoke$arity$4(G__49632_50520,G__49633_50521,G__49634_50522,G__49635_50523) : shadow.object.info.call(null,G__49632_50520,G__49633_50521,G__49634_50522,G__49635_50523));\n\n\nvar G__50526 \x3d seq__49600_50512;\nvar G__50527 \x3d chunk__49602_50513;\nvar G__50528 \x3d count__49603_50514;\nvar G__50529 \x3d (i__49604_50515 + (1));\nseq__49600_50512 \x3d G__50526;\nchunk__49602_50513 \x3d G__50527;\ncount__49603_50514 \x3d G__50528;\ni__49604_50515 \x3d G__50529;\ncontinue;\n} else {\nvar temp__5753__auto___50531 \x3d cljs.core.seq(seq__49600_50512);\nif(temp__5753__auto___50531){\nvar seq__49600_50532__$1 \x3d temp__5753__auto___50531;\nif(cljs.core.chunked_seq_QMARK_(seq__49600_50532__$1)){\nvar c__4591__auto___50533 \x3d cljs.core.chunk_first(seq__49600_50532__$1);\nvar G__50534 \x3d cljs.core.chunk_rest(seq__49600_50532__$1);\nvar G__50535 \x3d c__4591__auto___50533;\nvar G__50536 \x3d cljs.core.count(c__4591__auto___50533);\nvar G__50537 \x3d (0);\nseq__49600_50512 \x3d G__50534;\nchunk__49602_50513 \x3d G__50535;\ncount__49603_50514 \x3d G__50536;\ni__49604_50515 \x3d G__50537;\ncontinue;\n} else {\nvar vec__49638_50538 \x3d cljs.core.first(seq__49600_50532__$1);\nvar id_50539 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49638_50538,(0),null);\nvar oref_50540 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49638_50538,(1),null);\nvar G__49641_50543 \x3d \x22dump\x22;\nvar G__49642_50544 \x3d id_50539;\nvar G__49643_50545 \x3d cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([shadow.object._type(oref_50540)], 0));\nvar G__49644_50546 \x3d cljs.core.deref(shadow.object._data(oref_50540));\n(shadow.object.info.cljs$core$IFn$_invoke$arity$4 ? shadow.object.info.cljs$core$IFn$_invoke$arity$4(G__49641_50543,G__49642_50544,G__49643_50545,G__49644_50546) : shadow.object.info.call(null,G__49641_50543,G__49642_50544,G__49643_50545,G__49644_50546));\n\n\nvar G__50549 \x3d cljs.core.next(seq__49600_50532__$1);\nvar G__50550 \x3d null;\nvar G__50551 \x3d (0);\nvar G__50552 \x3d (0);\nseq__49600_50512 \x3d G__50549;\nchunk__49602_50513 \x3d G__50550;\ncount__49603_50514 \x3d G__50551;\ni__49604_50515 \x3d G__50552;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn (shadow.object.info.cljs$core$IFn$_invoke$arity$1 ? shadow.object.info.cljs$core$IFn$_invoke$arity$1(\x22--------------- //LIVE OBJECTS ------------\x22) : shadow.object.info.call(null,\x22--------------- //LIVE OBJECTS ------------\x22));\n});\ngoog.exportSymbol(\x27shadow.object.dump_BANG_\x27, shadow.object.dump_BANG_);\n");
SHADOW_ENV.evalLoad("shadow.animate.js", true , "goog.provide(\x27shadow.animate\x27);\n\n/**\n * @interface\n */\nshadow.animate.Animation \x3d function(){};\n\nvar shadow$animate$Animation$_animate_from$dyn_51444 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.animate._animate_from[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate._animate_from[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22Animation.-animate-from\x22,this$);\n}\n}\n});\n/**\n * return a map of {attr initial-value}\n */\nshadow.animate._animate_from \x3d (function shadow$animate$_animate_from(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$animate$Animation$_animate_from$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$animate$Animation$_animate_from$arity$1(this$);\n} else {\nreturn shadow$animate$Animation$_animate_from$dyn_51444(this$);\n}\n});\n\nvar shadow$animate$Animation$_animate_to$dyn_51448 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.animate._animate_to[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate._animate_to[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22Animation.-animate-to\x22,this$);\n}\n}\n});\n/**\n * return a map of {attr target-value}\n */\nshadow.animate._animate_to \x3d (function shadow$animate$_animate_to(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$animate$Animation$_animate_to$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$animate$Animation$_animate_to$arity$1(this$);\n} else {\nreturn shadow$animate$Animation$_animate_to$dyn_51448(this$);\n}\n});\n\nvar shadow$animate$Animation$_animate_toggles$dyn_51453 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.animate._animate_toggles[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate._animate_toggles[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22Animation.-animate-toggles\x22,this$);\n}\n}\n});\n/**\n * return a map of {attr target-value}\n */\nshadow.animate._animate_toggles \x3d (function shadow$animate$_animate_toggles(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$animate$Animation$_animate_toggles$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$animate$Animation$_animate_toggles$arity$1(this$);\n} else {\nreturn shadow$animate$Animation$_animate_toggles$dyn_51453(this$);\n}\n});\n\nvar shadow$animate$Animation$_animate_timings$dyn_51459 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.animate._animate_timings[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate._animate_timings[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22Animation.-animate-timings\x22,this$);\n}\n}\n});\n/**\n * return a map of {attr timing-function}\n */\nshadow.animate._animate_timings \x3d (function shadow$animate$_animate_timings(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$animate$Animation$_animate_timings$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$animate$Animation$_animate_timings$arity$1(this$);\n} else {\nreturn shadow$animate$Animation$_animate_timings$dyn_51459(this$);\n}\n});\n\nvar shadow$animate$Animation$_animate_delays$dyn_51462 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.animate._animate_delays[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate._animate_delays[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22Animation.-animate-delays\x22,this$);\n}\n}\n});\n/**\n * return a map of {attr transition-delay}\n */\nshadow.animate._animate_delays \x3d (function shadow$animate$_animate_delays(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$animate$Animation$_animate_delays$arity$1 \x3d\x3d null)))))){\nreturn this$.shadow$animate$Animation$_animate_delays$arity$1(this$);\n} else {\nreturn shadow$animate$Animation$_animate_delays$dyn_51462(this$);\n}\n});\n\nshadow.animate.transition_string \x3d (function shadow$animate$transition_string(duration,adef){\nvar timings \x3d shadow.animate._animate_timings(adef);\nvar delays \x3d shadow.animate._animate_delays(adef);\nreturn clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22, \x22,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__50462){\nvar vec__50463 \x3d p__50462;\nvar attr \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50463,(0),null);\nvar timing \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50463,(1),null);\nreturn [cljs.core.name(attr),\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(duration),\x22ms\x22,\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(timing),(function (){var delay \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(delays,attr);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d delay;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (delay \x3e (0));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn [\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(delay),\x22ms\x22].join(\x27\x27);\n} else {\nreturn null;\n}\n})()].join(\x27\x27);\n}),timings));\n});\n\n/**\n * @interface\n */\nshadow.animate.IAnimator \x3d function(){};\n\nvar shadow$animate$IAnimator$get_duration$dyn_51504 \x3d (function (animator){\nvar x__4463__auto__ \x3d (((animator \x3d\x3d null))?null:animator);\nvar m__4464__auto__ \x3d (shadow.animate.get_duration[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4464__auto__.call(null,animator));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate.get_duration[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4461__auto__.call(null,animator));\n} else {\nthrow cljs.core.missing_protocol(\x22IAnimator.get-duration\x22,animator);\n}\n}\n});\nshadow.animate.get_duration \x3d (function shadow$animate$get_duration(animator){\nif((((!((animator \x3d\x3d null)))) \x26\x26 ((!((animator.shadow$animate$IAnimator$get_duration$arity$1 \x3d\x3d null)))))){\nreturn animator.shadow$animate$IAnimator$get_duration$arity$1(animator);\n} else {\nreturn shadow$animate$IAnimator$get_duration$dyn_51504(animator);\n}\n});\n\nvar shadow$animate$IAnimator$init_BANG_$dyn_51507 \x3d (function (animator){\nvar x__4463__auto__ \x3d (((animator \x3d\x3d null))?null:animator);\nvar m__4464__auto__ \x3d (shadow.animate.init_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4464__auto__.call(null,animator));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate.init_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4461__auto__.call(null,animator));\n} else {\nthrow cljs.core.missing_protocol(\x22IAnimator.init!\x22,animator);\n}\n}\n});\n/**\n * apply the initial values\n */\nshadow.animate.init_BANG_ \x3d (function shadow$animate$init_BANG_(animator){\nif((((!((animator \x3d\x3d null)))) \x26\x26 ((!((animator.shadow$animate$IAnimator$init_BANG_$arity$1 \x3d\x3d null)))))){\nreturn animator.shadow$animate$IAnimator$init_BANG_$arity$1(animator);\n} else {\nreturn shadow$animate$IAnimator$init_BANG_$dyn_51507(animator);\n}\n});\n\nvar shadow$animate$IAnimator$start_BANG_$dyn_51510 \x3d (function (animator){\nvar x__4463__auto__ \x3d (((animator \x3d\x3d null))?null:animator);\nvar m__4464__auto__ \x3d (shadow.animate.start_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4464__auto__.call(null,animator));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate.start_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4461__auto__.call(null,animator));\n} else {\nthrow cljs.core.missing_protocol(\x22IAnimator.start!\x22,animator);\n}\n}\n});\n/**\n * start the animation, must return a channel that closes once the animation is done\n */\nshadow.animate.start_BANG_ \x3d (function shadow$animate$start_BANG_(animator){\nif((((!((animator \x3d\x3d null)))) \x26\x26 ((!((animator.shadow$animate$IAnimator$start_BANG_$arity$1 \x3d\x3d null)))))){\nreturn animator.shadow$animate$IAnimator$start_BANG_$arity$1(animator);\n} else {\nreturn shadow$animate$IAnimator$start_BANG_$dyn_51510(animator);\n}\n});\n\nvar shadow$animate$IAnimator$finish_BANG_$dyn_51522 \x3d (function (animator){\nvar x__4463__auto__ \x3d (((animator \x3d\x3d null))?null:animator);\nvar m__4464__auto__ \x3d (shadow.animate.finish_BANG_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4464__auto__.call(null,animator));\n} else {\nvar m__4461__auto__ \x3d (shadow.animate.finish_BANG_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(animator) : m__4461__auto__.call(null,animator));\n} else {\nthrow cljs.core.missing_protocol(\x22IAnimator.finish!\x22,animator);\n}\n}\n});\n/**\n * cleanup\n */\nshadow.animate.finish_BANG_ \x3d (function shadow$animate$finish_BANG_(animator){\nif((((!((animator \x3d\x3d null)))) \x26\x26 ((!((animator.shadow$animate$IAnimator$finish_BANG_$arity$1 \x3d\x3d null)))))){\nreturn animator.shadow$animate$IAnimator$finish_BANG_$arity$1(animator);\n} else {\nreturn shadow$animate$IAnimator$finish_BANG_$dyn_51522(animator);\n}\n});\n\n\n/**\n* @constructor\n * @implements {shadow.animate.IAnimator}\n*/\nshadow.animate.Animator \x3d (function (duration,items){\nthis.duration \x3d duration;\nthis.items \x3d items;\n});\n(shadow.animate.Animator.prototype.shadow$animate$IAnimator$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.Animator.prototype.shadow$animate$IAnimator$get_duration$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.duration;\n}));\n\n(shadow.animate.Animator.prototype.shadow$animate$IAnimator$init_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar n__4648__auto__ \x3d self__.items.length;\nvar i__42814__auto__ \x3d (0);\nwhile(true){\nif((i__42814__auto__ \x3c n__4648__auto__)){\nvar map__50571_51560 \x3d (self__.items[i__42814__auto__]);\nvar map__50571_51561__$1 \x3d cljs.core.__destructure_map(map__50571_51560);\nvar el_51562 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50571_51561__$1,new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118));\nvar from_51563 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50571_51561__$1,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044));\ngoog.style.setStyle(el_51562,from_51563);\n\nvar G__51564 \x3d (i__42814__auto__ + (1));\ni__42814__auto__ \x3d G__51564;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(shadow.animate.Animator.prototype.shadow$animate$IAnimator$start_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar n__4648__auto__ \x3d self__.items.length;\nvar i__42814__auto__ \x3d (0);\nwhile(true){\nif((i__42814__auto__ \x3c n__4648__auto__)){\nvar map__50572_51571 \x3d (self__.items[i__42814__auto__]);\nvar map__50572_51572__$1 \x3d cljs.core.__destructure_map(map__50572_51571);\nvar el_51573 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50572_51572__$1,new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118));\nvar to_51574 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50572_51572__$1,new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007));\nvar transition_51575 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50572_51572__$1,new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007));\n(to_51574[\x22transition\x22] \x3d transition_51575);\n\ngoog.style.setStyle(el_51573,to_51574);\n\nvar G__51587 \x3d (i__42814__auto__ + (1));\ni__42814__auto__ \x3d G__51587;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(shadow.animate.Animator.prototype.shadow$animate$IAnimator$finish_BANG_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar n__4648__auto__ \x3d self__.items.length;\nvar i__42814__auto__ \x3d (0);\nwhile(true){\nif((i__42814__auto__ \x3c n__4648__auto__)){\nvar map__50577_51589 \x3d (self__.items[i__42814__auto__]);\nvar map__50577_51590__$1 \x3d cljs.core.__destructure_map(map__50577_51589);\nvar el_51591 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50577_51590__$1,new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118));\nvar toggles_51592 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50577_51590__$1,new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479));\n(toggles_51592[\x22transition\x22] \x3d null);\n\ngoog.style.setStyle(el_51591,toggles_51592);\n\nvar G__51595 \x3d (i__42814__auto__ + (1));\ni__42814__auto__ \x3d G__51595;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n}));\n\n(shadow.animate.Animator.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22duration\x22,\x22duration\x22,-1210334701,null),new cljs.core.Symbol(null,\x22items\x22,\x22items\x22,-1622480831,null)], null);\n}));\n\n(shadow.animate.Animator.cljs$lang$type \x3d true);\n\n(shadow.animate.Animator.cljs$lang$ctorStr \x3d \x22shadow.animate/Animator\x22);\n\n(shadow.animate.Animator.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/Animator\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/Animator.\n */\nshadow.animate.__GT_Animator \x3d (function shadow$animate$__GT_Animator(duration,items){\nreturn (new shadow.animate.Animator(duration,items));\n});\n\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nshadow.animate.AnimationStep \x3d (function (el,from,to,toggles,transition,__meta,__extmap,__hash){\nthis.el \x3d el;\nthis.from \x3d from;\nthis.to \x3d to;\nthis.toggles \x3d toggles;\nthis.transition \x3d transition;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(shadow.animate.AnimationStep.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k50586,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__50596 \x3d k50586;\nvar G__50596__$1 \x3d (((G__50596 instanceof cljs.core.Keyword))?G__50596.fqn:null);\nswitch (G__50596__$1) {\ncase \x22el\x22:\nreturn self__.el;\n\nbreak;\ncase \x22from\x22:\nreturn self__.from;\n\nbreak;\ncase \x22to\x22:\nreturn self__.to;\n\nbreak;\ncase \x22toggles\x22:\nreturn self__.toggles;\n\nbreak;\ncase \x22transition\x22:\nreturn self__.transition;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k50586,else__4418__auto__);\n\n}\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__50607){\nvar vec__50611 \x3d p__50607;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50611,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50611,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#shadow.animate.AnimationStep{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),self__.el],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),self__.from],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),self__.to],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),self__.toggles],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007),self__.transition],null))], null),self__.__extmap));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__50585){\nvar self__ \x3d this;\nvar G__50585__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__50585__$1,5,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,self__.to,self__.toggles,self__.transition,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (5 + cljs.core.count(self__.__extmap));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (630436239 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this50587,other50588){\nvar self__ \x3d this;\nvar this50587__$1 \x3d this;\nreturn (((!((other50588 \x3d\x3d null)))) \x26\x26 ((this50587__$1.constructor \x3d\x3d\x3d other50588.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this50587__$1.el,other50588.el)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this50587__$1.from,other50588.from)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this50587__$1.to,other50588.to)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this50587__$1.toggles,other50588.toggles)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this50587__$1.transition,other50588.transition)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this50587__$1.__extmap,other50588.__extmap)));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),null,new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007),null,new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),null,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),null,new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,self__.to,self__.toggles,self__.transition,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__50585){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__50654 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__50655 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__50654.cljs$core$IFn$_invoke$arity$2 ? pred__50654.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),expr__50655) : pred__50654.call(null,new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),expr__50655)))){\nreturn (new shadow.animate.AnimationStep(G__50585,self__.from,self__.to,self__.toggles,self__.transition,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__50654.cljs$core$IFn$_invoke$arity$2 ? pred__50654.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),expr__50655) : pred__50654.call(null,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),expr__50655)))){\nreturn (new shadow.animate.AnimationStep(self__.el,G__50585,self__.to,self__.toggles,self__.transition,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__50654.cljs$core$IFn$_invoke$arity$2 ? pred__50654.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),expr__50655) : pred__50654.call(null,new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),expr__50655)))){\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,G__50585,self__.toggles,self__.transition,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__50654.cljs$core$IFn$_invoke$arity$2 ? pred__50654.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),expr__50655) : pred__50654.call(null,new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),expr__50655)))){\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,self__.to,G__50585,self__.transition,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__50654.cljs$core$IFn$_invoke$arity$2 ? pred__50654.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007),expr__50655) : pred__50654.call(null,new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007),expr__50655)))){\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,self__.to,self__.toggles,G__50585,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,self__.to,self__.toggles,self__.transition,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__50585),null));\n}\n}\n}\n}\n}\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),self__.el,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),self__.from,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),self__.to,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),self__.toggles,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007),self__.transition,null))], null),self__.__extmap));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__50585){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new shadow.animate.AnimationStep(self__.el,self__.from,self__.to,self__.toggles,self__.transition,G__50585,self__.__extmap,self__.__hash));\n}));\n\n(shadow.animate.AnimationStep.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(shadow.animate.AnimationStep.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22el\x22,\x22el\x22,22330409,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null),new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22toggles\x22,\x22toggles\x22,-1576526290,null),new cljs.core.Symbol(null,\x22transition\x22,\x22transition\x22,-1888743762,null)], null);\n}));\n\n(shadow.animate.AnimationStep.cljs$lang$type \x3d true);\n\n(shadow.animate.AnimationStep.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22shadow.animate/AnimationStep\x22,null,(1),null));\n}));\n\n(shadow.animate.AnimationStep.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22shadow.animate/AnimationStep\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/AnimationStep.\n */\nshadow.animate.__GT_AnimationStep \x3d (function shadow$animate$__GT_AnimationStep(el,from,to,toggles,transition){\nreturn (new shadow.animate.AnimationStep(el,from,to,toggles,transition,null,null,null));\n});\n\n/**\n * Factory function for shadow.animate/AnimationStep, taking a map of keywords to field values.\n */\nshadow.animate.map__GT_AnimationStep \x3d (function shadow$animate$map__GT_AnimationStep(G__50589){\nvar extmap__4454__auto__ \x3d (function (){var G__50707 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__50589,new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479),new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007)], 0));\nif(cljs.core.record_QMARK_(G__50589)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__50707);\n} else {\nreturn G__50707;\n}\n})();\nreturn (new shadow.animate.AnimationStep(new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118).cljs$core$IFn$_invoke$arity$1(G__50589),new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044).cljs$core$IFn$_invoke$arity$1(G__50589),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007).cljs$core$IFn$_invoke$arity$1(G__50589),new cljs.core.Keyword(null,\x22toggles\x22,\x22toggles\x22,1077909479).cljs$core$IFn$_invoke$arity$1(G__50589),new cljs.core.Keyword(null,\x22transition\x22,\x22transition\x22,765692007).cljs$core$IFn$_invoke$arity$1(G__50589),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nshadow.animate.setup \x3d (function shadow$animate$setup(duration,elements){\nvar items \x3d cljs.core.into_array.cljs$core$IFn$_invoke$arity$1((function (){var iter__4564__auto__ \x3d (function shadow$animate$setup_$_iter__50717(s__50718){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__50718__$1 \x3d s__50718;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__50718__$1);\nif(temp__5753__auto__){\nvar s__50718__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__50718__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__50718__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__50720 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__50719 \x3d (0);\nwhile(true){\nif((i__50719 \x3c size__4563__auto__)){\nvar vec__50735 \x3d cljs.core._nth(c__4562__auto__,i__50719);\nvar el \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50735,(0),null);\nvar adef \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50735,(1),null);\ncljs.core.chunk_append(b__50720,(function (){\nif((((!((adef \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d adef.shadow$animate$Animation$))))?true:(((!adef.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(shadow.animate.Animation,adef):false)):cljs.core.native_satisfies_QMARK_(shadow.animate.Animation,adef))){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid animation\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),el,new cljs.core.Keyword(null,\x22animation\x22,\x22animation\x22,-1248293244),adef], null));\n}\n\nvar from \x3d shadow.animate._animate_from(adef);\nvar to \x3d shadow.animate._animate_to(adef);\nvar toggles \x3d shadow.animate._animate_toggles(adef);\nreturn (new shadow.animate.AnimationStep(shadow.dom.dom_node(el),cljs.core.clj__GT_js(from),cljs.core.clj__GT_js(to),cljs.core.clj__GT_js(toggles),shadow.animate.transition_string(duration,adef),null,null,null));\n})()\n);\n\nvar G__51692 \x3d (i__50719 + (1));\ni__50719 \x3d G__51692;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__50720),shadow$animate$setup_$_iter__50717(cljs.core.chunk_rest(s__50718__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__50720),null);\n}\n} else {\nvar vec__50755 \x3d cljs.core.first(s__50718__$2);\nvar el \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50755,(0),null);\nvar adef \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50755,(1),null);\nreturn cljs.core.cons((function (){\nif((((!((adef \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d adef.shadow$animate$Animation$))))?true:(((!adef.cljs$lang$protocol_mask$partition$))?cljs.core.native_satisfies_QMARK_(shadow.animate.Animation,adef):false)):cljs.core.native_satisfies_QMARK_(shadow.animate.Animation,adef))){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid animation\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22el\x22,\x22el\x22,-1618201118),el,new cljs.core.Keyword(null,\x22animation\x22,\x22animation\x22,-1248293244),adef], null));\n}\n\nvar from \x3d shadow.animate._animate_from(adef);\nvar to \x3d shadow.animate._animate_to(adef);\nvar toggles \x3d shadow.animate._animate_toggles(adef);\nreturn (new shadow.animate.AnimationStep(shadow.dom.dom_node(el),cljs.core.clj__GT_js(from),cljs.core.clj__GT_js(to),cljs.core.clj__GT_js(toggles),shadow.animate.transition_string(duration,adef),null,null,null));\n})()\n,shadow$animate$setup_$_iter__50717(cljs.core.rest(s__50718__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(elements);\n})());\nreturn (new shadow.animate.Animator(duration,items));\n});\nshadow.animate.continue_BANG_ \x3d (function shadow$animate$continue_BANG_(animator){\nshadow.animate.start_BANG_(animator);\n\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_50783){\nvar state_val_50784 \x3d (state_50783[(1)]);\nif((state_val_50784 \x3d\x3d\x3d (1))){\nvar inst_50777 \x3d shadow.animate.get_duration(animator);\nvar inst_50778 \x3d cljs.core.async.timeout(inst_50777);\nvar state_50783__$1 \x3d state_50783;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_50783__$1,(2),inst_50778);\n} else {\nif((state_val_50784 \x3d\x3d\x3d (2))){\nvar inst_50780 \x3d (state_50783[(2)]);\nvar inst_50781 \x3d shadow.animate.finish_BANG_(animator);\nvar state_50783__$1 \x3d (function (){var statearr_50785 \x3d state_50783;\n(statearr_50785[(7)] \x3d inst_50781);\n\n(statearr_50785[(8)] \x3d inst_50780);\n\nreturn statearr_50785;\n})();\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_50783__$1,new cljs.core.Keyword(null,\x22done\x22,\x22done\x22,-889844188));\n} else {\nreturn null;\n}\n}\n});\nreturn (function() {\nvar shadow$animate$continue_BANG__$_state_machine__42703__auto__ \x3d null;\nvar shadow$animate$continue_BANG__$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_50786 \x3d [null,null,null,null,null,null,null,null,null];\n(statearr_50786[(0)] \x3d shadow$animate$continue_BANG__$_state_machine__42703__auto__);\n\n(statearr_50786[(1)] \x3d (1));\n\nreturn statearr_50786;\n});\nvar shadow$animate$continue_BANG__$_state_machine__42703__auto____1 \x3d (function (state_50783){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_50783);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e50787){var ex__42707__auto__ \x3d e50787;\nvar statearr_50788_51729 \x3d state_50783;\n(statearr_50788_51729[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_50783[(4)]))){\nvar statearr_50790_51730 \x3d state_50783;\n(statearr_50790_51730[(1)] \x3d cljs.core.first((state_50783[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__51731 \x3d state_50783;\nstate_50783 \x3d G__51731;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\nshadow$animate$continue_BANG__$_state_machine__42703__auto__ \x3d function(state_50783){\nswitch(arguments.length){\ncase 0:\nreturn shadow$animate$continue_BANG__$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn shadow$animate$continue_BANG__$_state_machine__42703__auto____1.call(this,state_50783);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nshadow$animate$continue_BANG__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d shadow$animate$continue_BANG__$_state_machine__42703__auto____0;\nshadow$animate$continue_BANG__$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d shadow$animate$continue_BANG__$_state_machine__42703__auto____1;\nreturn shadow$animate$continue_BANG__$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_50811 \x3d f__42954__auto__();\n(statearr_50811[(6)] \x3d c__42953__auto__);\n\nreturn statearr_50811;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n});\nshadow.animate.start \x3d (function shadow$animate$start(duration,elements){\nvar animator \x3d shadow.animate.setup(duration,elements);\nanimator.shadow$animate$IAnimator$init_BANG_$arity$1(null);\n\nreturn shadow.animate.continue_BANG_(animator);\n});\n/**\n * transition the given attr from -\x3e to using timing function and delay\n * timing defaults to ease, delay to 0\n */\nshadow.animate.transition \x3d (function shadow$animate$transition(var_args){\nvar G__50823 \x3d arguments.length;\nswitch (G__50823) {\ncase 3:\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.animate.transition.cljs$core$IFn$_invoke$arity$3 \x3d (function (attr,from,to){\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$5(attr,from,to,\x22ease\x22,(0));\n}));\n\n(shadow.animate.transition.cljs$core$IFn$_invoke$arity$4 \x3d (function (attr,from,to,timing){\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$5(attr,from,to,timing,(0));\n}));\n\n(shadow.animate.transition.cljs$core$IFn$_invoke$arity$5 \x3d (function (attr,from,to,timing,delay){\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate50847 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate50847 \x3d (function (attr,from,to,timing,delay,meta50848){\nthis.attr \x3d attr;\nthis.from \x3d from;\nthis.to \x3d to;\nthis.timing \x3d timing;\nthis.delay \x3d delay;\nthis.meta50848 \x3d meta50848;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate50847.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_50849,meta50848__$1){\nvar self__ \x3d this;\nvar _50849__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate50847(self__.attr,self__.from,self__.to,self__.timing,self__.delay,meta50848__$1));\n}));\n\n(shadow.animate.t_shadow$animate50847.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_50849){\nvar self__ \x3d this;\nvar _50849__$1 \x3d this;\nreturn self__.meta50848;\n}));\n\n(shadow.animate.t_shadow$animate50847.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate50847.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,self__.from]);\n}));\n\n(shadow.animate.t_shadow$animate50847.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,self__.to]);\n}));\n\n(shadow.animate.t_shadow$animate50847.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50847.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,self__.timing]);\n}));\n\n(shadow.animate.t_shadow$animate50847.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,self__.delay]);\n}));\n\n(shadow.animate.t_shadow$animate50847.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22attr\x22,\x22attr\x22,1036399174,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null),new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22timing\x22,\x22timing\x22,-208693668,null),new cljs.core.Symbol(null,\x22delay\x22,\x22delay\x22,1066306308,null),new cljs.core.Symbol(null,\x22meta50848\x22,\x22meta50848\x22,-544080131,null)], null);\n}));\n\n(shadow.animate.t_shadow$animate50847.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate50847.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate50847\x22);\n\n(shadow.animate.t_shadow$animate50847.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate50847\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate50847.\n */\nshadow.animate.__GT_t_shadow$animate50847 \x3d (function shadow$animate$__GT_t_shadow$animate50847(attr__$1,from__$1,to__$1,timing__$1,delay__$1,meta50848){\nreturn (new shadow.animate.t_shadow$animate50847(attr__$1,from__$1,to__$1,timing__$1,delay__$1,meta50848));\n});\n\n}\n\nreturn (new shadow.animate.t_shadow$animate50847(attr,from,to,timing,delay,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(shadow.animate.transition.cljs$lang$maxFixedArity \x3d 5);\n\nshadow.animate.toggle \x3d (function shadow$animate$toggle(attr,from,to){\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate50900 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate50900 \x3d (function (attr,from,to,meta50901){\nthis.attr \x3d attr;\nthis.from \x3d from;\nthis.to \x3d to;\nthis.meta50901 \x3d meta50901;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate50900.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_50902,meta50901__$1){\nvar self__ \x3d this;\nvar _50902__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate50900(self__.attr,self__.from,self__.to,meta50901__$1));\n}));\n\n(shadow.animate.t_shadow$animate50900.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_50902){\nvar self__ \x3d this;\nvar _50902__$1 \x3d this;\nreturn self__.meta50901;\n}));\n\n(shadow.animate.t_shadow$animate50900.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate50900.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50900.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,self__.from]);\n}));\n\n(shadow.animate.t_shadow$animate50900.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,self__.to]);\n}));\n\n(shadow.animate.t_shadow$animate50900.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50900.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50900.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22attr\x22,\x22attr\x22,1036399174,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null),new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22meta50901\x22,\x22meta50901\x22,-2127173120,null)], null);\n}));\n\n(shadow.animate.t_shadow$animate50900.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate50900.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate50900\x22);\n\n(shadow.animate.t_shadow$animate50900.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate50900\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate50900.\n */\nshadow.animate.__GT_t_shadow$animate50900 \x3d (function shadow$animate$toggle_$___GT_t_shadow$animate50900(attr__$1,from__$1,to__$1,meta50901){\nreturn (new shadow.animate.t_shadow$animate50900(attr__$1,from__$1,to__$1,meta50901));\n});\n\n}\n\nreturn (new shadow.animate.t_shadow$animate50900(attr,from,to,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * set attr to value when the animation starts\n */\nshadow.animate.set_attr \x3d (function shadow$animate$set_attr(var_args){\nvar G__50916 \x3d arguments.length;\nswitch (G__50916) {\ncase 1:\nreturn shadow.animate.set_attr.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.animate.set_attr.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.animate.set_attr.cljs$core$IFn$_invoke$arity$1 \x3d (function (attrs){\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate50940 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate50940 \x3d (function (attrs,meta50941){\nthis.attrs \x3d attrs;\nthis.meta50941 \x3d meta50941;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate50940.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_50942,meta50941__$1){\nvar self__ \x3d this;\nvar _50942__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate50940(self__.attrs,meta50941__$1));\n}));\n\n(shadow.animate.t_shadow$animate50940.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_50942){\nvar self__ \x3d this;\nvar _50942__$1 \x3d this;\nreturn self__.meta50941;\n}));\n\n(shadow.animate.t_shadow$animate50940.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate50940.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50940.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.attrs;\n}));\n\n(shadow.animate.t_shadow$animate50940.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50940.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50940.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate50940.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22attrs\x22,\x22attrs\x22,-450137186,null),new cljs.core.Symbol(null,\x22meta50941\x22,\x22meta50941\x22,286103752,null)], null);\n}));\n\n(shadow.animate.t_shadow$animate50940.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate50940.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate50940\x22);\n\n(shadow.animate.t_shadow$animate50940.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate50940\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate50940.\n */\nshadow.animate.__GT_t_shadow$animate50940 \x3d (function shadow$animate$__GT_t_shadow$animate50940(attrs__$1,meta50941){\nreturn (new shadow.animate.t_shadow$animate50940(attrs__$1,meta50941));\n});\n\n}\n\nreturn (new shadow.animate.t_shadow$animate50940(attrs,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(shadow.animate.set_attr.cljs$core$IFn$_invoke$arity$2 \x3d (function (attr,value){\nreturn shadow.animate.set_attr.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.createAsIfByAssoc([attr,value]));\n}));\n\n(shadow.animate.set_attr.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * use to remove a given attribute style when the animation is finished\n * usually only needed to remove attributes we no longer need since they are probably\n * inherited and we only used for previous transitions\n */\nshadow.animate.delete_attr \x3d (function shadow$animate$delete_attr(attr){\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate51002 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate51002 \x3d (function (attr,meta51003){\nthis.attr \x3d attr;\nthis.meta51003 \x3d meta51003;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate51002.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_51004,meta51003__$1){\nvar self__ \x3d this;\nvar _51004__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate51002(self__.attr,meta51003__$1));\n}));\n\n(shadow.animate.t_shadow$animate51002.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_51004){\nvar self__ \x3d this;\nvar _51004__$1 \x3d this;\nreturn self__.meta51003;\n}));\n\n(shadow.animate.t_shadow$animate51002.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate51002.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate51002.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate51002.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([self__.attr,null]);\n}));\n\n(shadow.animate.t_shadow$animate51002.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate51002.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate51002.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22attr\x22,\x22attr\x22,1036399174,null),new cljs.core.Symbol(null,\x22meta51003\x22,\x22meta51003\x22,952830388,null)], null);\n}));\n\n(shadow.animate.t_shadow$animate51002.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate51002.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate51002\x22);\n\n(shadow.animate.t_shadow$animate51002.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate51002\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate51002.\n */\nshadow.animate.__GT_t_shadow$animate51002 \x3d (function shadow$animate$delete_attr_$___GT_t_shadow$animate51002(attr__$1,meta51003){\nreturn (new shadow.animate.t_shadow$animate51002(attr__$1,meta51003));\n});\n\n}\n\nreturn (new shadow.animate.t_shadow$animate51002(attr,cljs.core.PersistentArrayMap.EMPTY));\n});\nshadow.animate.combine \x3d (function shadow$animate$combine(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51930 \x3d arguments.length;\nvar i__4772__auto___51931 \x3d (0);\nwhile(true){\nif((i__4772__auto___51931 \x3c len__4771__auto___51930)){\nargs__4777__auto__.push((arguments[i__4772__auto___51931]));\n\nvar G__51932 \x3d (i__4772__auto___51931 + (1));\ni__4772__auto___51931 \x3d G__51932;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn shadow.animate.combine.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(shadow.animate.combine.cljs$core$IFn$_invoke$arity$variadic \x3d (function (transitions){\nvar to \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar from \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar toggles \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar timings \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar delays \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar transitions__$1 \x3d transitions;\nwhile(true){\nvar temp__5751__auto__ \x3d cljs.core.first(transitions__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar adef \x3d temp__5751__auto__;\nvar G__51934 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([to,shadow.animate._animate_to(adef)], 0));\nvar G__51935 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([from,shadow.animate._animate_from(adef)], 0));\nvar G__51936 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([toggles,shadow.animate._animate_toggles(adef)], 0));\nvar G__51937 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([timings,shadow.animate._animate_timings(adef)], 0));\nvar G__51938 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([delays,shadow.animate._animate_delays(adef)], 0));\nvar G__51939 \x3d cljs.core.rest(transitions__$1);\nto \x3d G__51934;\nfrom \x3d G__51935;\ntoggles \x3d G__51936;\ntimings \x3d G__51937;\ndelays \x3d G__51938;\ntransitions__$1 \x3d G__51939;\ncontinue;\n} else {\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate51184 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate51184 \x3d (function (transitions,to,from,toggles,timings,delays,temp__5751__auto__,meta51185){\nthis.transitions \x3d transitions;\nthis.to \x3d to;\nthis.from \x3d from;\nthis.toggles \x3d toggles;\nthis.timings \x3d timings;\nthis.delays \x3d delays;\nthis.temp__5751__auto__ \x3d temp__5751__auto__;\nthis.meta51185 \x3d meta51185;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate51184.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_51186,meta51185__$1){\nvar self__ \x3d this;\nvar _51186__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate51184(self__.transitions,self__.to,self__.from,self__.toggles,self__.timings,self__.delays,self__.temp__5751__auto__,meta51185__$1));\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.prototype.cljs$core$IMeta$_meta$arity$1 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_51186){\nvar self__ \x3d this;\nvar _51186__$1 \x3d this;\nreturn self__.meta51185;\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate51184.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.from;\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.to;\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.toggles;\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.timings;\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.delays;\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.getBasis \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (){\nreturn new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22transitions\x22,\x22transitions\x22,-405684594,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22any\x22,\x22any\x22,-948528346,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22any\x22,\x22any\x22,-948528346,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22toggles\x22,\x22toggles\x22,-1576526290,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22any\x22,\x22any\x22,-948528346,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22timings\x22,\x22timings\x22,-569636600,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22any\x22,\x22any\x22,-948528346,null)], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22delays\x22,\x22delays\x22,-873843187,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22any\x22,\x22any\x22,-948528346,null)], null)),new cljs.core.Symbol(null,\x22temp__5751__auto__\x22,\x22temp__5751__auto__\x22,870218099,null),new cljs.core.Symbol(null,\x22meta51185\x22,\x22meta51185\x22,1714090836,null)], null);\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n(shadow.animate.t_shadow$animate51184.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate51184.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate51184\x22);\n\n(shadow.animate.t_shadow$animate51184.cljs$lang$ctorPrWriter \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate51184\x22);\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n);\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate51184.\n */\nshadow.animate.__GT_t_shadow$animate51184 \x3d ((function (to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__){\nreturn (function shadow$animate$__GT_t_shadow$animate51184(transitions__$2,to__$1,from__$1,toggles__$1,timings__$1,delays__$1,temp__5751__auto____$1,meta51185){\nreturn (new shadow.animate.t_shadow$animate51184(transitions__$2,to__$1,from__$1,toggles__$1,timings__$1,delays__$1,temp__5751__auto____$1,meta51185));\n});})(to,from,toggles,timings,delays,transitions__$1,temp__5751__auto__))\n;\n\n}\n\nreturn (new shadow.animate.t_shadow$animate51184(transitions__$1,to,from,toggles,timings,delays,temp__5751__auto__,cljs.core.PersistentArrayMap.EMPTY));\n}\nbreak;\n}\n}));\n\n(shadow.animate.combine.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(shadow.animate.combine.cljs$lang$applyTo \x3d (function (seq51059){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51059));\n}));\n\nshadow.animate.fade_in \x3d (function shadow$animate$fade_in(var_args){\nvar G__51289 \x3d arguments.length;\nswitch (G__51289) {\ncase 0:\nreturn shadow.animate.fade_in.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn shadow.animate.fade_in.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.animate.fade_in.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn shadow.animate.fade_in.cljs$core$IFn$_invoke$arity$1(\x22ease-in\x22);\n}));\n\n(shadow.animate.fade_in.cljs$core$IFn$_invoke$arity$1 \x3d (function (timing_function){\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(null,\x22opacity\x22,\x22opacity\x22,397153780),\x220\x22,\x221\x22,timing_function);\n}));\n\n(shadow.animate.fade_in.cljs$lang$maxFixedArity \x3d 1);\n\nshadow.animate.fade_out \x3d (function shadow$animate$fade_out(var_args){\nvar G__51328 \x3d arguments.length;\nswitch (G__51328) {\ncase 0:\nreturn shadow.animate.fade_out.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 1:\nreturn shadow.animate.fade_out.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.animate.fade_out.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn shadow.animate.fade_in.cljs$core$IFn$_invoke$arity$1(\x22ease-out\x22);\n}));\n\n(shadow.animate.fade_out.cljs$core$IFn$_invoke$arity$1 \x3d (function (timing_function){\nreturn shadow.animate.transition.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(null,\x22opacity\x22,\x22opacity\x22,397153780),\x221\x22,\x220\x22,timing_function);\n}));\n\n(shadow.animate.fade_out.cljs$lang$maxFixedArity \x3d 1);\n\nshadow.animate.vendor_prefix \x3d goog.dom.vendor.getVendorPrefix();\nshadow.animate.vendor_transform \x3d cljs.core.keyword.cljs$core$IFn$_invoke$arity$1([cljs.core.str.cljs$core$IFn$_invoke$arity$1(shadow.animate.vendor_prefix),\x22-transform\x22].join(\x27\x27));\nshadow.animate.translate_y \x3d (function shadow$animate$translate_y(var_args){\nvar G__51340 \x3d arguments.length;\nswitch (G__51340) {\ncase 3:\nreturn shadow.animate.translate_y.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.animate.translate_y.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.animate.translate_y.cljs$core$IFn$_invoke$arity$3 \x3d (function (from,to,timing){\nreturn shadow.animate.translate_y.cljs$core$IFn$_invoke$arity$4(from,to,timing,(0));\n}));\n\n(shadow.animate.translate_y.cljs$core$IFn$_invoke$arity$4 \x3d (function (from,to,timing,delay){\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate51349 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate51349 \x3d (function (from,to,timing,delay,meta51350){\nthis.from \x3d from;\nthis.to \x3d to;\nthis.timing \x3d timing;\nthis.delay \x3d delay;\nthis.meta51350 \x3d meta51350;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate51349.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_51351,meta51350__$1){\nvar self__ \x3d this;\nvar _51351__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate51349(self__.from,self__.to,self__.timing,self__.delay,meta51350__$1));\n}));\n\n(shadow.animate.t_shadow$animate51349.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_51351){\nvar self__ \x3d this;\nvar _51351__$1 \x3d this;\nreturn self__.meta51350;\n}));\n\n(shadow.animate.t_shadow$animate51349.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate51349.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22transform\x22,\x22transform\x22,1381301764),[\x22translateY(\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.from),\x22)\x22].join(\x27\x27)], null);\n}));\n\n(shadow.animate.t_shadow$animate51349.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22transform\x22,\x22transform\x22,1381301764),[\x22translateY(\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.to),\x22)\x22].join(\x27\x27)], null);\n}));\n\n(shadow.animate.t_shadow$animate51349.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([shadow.animate.vendor_transform,self__.timing]);\n}));\n\n(shadow.animate.t_shadow$animate51349.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate51349.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([shadow.animate.vendor_transform,self__.delay]);\n}));\n\n(shadow.animate.t_shadow$animate51349.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null),new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22timing\x22,\x22timing\x22,-208693668,null),new cljs.core.Symbol(null,\x22delay\x22,\x22delay\x22,1066306308,null),new cljs.core.Symbol(null,\x22meta51350\x22,\x22meta51350\x22,515124490,null)], null);\n}));\n\n(shadow.animate.t_shadow$animate51349.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate51349.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate51349\x22);\n\n(shadow.animate.t_shadow$animate51349.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate51349\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate51349.\n */\nshadow.animate.__GT_t_shadow$animate51349 \x3d (function shadow$animate$__GT_t_shadow$animate51349(from__$1,to__$1,timing__$1,delay__$1,meta51350){\nreturn (new shadow.animate.t_shadow$animate51349(from__$1,to__$1,timing__$1,delay__$1,meta51350));\n});\n\n}\n\nreturn (new shadow.animate.t_shadow$animate51349(from,to,timing,delay,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(shadow.animate.translate_y.cljs$lang$maxFixedArity \x3d 4);\n\nshadow.animate.translate_x \x3d (function shadow$animate$translate_x(var_args){\nvar G__51368 \x3d arguments.length;\nswitch (G__51368) {\ncase 3:\nreturn shadow.animate.translate_x.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.animate.translate_x.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.animate.translate_x.cljs$core$IFn$_invoke$arity$3 \x3d (function (from,to,timing){\nreturn shadow.animate.translate_x.cljs$core$IFn$_invoke$arity$4(from,to,timing,(0));\n}));\n\n(shadow.animate.translate_x.cljs$core$IFn$_invoke$arity$4 \x3d (function (from,to,timing,delay){\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.animate.t_shadow$animate51371 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {shadow.animate.Animation}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\nshadow.animate.t_shadow$animate51371 \x3d (function (from,to,timing,delay,meta51372){\nthis.from \x3d from;\nthis.to \x3d to;\nthis.timing \x3d timing;\nthis.delay \x3d delay;\nthis.meta51372 \x3d meta51372;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.animate.t_shadow$animate51371.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_51373,meta51372__$1){\nvar self__ \x3d this;\nvar _51373__$1 \x3d this;\nreturn (new shadow.animate.t_shadow$animate51371(self__.from,self__.to,self__.timing,self__.delay,meta51372__$1));\n}));\n\n(shadow.animate.t_shadow$animate51371.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_51373){\nvar self__ \x3d this;\nvar _51373__$1 \x3d this;\nreturn self__.meta51372;\n}));\n\n(shadow.animate.t_shadow$animate51371.prototype.shadow$animate$Animation$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.animate.t_shadow$animate51371.prototype.shadow$animate$Animation$_animate_from$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22transform\x22,\x22transform\x22,1381301764),[\x22translateX(\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.from),\x22)\x22].join(\x27\x27)], null);\n}));\n\n(shadow.animate.t_shadow$animate51371.prototype.shadow$animate$Animation$_animate_to$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22transform\x22,\x22transform\x22,1381301764),[\x22translateX(\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.to),\x22)\x22].join(\x27\x27)], null);\n}));\n\n(shadow.animate.t_shadow$animate51371.prototype.shadow$animate$Animation$_animate_timings$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([shadow.animate.vendor_transform,self__.timing]);\n}));\n\n(shadow.animate.t_shadow$animate51371.prototype.shadow$animate$Animation$_animate_toggles$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}));\n\n(shadow.animate.t_shadow$animate51371.prototype.shadow$animate$Animation$_animate_delays$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([shadow.animate.vendor_transform,self__.delay]);\n}));\n\n(shadow.animate.t_shadow$animate51371.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null),new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22timing\x22,\x22timing\x22,-208693668,null),new cljs.core.Symbol(null,\x22delay\x22,\x22delay\x22,1066306308,null),new cljs.core.Symbol(null,\x22meta51372\x22,\x22meta51372\x22,579849606,null)], null);\n}));\n\n(shadow.animate.t_shadow$animate51371.cljs$lang$type \x3d true);\n\n(shadow.animate.t_shadow$animate51371.cljs$lang$ctorStr \x3d \x22shadow.animate/t_shadow$animate51371\x22);\n\n(shadow.animate.t_shadow$animate51371.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.animate/t_shadow$animate51371\x22);\n}));\n\n/**\n * Positional factory function for shadow.animate/t_shadow$animate51371.\n */\nshadow.animate.__GT_t_shadow$animate51371 \x3d (function shadow$animate$__GT_t_shadow$animate51371(from__$1,to__$1,timing__$1,delay__$1,meta51372){\nreturn (new shadow.animate.t_shadow$animate51371(from__$1,to__$1,timing__$1,delay__$1,meta51372));\n});\n\n}\n\nreturn (new shadow.animate.t_shadow$animate51371(from,to,timing,delay,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(shadow.animate.translate_x.cljs$lang$maxFixedArity \x3d 4);\n\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.util.js", true , "goog.provide(\x22com.cognitect.transit.util\x22);\ngoog.require(\x22goog.object\x22);\ngoog.scope(function() {\n  var util \x3d com.cognitect.transit.util, gobject \x3d goog.object;\n  if (typeof Object.keys !\x3d \x22undefined\x22) {\n    util.objectKeys \x3d function(obj) {\n      return Object.keys(obj);\n    };\n  } else {\n    util.objectKeys \x3d function(obj) {\n      return gobject.getKeys(obj);\n    };\n  }\n  if (typeof Array.isArray !\x3d \x22undefined\x22) {\n    util.isArray \x3d function(obj) {\n      return Array.isArray(obj);\n    };\n  } else {\n    util.isArray \x3d function(obj) {\n      return goog.typeOf(obj) \x3d\x3d\x3d \x22array\x22;\n    };\n  }\n  util.chars \x3d \x22ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\\x3d\x22;\n  util.randInt \x3d function(ub) {\n    return Math.round(Math.random() * ub);\n  };\n  util.randHex \x3d function() {\n    return util.randInt(15).toString(16);\n  };\n  util.randomUUID \x3d function() {\n    var rhex \x3d (8 | 3 \x26 util.randInt(14)).toString(16), ret \x3d util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + \x22-\x22 + util.randHex() + util.randHex() + util.randHex() + util.randHex() + \x22-\x22 + \x224\x22 + util.randHex() + util.randHex() + util.randHex() + \x22-\x22 + rhex + util.randHex() + util.randHex() + util.randHex() + \x22-\x22 + util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + \n    util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex() + util.randHex();\n    return ret;\n  };\n  util.btoa \x3d function(input) {\n    if (typeof btoa !\x3d \x22undefined\x22) {\n      return btoa(input);\n    } else {\n      var str \x3d String(input);\n      for (var block, charCode, idx \x3d 0, map \x3d util.chars, output \x3d \x22\x22; str.charAt(idx | 0) || (map \x3d \x22\\x3d\x22, idx % 1); output +\x3d map.charAt(63 \x26 block \x3e\x3e 8 - idx % 1 * 8)) {\n        charCode \x3d str.charCodeAt(idx +\x3d 3 / 4);\n        if (charCode \x3e 255) {\n          throw new Error(\x22\x27btoa\x27 failed: The string to be encoded contains characters outside of the Latin1 range.\x22);\n        }\n        block \x3d block \x3c\x3c 8 | charCode;\n      }\n      return output;\n    }\n  };\n  util.atob \x3d function(input) {\n    if (typeof atob !\x3d \x22undefined\x22) {\n      return atob(input);\n    } else {\n      var str \x3d String(input).replace(/\x3d+$/, \x22\x22);\n      if (str.length % 4 \x3d\x3d 1) {\n        throw new Error(\x22\x27atob\x27 failed: The string to be decoded is not correctly encoded.\x22);\n      }\n      for (var bc \x3d 0, bs, buffer, idx \x3d 0, output \x3d \x22\x22; buffer \x3d str.charAt(idx++); ~buffer \x26\x26 (bs \x3d bc % 4 ? bs * 64 + buffer : buffer, bc++ % 4) ? output +\x3d String.fromCharCode(255 \x26 bs \x3e\x3e (-2 * bc \x26 6)) : 0) {\n        buffer \x3d util.chars.indexOf(buffer);\n      }\n      return output;\n    }\n  };\n  util.Uint8ToBase64 \x3d function(u8Arr) {\n    var CHUNK_SIZE \x3d 32768, index \x3d 0, length \x3d u8Arr.length, result \x3d \x22\x22, slice \x3d null;\n    while (index \x3c length) {\n      slice \x3d u8Arr.subarray(index, Math.min(index + CHUNK_SIZE, length));\n      result +\x3d String.fromCharCode.apply(null, slice);\n      index +\x3d CHUNK_SIZE;\n    }\n    return util.btoa(result);\n  };\n  util.Base64ToUint8 \x3d function(base64) {\n    var binary_string \x3d util.atob(base64), len \x3d binary_string.length, bytes \x3d new Uint8Array(len);\n    for (var i \x3d 0; i \x3c len; i++) {\n      var ascii \x3d binary_string.charCodeAt(i);\n      bytes[i] \x3d ascii;\n    }\n    return bytes;\n  };\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.delimiters.js", true , "goog.provide(\x22com.cognitect.transit.delimiters\x22);\ngoog.scope(function() {\n  var delimiters \x3d com.cognitect.transit.delimiters;\n  delimiters.ESC \x3d \x22~\x22;\n  delimiters.TAG \x3d \x22#\x22;\n  delimiters.SUB \x3d \x22^\x22;\n  delimiters.RES \x3d \x22`\x22;\n  delimiters.ESC_TAG \x3d \x22~#\x22;\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.caching.js", true , "goog.provide(\x22com.cognitect.transit.caching\x22);\ngoog.require(\x22com.cognitect.transit.delimiters\x22);\ngoog.scope(function() {\n  var caching \x3d com.cognitect.transit.caching, d \x3d com.cognitect.transit.delimiters;\n  caching.MIN_SIZE_CACHEABLE \x3d 3;\n  caching.BASE_CHAR_IDX \x3d 48;\n  caching.CACHE_CODE_DIGITS \x3d 44;\n  caching.MAX_CACHE_ENTRIES \x3d caching.CACHE_CODE_DIGITS * caching.CACHE_CODE_DIGITS;\n  caching.MAX_CACHE_SIZE \x3d 4096;\n  caching.isCacheable \x3d function(string, asMapKey) {\n    if (string.length \x3e caching.MIN_SIZE_CACHEABLE) {\n      if (asMapKey) {\n        return true;\n      } else {\n        var c0 \x3d string.charAt(0), c1 \x3d string.charAt(1);\n        if (c0 \x3d\x3d\x3d d.ESC) {\n          return c1 \x3d\x3d\x3d \x22:\x22 || c1 \x3d\x3d\x3d \x22$\x22 || c1 \x3d\x3d\x3d \x22#\x22;\n        } else {\n          return false;\n        }\n      }\n    } else {\n      return false;\n    }\n  };\n  caching.idxToCode \x3d function(idx) {\n    var hi \x3d Math.floor(idx / caching.CACHE_CODE_DIGITS), lo \x3d idx % caching.CACHE_CODE_DIGITS, loc \x3d String.fromCharCode(lo + caching.BASE_CHAR_IDX);\n    if (hi \x3d\x3d\x3d 0) {\n      return d.SUB + loc;\n    } else {\n      return d.SUB + String.fromCharCode(hi + caching.BASE_CHAR_IDX) + loc;\n    }\n  };\n  caching.WriteCache \x3d function() {\n    this.idx \x3d 0;\n    this.gen \x3d 0;\n    this.cacheSize \x3d 0;\n    this.cache \x3d {};\n  };\n  caching.WriteCache.prototype.write \x3d function(string, asMapKey) {\n    if (caching.isCacheable(string, asMapKey)) {\n      if (this.cacheSize \x3d\x3d\x3d caching.MAX_CACHE_SIZE) {\n        this.clear();\n        this.gen \x3d 0;\n        this.cache \x3d {};\n      } else {\n        if (this.idx \x3d\x3d\x3d caching.MAX_CACHE_ENTRIES) {\n          this.clear();\n        }\n      }\n      var entry \x3d this.cache[string];\n      if (entry \x3d\x3d null) {\n        this.cache[string] \x3d [caching.idxToCode(this.idx), this.gen];\n        this.idx++;\n        return string;\n      } else {\n        if (entry[1] !\x3d this.gen) {\n          entry[1] \x3d this.gen;\n          entry[0] \x3d caching.idxToCode(this.idx);\n          this.idx++;\n          return string;\n        } else {\n          return entry[0];\n        }\n      }\n    } else {\n      return string;\n    }\n  };\n  caching.WriteCache.prototype.clear \x3d function Transit$WriteCache() {\n    this.idx \x3d 0;\n    this.gen++;\n  };\n  caching.writeCache \x3d function() {\n    return new caching.WriteCache;\n  };\n  caching.isCacheCode \x3d function(string) {\n    return string.charAt(0) \x3d\x3d\x3d d.SUB \x26\x26 string.charAt(1) !\x3d\x3d \x22 \x22;\n  };\n  caching.codeToIdx \x3d function(code) {\n    if (code.length \x3d\x3d\x3d 2) {\n      return code.charCodeAt(1) - caching.BASE_CHAR_IDX;\n    } else {\n      var hi \x3d (code.charCodeAt(1) - caching.BASE_CHAR_IDX) * caching.CACHE_CODE_DIGITS, lo \x3d code.charCodeAt(2) - caching.BASE_CHAR_IDX;\n      return hi + lo;\n    }\n  };\n  caching.ReadCache \x3d function Transit$ReadCache() {\n    this.idx \x3d 0;\n    this.cache \x3d [];\n  };\n  caching.ReadCache.prototype.write \x3d function(obj, asMapKey) {\n    if (this.idx \x3d\x3d caching.MAX_CACHE_ENTRIES) {\n      this.idx \x3d 0;\n    }\n    this.cache[this.idx] \x3d obj;\n    this.idx++;\n    return obj;\n  };\n  caching.ReadCache.prototype.read \x3d function(string, asMapKey) {\n    return this.cache[caching.codeToIdx(string)];\n  };\n  caching.ReadCache.prototype.clear \x3d function() {\n    this.idx \x3d 0;\n  };\n  caching.readCache \x3d function() {\n    return new caching.ReadCache;\n  };\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.eq.js", true , "goog.provide(\x22com.cognitect.transit.eq\x22);\ngoog.require(\x22com.cognitect.transit.util\x22);\ngoog.scope(function() {\n  var eq \x3d com.cognitect.transit.eq, util \x3d com.cognitect.transit.util;\n  eq.hashCodeProperty \x3d \x22transit$hashCode$\x22;\n  eq.hashCodeCounter \x3d 1;\n  eq.equals \x3d function(x, y) {\n    if (x \x3d\x3d null) {\n      return y \x3d\x3d null;\n    } else {\n      if (x \x3d\x3d\x3d y) {\n        return true;\n      } else {\n        if (typeof x \x3d\x3d\x3d \x22object\x22) {\n          if (util.isArray(x)) {\n            if (util.isArray(y)) {\n              if (x.length \x3d\x3d\x3d y.length) {\n                for (var i \x3d 0; i \x3c x.length; i++) {\n                  if (!eq.equals(x[i], y[i])) {\n                    return false;\n                  }\n                }\n                return true;\n              } else {\n                return false;\n              }\n            } else {\n              return false;\n            }\n          } else {\n            if (x.com$cognitect$transit$equals) {\n              return x.com$cognitect$transit$equals(y);\n            } else {\n              if (y !\x3d null \x26\x26 typeof y \x3d\x3d\x3d \x22object\x22) {\n                if (y.com$cognitect$transit$equals) {\n                  return y.com$cognitect$transit$equals(x);\n                } else {\n                  var xklen \x3d 0, yklen \x3d util.objectKeys(y).length;\n                  for (var p in x) {\n                    if (!x.hasOwnProperty(p)) {\n                      continue;\n                    }\n                    xklen++;\n                    if (!y.hasOwnProperty(p)) {\n                      return false;\n                    } else {\n                      if (!eq.equals(x[p], y[p])) {\n                        return false;\n                      }\n                    }\n                  }\n                  return xklen \x3d\x3d\x3d yklen;\n                }\n              } else {\n                return false;\n              }\n            }\n          }\n        } else {\n          return false;\n        }\n      }\n    }\n  };\n  eq.hashCombine \x3d function(seed, hash) {\n    return seed ^ hash + 2654435769 + (seed \x3c\x3c 6) + (seed \x3e\x3e 2);\n  };\n  eq.stringCodeCache \x3d {};\n  eq.stringCodeCacheSize \x3d 0;\n  eq.STR_CACHE_MAX \x3d 256;\n  eq.hashString \x3d function(str) {\n    var cached \x3d eq.stringCodeCache[str];\n    if (cached !\x3d null) {\n      return cached;\n    }\n    var code \x3d 0;\n    for (var i \x3d 0; i \x3c str.length; ++i) {\n      code \x3d 31 * code + str.charCodeAt(i);\n      code %\x3d 4294967296;\n    }\n    eq.stringCodeCacheSize++;\n    if (eq.stringCodeCacheSize \x3e\x3d eq.STR_CACHE_MAX) {\n      eq.stringCodeCache \x3d {};\n      eq.stringCodeCacheSize \x3d 1;\n    }\n    eq.stringCodeCache[str] \x3d code;\n    return code;\n  };\n  eq.hashMapLike \x3d function(m) {\n    var code \x3d 0;\n    if (m.forEach !\x3d null) {\n      m.forEach(function(val, key, m) {\n        code \x3d (code + (eq.hashCode(key) ^ eq.hashCode(val))) % 4503599627370496;\n      });\n    } else {\n      var keys \x3d util.objectKeys(m);\n      for (var i \x3d 0; i \x3c keys.length; i++) {\n        var key \x3d keys[i];\n        var val \x3d m[key];\n        code \x3d (code + (eq.hashCode(key) ^ eq.hashCode(val))) % 4503599627370496;\n      }\n    }\n    return code;\n  };\n  eq.hashArrayLike \x3d function(arr) {\n    var code \x3d 0;\n    if (util.isArray(arr)) {\n      for (var i \x3d 0; i \x3c arr.length; i++) {\n        code \x3d eq.hashCombine(code, eq.hashCode(arr[i]));\n      }\n    } else {\n      if (arr.forEach) {\n        arr.forEach(function(x, i) {\n          code \x3d eq.hashCombine(code, eq.hashCode(x));\n        });\n      }\n    }\n    return code;\n  };\n  eq.hashCode \x3d function(x) {\n    if (x \x3d\x3d null) {\n      return 0;\n    } else {\n      switch(typeof x) {\n        case \x22number\x22:\n          return x;\n          break;\n        case \x22boolean\x22:\n          return x \x3d\x3d\x3d true ? 1 : 0;\n          break;\n        case \x22string\x22:\n          return eq.hashString(x);\n          break;\n        case \x22function\x22:\n          var code \x3d x[eq.hashCodeProperty];\n          if (code) {\n            return code;\n          } else {\n            code \x3d eq.hashCodeCounter;\n            if (typeof Object.defineProperty !\x3d \x22undefined\x22) {\n              Object.defineProperty(x, eq.hashCodeProperty, {value:code, enumerable:false});\n            } else {\n              x[eq.hashCodeProperty] \x3d code;\n            }\n            eq.hashCodeCounter++;\n            return code;\n          }\n          break;\n        default:\n          if (x instanceof Date) {\n            return x.valueOf();\n          } else {\n            if (util.isArray(x)) {\n              return eq.hashArrayLike(x);\n            }\n          }\n          if (x.com$cognitect$transit$hashCode) {\n            return x.com$cognitect$transit$hashCode();\n          } else {\n            return eq.hashMapLike(x);\n          }\n          break;\n      }\n    }\n  };\n  eq.extendToEQ \x3d function(obj, opts) {\n    obj.com$cognitect$transit$hashCode \x3d opts[\x22hashCode\x22];\n    obj.com$cognitect$transit$equals \x3d opts[\x22equals\x22];\n    return obj;\n  };\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.types.js", true , "goog.provide(\x22com.cognitect.transit.types\x22);\ngoog.require(\x22com.cognitect.transit.util\x22);\ngoog.require(\x22com.cognitect.transit.eq\x22);\ngoog.require(\x22goog.math.Long\x22);\ngoog.scope(function() {\n  var types \x3d com.cognitect.transit.types, util \x3d com.cognitect.transit.util, eq \x3d com.cognitect.transit.eq, Long \x3d goog.math.Long;\n  if (typeof Symbol !\x3d \x22undefined\x22) {\n    types.ITERATOR \x3d Symbol.iterator;\n  } else {\n    types.ITERATOR \x3d \x22@@iterator\x22;\n  }\n  types.TaggedValue \x3d function Transit$TaggedValue(tag, rep) {\n    this.tag \x3d tag;\n    this.rep \x3d rep;\n    this.hashCode \x3d -1;\n  };\n  types.TaggedValue.prototype.toString \x3d function() {\n    return \x22[TaggedValue: \x22 + this.tag + \x22, \x22 + this.rep + \x22]\x22;\n  };\n  types.TaggedValue.prototype.equiv \x3d function(other) {\n    return eq.equals(this, other);\n  };\n  types.TaggedValue.prototype[\x22equiv\x22] \x3d types.TaggedValue.prototype.equiv;\n  types.TaggedValue.prototype.com$cognitect$transit$equals \x3d function(other) {\n    if (other instanceof types.TaggedValue) {\n      return this.tag \x3d\x3d\x3d other.tag \x26\x26 eq.equals(this.rep, other.rep);\n    } else {\n      return false;\n    }\n  };\n  types.TaggedValue.prototype.com$cognitect$transit$hashCode \x3d function() {\n    if (this.hashCode \x3d\x3d\x3d -1) {\n      this.hashCode \x3d eq.hashCombine(eq.hashCode(this.tag), eq.hashCode(this.rep));\n    }\n    return this.hashCode;\n  };\n  types.taggedValue \x3d function(tag, rep) {\n    return new types.TaggedValue(tag, rep);\n  };\n  types.isTaggedValue \x3d function(x) {\n    return x instanceof types.TaggedValue;\n  };\n  types.nullValue \x3d function() {\n    return null;\n  };\n  types.boolValue \x3d function(s) {\n    return s \x3d\x3d\x3d \x22t\x22;\n  };\n  types.MAX_INT \x3d Long.fromString(\x229007199254740991\x22);\n  types.MIN_INT \x3d Long.fromString(\x22-9007199254740991\x22);\n  types.intValue \x3d function(s) {\n    if (typeof s \x3d\x3d\x3d \x22number\x22) {\n      return s;\n    } else {\n      if (s instanceof Long) {\n        return s;\n      } else {\n        var n \x3d Long.fromString(s, 10);\n        if (n.greaterThan(types.MAX_INT) || n.lessThan(types.MIN_INT)) {\n          return n;\n        } else {\n          return n.toNumber();\n        }\n      }\n    }\n  };\n  Long.prototype.equiv \x3d function(other) {\n    return eq.equals(this, other);\n  };\n  Long.prototype[\x22equiv\x22] \x3d Long.prototype.equiv;\n  Long.prototype.com$cognitect$transit$equals \x3d function(other) {\n    return other instanceof Long \x26\x26 this.equals(other);\n  };\n  Long.prototype.com$cognitect$transit$hashCode \x3d function() {\n    return this.toInt();\n  };\n  types.isInteger \x3d function(x) {\n    if (x instanceof Long) {\n      return true;\n    } else {\n      return typeof x \x3d\x3d\x3d \x22number\x22 \x26\x26 !isNaN(x) \x26\x26 !(x \x3d\x3d\x3d Infinity) \x26\x26 parseFloat(x) \x3d\x3d\x3d parseInt(x, 10);\n    }\n  };\n  types.floatValue \x3d function(s) {\n    return parseFloat(s);\n  };\n  types.bigInteger \x3d function(s) {\n    return types.taggedValue(\x22n\x22, s);\n  };\n  types.isBigInteger \x3d function(x) {\n    return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22n\x22;\n  };\n  types.bigDecimalValue \x3d function(s) {\n    return types.taggedValue(\x22f\x22, s);\n  };\n  types.isBigDecimal \x3d function(x) {\n    return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22f\x22;\n  };\n  types.charValue \x3d function(s) {\n    return s;\n  };\n  types.Keyword \x3d function Transit$Keyword(name) {\n    this._name \x3d name;\n    this.hashCode \x3d -1;\n  };\n  types.Keyword.prototype.toString \x3d function() {\n    return \x22:\x22 + this._name;\n  };\n  types.Keyword.prototype[\x22namespace\x22] \x3d function() {\n    var idx \x3d this._name.indexOf(\x22/\x22);\n    if (idx !\x3d -1) {\n      return this._name.substring(0, idx);\n    } else {\n      return null;\n    }\n  };\n  types.Keyword.prototype[\x22name\x22] \x3d function() {\n    var idx \x3d this._name.indexOf(\x22/\x22);\n    if (idx !\x3d -1) {\n      return this._name.substring(idx + 1, this._name.length);\n    } else {\n      return this._name;\n    }\n  };\n  types.Keyword.prototype.equiv \x3d function(other) {\n    return eq.equals(this, other);\n  };\n  types.Keyword.prototype[\x22equiv\x22] \x3d types.Keyword.prototype.equiv;\n  types.Keyword.prototype.com$cognitect$transit$equals \x3d function(other) {\n    return other instanceof types.Keyword \x26\x26 this._name \x3d\x3d other._name;\n  };\n  types.Keyword.prototype.com$cognitect$transit$hashCode \x3d function() {\n    if (this.hashCode \x3d\x3d\x3d -1) {\n      this.hashCode \x3d eq.hashCode(this._name);\n    }\n    return this.hashCode;\n  };\n  types.keyword \x3d function(s) {\n    return new types.Keyword(s);\n  };\n  types.isKeyword \x3d function(x) {\n    return x instanceof types.Keyword;\n  };\n  types.Symbol \x3d function Transit$Symbol(name) {\n    this._name \x3d name;\n    this.hashCode \x3d -1;\n  };\n  types.Symbol.prototype[\x22namespace\x22] \x3d function() {\n    var idx \x3d this._name.indexOf(\x22/\x22);\n    if (idx !\x3d -1) {\n      return this._name.substring(0, idx);\n    } else {\n      return null;\n    }\n  };\n  types.Symbol.prototype[\x22name\x22] \x3d function() {\n    var idx \x3d this._name.indexOf(\x22/\x22);\n    if (idx !\x3d -1) {\n      return this._name.substring(idx + 1, this._name.length);\n    } else {\n      return this._name;\n    }\n  };\n  types.Symbol.prototype.toString \x3d function() {\n    return this._name;\n  };\n  types.Symbol.prototype.equiv \x3d function(other) {\n    return eq.equals(this, other);\n  };\n  types.Symbol.prototype[\x22equiv\x22] \x3d types.Symbol.prototype.equiv;\n  types.Symbol.prototype.com$cognitect$transit$equals \x3d function(other) {\n    return other instanceof types.Symbol \x26\x26 this._name \x3d\x3d other._name;\n  };\n  types.Symbol.prototype.com$cognitect$transit$hashCode \x3d function() {\n    if (this.hashCode \x3d\x3d\x3d -1) {\n      this.hashCode \x3d eq.hashCode(this._name);\n    }\n    return this.hashCode;\n  };\n  types.symbol \x3d function(s) {\n    return new types.Symbol(s);\n  };\n  types.isSymbol \x3d function(x) {\n    return x instanceof types.Symbol;\n  };\n  types.hexFor \x3d function(aLong, sidx, eidx) {\n    var ret \x3d \x22\x22;\n    eidx \x3d eidx || sidx + 1;\n    for (var i \x3d sidx, shift \x3d (7 - i) * 8, mask \x3d Long.fromInt(255).shiftLeft(shift); i \x3c eidx; i++, shift -\x3d 8, mask \x3d mask.shiftRightUnsigned(8)) {\n      var s \x3d aLong.and(mask).shiftRightUnsigned(shift).toString(16);\n      if (s.length \x3d\x3d 1) {\n        s \x3d \x220\x22 + s;\n      }\n      ret +\x3d s;\n    }\n    return ret;\n  };\n  types.UUID \x3d function Transit$UUID(high, low) {\n    this.high \x3d high;\n    this.low \x3d low;\n    this.hashCode \x3d -1;\n  };\n  types.UUID.prototype.getLeastSignificantBits \x3d function() {\n    return this.low;\n  };\n  types.UUID.prototype.getMostSignificantBits \x3d function() {\n    return this.high;\n  };\n  types.UUID.prototype.toString \x3d function() {\n    var s \x3d \x22\x22, hi64 \x3d this.high, lo64 \x3d this.low;\n    s +\x3d types.hexFor(hi64, 0, 4) + \x22-\x22;\n    s +\x3d types.hexFor(hi64, 4, 6) + \x22-\x22;\n    s +\x3d types.hexFor(hi64, 6, 8) + \x22-\x22;\n    s +\x3d types.hexFor(lo64, 0, 2) + \x22-\x22;\n    s +\x3d types.hexFor(lo64, 2, 8);\n    return s;\n  };\n  types.UUID.prototype.equiv \x3d function(other) {\n    return eq.equals(this, other);\n  };\n  types.UUID.prototype[\x22equiv\x22] \x3d types.UUID.prototype.equiv;\n  types.UUID.prototype.com$cognitect$transit$equals \x3d function(other) {\n    return other instanceof types.UUID \x26\x26 this.high.equals(other.high) \x26\x26 this.low.equals(other.low);\n  };\n  types.UUID.prototype.com$cognitect$transit$hashCode \x3d function() {\n    if (this.hashCode \x3d\x3d\x3d -1) {\n      this.hashCode \x3d eq.hashCode(this.toString());\n    }\n    return this.hashCode;\n  };\n  types.UUIDfromString \x3d function uuidFromString(s) {\n    s \x3d s.replace(/-/g, \x22\x22);\n    var hi64 \x3d null, lo64 \x3d null, hi32 \x3d 0, lo32 \x3d 0, off \x3d 24, i \x3d 0;\n    for (hi32 \x3d 0, i \x3d 0, off \x3d 24; i \x3c 8; i +\x3d 2, off -\x3d 8) {\n      hi32 |\x3d parseInt(s.substring(i, i + 2), 16) \x3c\x3c off;\n    }\n    for (lo32 \x3d 0, i \x3d 8, off \x3d 24; i \x3c 16; i +\x3d 2, off -\x3d 8) {\n      lo32 |\x3d parseInt(s.substring(i, i + 2), 16) \x3c\x3c off;\n    }\n    hi64 \x3d Long.fromBits(lo32, hi32);\n    for (hi32 \x3d 0, i \x3d 16, off \x3d 24; i \x3c 24; i +\x3d 2, off -\x3d 8) {\n      hi32 |\x3d parseInt(s.substring(i, i + 2), 16) \x3c\x3c off;\n    }\n    for (lo32 \x3d 0, i \x3d 24, off \x3d 24; i \x3c 32; i +\x3d 2, off -\x3d 8) {\n      lo32 |\x3d parseInt(s.substring(i, i + 2), 16) \x3c\x3c off;\n    }\n    lo64 \x3d Long.fromBits(lo32, hi32);\n    return new types.UUID(hi64, lo64);\n  };\n  types.uuid \x3d function(s) {\n    return types.UUIDfromString(s);\n  };\n  types.isUUID \x3d function(x) {\n    return x instanceof types.UUID;\n  };\n  types.date \x3d function(s) {\n    s \x3d typeof s \x3d\x3d\x3d \x22number\x22 ? s : parseInt(s, 10);\n    return new Date(s);\n  };\n  types.verboseDate \x3d function(s) {\n    return new Date(s);\n  };\n  Date.prototype.com$cognitect$transit$equals \x3d function(other) {\n    if (other instanceof Date) {\n      return this.valueOf() \x3d\x3d\x3d other.valueOf();\n    } else {\n      return false;\n    }\n  };\n  Date.prototype.com$cognitect$transit$hashCode \x3d function() {\n    return this.valueOf();\n  };\n  types.binary \x3d function(str, decoder) {\n    if ((!decoder || decoder.preferBuffers !\x3d\x3d false) \x26\x26 typeof goog.global.Buffer !\x3d \x22undefined\x22) {\n      return new goog.global.Buffer(str, \x22base64\x22);\n    } else {\n      if (typeof Uint8Array !\x3d \x22undefined\x22) {\n        return util.Base64ToUint8(str);\n      } else {\n        return types.taggedValue(\x22b\x22, str);\n      }\n    }\n  };\n  types.isBinary \x3d function(x) {\n    if (typeof goog.global.Buffer !\x3d \x22undefined\x22 \x26\x26 x instanceof goog.global.Buffer) {\n      return true;\n    } else {\n      if (typeof Uint8Array !\x3d \x22undefined\x22 \x26\x26 x instanceof Uint8Array) {\n        return true;\n      } else {\n        return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22b\x22;\n      }\n    }\n  };\n  types.uri \x3d function(s) {\n    return types.taggedValue(\x22r\x22, s);\n  };\n  types.isURI \x3d function(x) {\n    return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22r\x22;\n  };\n  types.KEYS \x3d 0;\n  types.VALUES \x3d 1;\n  types.ENTRIES \x3d 2;\n  types.TransitArrayMapIterator \x3d function Transit$ArrayMapIterator(entries, type) {\n    this.entries \x3d entries;\n    this.type \x3d type || types.KEYS;\n    this.idx \x3d 0;\n  };\n  types.TransitArrayMapIterator.prototype.next \x3d function() {\n    if (this.idx \x3c this.entries.length) {\n      var value \x3d null;\n      if (this.type \x3d\x3d\x3d types.KEYS) {\n        value \x3d this.entries[this.idx];\n      } else {\n        if (this.type \x3d\x3d\x3d types.VALUES) {\n          value \x3d this.entries[this.idx + 1];\n        } else {\n          value \x3d [this.entries[this.idx], this.entries[this.idx + 1]];\n        }\n      }\n      var ret \x3d {\x22value\x22:value, \x22done\x22:false};\n      this.idx +\x3d 2;\n      return ret;\n    } else {\n      return {\x22value\x22:null, \x22done\x22:true};\n    }\n  };\n  types.TransitArrayMapIterator.prototype[\x22next\x22] \x3d types.TransitArrayMapIterator.prototype.next;\n  types.TransitArrayMapIterator.prototype[types.ITERATOR] \x3d function() {\n    return this;\n  };\n  types.TransitMapIterator \x3d function Transit$MapIterator(map, type) {\n    this.map \x3d map;\n    this.type \x3d type || types.KEYS;\n    this.keys \x3d this.map.getKeys();\n    this.idx \x3d 0;\n    this.bucket \x3d null;\n    this.bucketIdx \x3d 0;\n  };\n  types.TransitMapIterator.prototype.next \x3d function() {\n    if (this.idx \x3c this.map.size) {\n      if (this.bucket \x3d\x3d null || !(this.bucketIdx \x3c this.bucket.length)) {\n        this.bucket \x3d this.map.map[this.keys[this.idx]];\n        this.bucketIdx \x3d 0;\n      }\n      var value \x3d null;\n      if (this.type \x3d\x3d\x3d types.KEYS) {\n        value \x3d this.bucket[this.bucketIdx];\n      } else {\n        if (this.type \x3d\x3d\x3d types.VALUES) {\n          value \x3d this.bucket[this.bucketIdx + 1];\n        } else {\n          value \x3d [this.bucket[this.bucketIdx], this.bucket[this.bucketIdx + 1]];\n        }\n      }\n      var ret \x3d {\x22value\x22:value, \x22done\x22:false};\n      this.idx++;\n      this.bucketIdx +\x3d 2;\n      return ret;\n    } else {\n      return {\x22value\x22:null, \x22done\x22:true};\n    }\n  };\n  types.TransitMapIterator.prototype[\x22next\x22] \x3d types.TransitMapIterator.prototype.next;\n  types.TransitMapIterator.prototype[types.ITERATOR] \x3d function() {\n    return this;\n  };\n  types.mapEquals \x3d function(me, you) {\n    if (me instanceof types.TransitMap \x26\x26 types.isMap(you)) {\n      if (me.size !\x3d\x3d you.size) {\n        return false;\n      }\n      for (var code in me.map) {\n        var bucket \x3d me.map[code];\n        for (var j \x3d 0; j \x3c bucket.length; j +\x3d 2) {\n          if (!eq.equals(bucket[j + 1], you.get(bucket[j]))) {\n            return false;\n          }\n        }\n      }\n      return true;\n    } else {\n      if (me instanceof types.TransitArrayMap \x26\x26 types.isMap(you)) {\n        if (me.size !\x3d\x3d you.size) {\n          return false;\n        }\n        var entries \x3d me._entries;\n        for (var j \x3d 0; j \x3c entries.length; j +\x3d 2) {\n          if (!eq.equals(entries[j + 1], you.get(entries[j]))) {\n            return false;\n          }\n        }\n        return true;\n      } else {\n        if (you !\x3d null \x26\x26 typeof you \x3d\x3d\x3d \x22object\x22) {\n          var ks \x3d util.objectKeys(you), kslen \x3d ks.length;\n          if (me.size \x3d\x3d\x3d kslen) {\n            for (var i \x3d 0; i \x3c kslen; i++) {\n              var k \x3d ks[i];\n              if (!me.has(k) || !eq.equals(you[k], me.get(k))) {\n                return false;\n              }\n            }\n            return true;\n          } else {\n            return false;\n          }\n        } else {\n          return false;\n        }\n      }\n    }\n  };\n  types.SMALL_ARRAY_MAP_THRESHOLD \x3d 8;\n  types.ARRAY_MAP_THRESHOLD \x3d 32;\n  types.ARRAY_MAP_ACCESS_THRESHOLD \x3d 32;\n  types.print \x3d function(x) {\n    if (x \x3d\x3d null) {\n      return \x22null\x22;\n    }\n    if (goog.isArray(x)) {\n      return \x22[\x22 + x.toString() + \x22]\x22;\n    } else {\n      if (goog.isString(x)) {\n        return \x27\x22\x27 + x + \x27\x22\x27;\n      } else {\n        return x.toString();\n      }\n    }\n  };\n  types.printMap \x3d function(map) {\n    var idx \x3d 0, str \x3d \x22TransitMap {\x22;\n    map.forEach(function(v, k) {\n      str +\x3d types.print(k) + \x22 \\x3d\\x3e \x22 + types.print(v);\n      if (idx \x3c map.size - 1) {\n        str +\x3d \x22, \x22;\n      }\n      idx++;\n    });\n    return str + \x22}\x22;\n  };\n  types.printSet \x3d function(set) {\n    var idx \x3d 0, str \x3d \x22TransitSet {\x22;\n    set.forEach(function(v) {\n      str +\x3d types.print(v);\n      if (idx \x3c set.size - 1) {\n        str +\x3d \x22, \x22;\n      }\n      idx++;\n    });\n    return str + \x22}\x22;\n  };\n  types.TransitArrayMap \x3d function Transit$ArrayMap(entries) {\n    this._entries \x3d entries;\n    this.backingMap \x3d null;\n    this.hashCode \x3d -1;\n    this.size \x3d entries.length / 2;\n    this.accesses \x3d 0;\n  };\n  types.TransitArrayMap.prototype.toString \x3d function() {\n    return types.printMap(this);\n  };\n  types.TransitArrayMap.prototype[\x22inspect\x22] \x3d function() {\n    return this.toString();\n  };\n  types.TransitArrayMap.prototype.convert \x3d function() {\n    if (this.backingMap) {\n      throw Error(\x22Invalid operation, already converted\x22);\n    }\n    if (this.size \x3c types.SMALL_ARRAY_MAP_THRESHOLD) {\n      return false;\n    }\n    this.accesses++;\n    if (this.accesses \x3e types.ARRAY_MAP_ACCESS_THRESHOLD) {\n      this.backingMap \x3d types.map(this._entries, false, true);\n      this._entries \x3d [];\n      return true;\n    } else {\n      return false;\n    }\n  };\n  types.TransitArrayMap.prototype.clear \x3d function() {\n    this.hashCode \x3d -1;\n    if (this.backingMap) {\n      this.backingMap.clear();\n      this.size \x3d 0;\n    } else {\n      this._entries \x3d [];\n      this.size \x3d 0;\n    }\n  };\n  types.TransitArrayMap.prototype[\x22clear\x22] \x3d types.TransitArrayMap.prototype.clear;\n  types.TransitArrayMap.prototype.keys \x3d function() {\n    if (this.backingMap) {\n      return this.backingMap.keys();\n    } else {\n      return new types.TransitArrayMapIterator(this._entries, types.KEYS);\n    }\n  };\n  types.TransitArrayMap.prototype[\x22keys\x22] \x3d types.TransitArrayMap.prototype.keys;\n  types.TransitArrayMap.prototype.keySet \x3d function() {\n    if (this.backingMap) {\n      return this.backingMap.keySet();\n    } else {\n      var ret \x3d [];\n      for (var i \x3d 0, j \x3d 0; j \x3c this._entries.length; i++, j +\x3d 2) {\n        ret[i] \x3d this._entries[j];\n      }\n      return ret;\n    }\n  };\n  types.TransitArrayMap.prototype[\x22keySet\x22] \x3d types.TransitArrayMap.prototype.keySet;\n  types.TransitArrayMap.prototype.entries \x3d function() {\n    if (this.backingMap) {\n      return this.backingMap.entries();\n    } else {\n      return new types.TransitArrayMapIterator(this._entries, types.ENTRIES);\n    }\n  };\n  types.TransitArrayMap.prototype[\x22entries\x22] \x3d types.TransitArrayMap.prototype.entries;\n  types.TransitArrayMap.prototype.values \x3d function() {\n    if (this.backingMap) {\n      return this.backingMap.values();\n    } else {\n      return new types.TransitArrayMapIterator(this._entries, types.VALUES);\n    }\n  };\n  types.TransitArrayMap.prototype[\x22values\x22] \x3d types.TransitArrayMap.prototype.values;\n  types.TransitArrayMap.prototype.forEach \x3d function(f) {\n    if (this.backingMap) {\n      this.backingMap.forEach(f);\n    } else {\n      for (var i \x3d 0; i \x3c this._entries.length; i +\x3d 2) {\n        f(this._entries[i + 1], this._entries[i]);\n      }\n    }\n  };\n  types.TransitArrayMap.prototype[\x22forEach\x22] \x3d types.TransitArrayMap.prototype.forEach;\n  types.TransitArrayMap.prototype.get \x3d function(k, notFound) {\n    if (this.backingMap) {\n      return this.backingMap.get(k);\n    } else {\n      if (this.convert()) {\n        return this.get(k);\n      } else {\n        for (var i \x3d 0; i \x3c this._entries.length; i +\x3d 2) {\n          if (eq.equals(this._entries[i], k)) {\n            return this._entries[i + 1];\n          }\n        }\n        return notFound;\n      }\n    }\n  };\n  types.TransitArrayMap.prototype[\x22get\x22] \x3d types.TransitArrayMap.prototype.get;\n  types.TransitArrayMap.prototype.has \x3d function(k) {\n    if (this.backingMap) {\n      return this.backingMap.has(k);\n    } else {\n      if (this.convert()) {\n        return this.has(k);\n      } else {\n        for (var i \x3d 0; i \x3c this._entries.length; i +\x3d 2) {\n          if (eq.equals(this._entries[i], k)) {\n            return true;\n          }\n        }\n        return false;\n      }\n    }\n  };\n  types.TransitArrayMap.prototype[\x22has\x22] \x3d types.TransitArrayMap.prototype.has;\n  types.TransitArrayMap.prototype.set \x3d function(k, v) {\n    this.hashCode \x3d -1;\n    if (this.backingMap) {\n      this.backingMap.set(k, v);\n      this.size \x3d this.backingMap.size;\n    } else {\n      for (var i \x3d 0; i \x3c this._entries.length; i +\x3d 2) {\n        if (eq.equals(this._entries[i], k)) {\n          this._entries[i + 1] \x3d v;\n          return;\n        }\n      }\n      this._entries.push(k);\n      this._entries.push(v);\n      this.size++;\n      if (this.size \x3e types.ARRAY_MAP_THRESHOLD) {\n        this.backingMap \x3d types.map(this._entries, false, true);\n        this._entries \x3d null;\n      }\n    }\n  };\n  types.TransitArrayMap.prototype[\x22set\x22] \x3d types.TransitArrayMap.prototype.set;\n  types.TransitArrayMap.prototype[\x22delete\x22] \x3d function(k) {\n    this.hashCode \x3d -1;\n    if (this.backingMap) {\n      var ret \x3d this.backingMap.delete(k);\n      this.size \x3d this.backingMap.size;\n      return ret;\n    } else {\n      for (var i \x3d 0; i \x3c this._entries.length; i +\x3d 2) {\n        if (eq.equals(this._entries[i], k)) {\n          var ret \x3d this._entries[i + 1];\n          this._entries.splice(i, 2);\n          this.size--;\n          return ret;\n        }\n      }\n    }\n  };\n  types.TransitArrayMap.prototype.clone \x3d function() {\n    var clone \x3d types.map();\n    this.forEach(function(v, k) {\n      clone.set(k, v);\n    });\n    return clone;\n  };\n  types.TransitArrayMap.prototype[\x22clone\x22] \x3d types.TransitArrayMap.prototype.clone;\n  types.TransitArrayMap.prototype[types.ITERATOR] \x3d function() {\n    return this.entries();\n  };\n  types.TransitArrayMap.prototype.com$cognitect$transit$hashCode \x3d function() {\n    if (this.backingMap) {\n      return this.backingMap.com$cognitect$transit$hashCode();\n    } else {\n      if (this.hashCode \x3d\x3d\x3d -1) {\n        this.hashCode \x3d eq.hashMapLike(this);\n      }\n      return this.hashCode;\n    }\n  };\n  types.TransitArrayMap.prototype.com$cognitect$transit$equals \x3d function(other) {\n    if (this.backingMap) {\n      return types.mapEquals(this.backingMap, other);\n    } else {\n      return types.mapEquals(this, other);\n    }\n  };\n  types.TransitMap \x3d function Transit$Map(keys, map, size) {\n    this.map \x3d map || {};\n    this._keys \x3d keys || [];\n    this.size \x3d size || 0;\n    this.hashCode \x3d -1;\n  };\n  types.TransitMap.prototype.toString \x3d function() {\n    return types.printMap(this);\n  };\n  types.TransitMap.prototype[\x22inspect\x22] \x3d function() {\n    return this.toString();\n  };\n  types.TransitMap.prototype.clear \x3d function() {\n    this.hashCode \x3d -1;\n    this.map \x3d {};\n    this._keys \x3d [];\n    this.size \x3d 0;\n  };\n  types.TransitMap.prototype[\x22clear\x22] \x3d types.TransitMap.prototype.clear;\n  types.TransitMap.prototype.getKeys \x3d function() {\n    if (this._keys !\x3d null) {\n      return this._keys;\n    } else {\n      return util.objectKeys(this.map);\n    }\n  };\n  types.TransitMap.prototype[\x22delete\x22] \x3d function(k) {\n    this.hashCode \x3d -1;\n    this._keys \x3d null;\n    var code \x3d eq.hashCode(k), bucket \x3d this.map[code];\n    for (var i \x3d 0; i \x3c bucket.length; i +\x3d 2) {\n      if (eq.equals(k, bucket[i])) {\n        var ret \x3d bucket[i + 1];\n        bucket.splice(i, 2);\n        if (bucket.length \x3d\x3d\x3d 0) {\n          delete this.map[code];\n        }\n        this.size--;\n        return ret;\n      }\n    }\n  };\n  types.TransitMap.prototype.entries \x3d function() {\n    return new types.TransitMapIterator(this, types.ENTRIES);\n  };\n  types.TransitMap.prototype[\x22entries\x22] \x3d types.TransitMap.prototype.entries;\n  types.TransitMap.prototype.forEach \x3d function(callback) {\n    var ks \x3d this.getKeys();\n    for (var i \x3d 0; i \x3c ks.length; i++) {\n      var bucket \x3d this.map[ks[i]];\n      for (var j \x3d 0; j \x3c bucket.length; j +\x3d 2) {\n        callback(bucket[j + 1], bucket[j], this);\n      }\n    }\n  };\n  types.TransitMap.prototype[\x22forEach\x22] \x3d types.TransitMap.prototype.forEach;\n  types.TransitMap.prototype.get \x3d function(k, notFound) {\n    var code \x3d eq.hashCode(k), bucket \x3d this.map[code];\n    if (bucket !\x3d null) {\n      for (var i \x3d 0; i \x3c bucket.length; i +\x3d 2) {\n        if (eq.equals(k, bucket[i])) {\n          return bucket[i + 1];\n        }\n      }\n    } else {\n      return notFound;\n    }\n  };\n  types.TransitMap.prototype[\x22get\x22] \x3d types.TransitMap.prototype.get;\n  types.TransitMap.prototype.has \x3d function(k) {\n    var code \x3d eq.hashCode(k), bucket \x3d this.map[code];\n    if (bucket !\x3d null) {\n      for (var i \x3d 0; i \x3c bucket.length; i +\x3d 2) {\n        if (eq.equals(k, bucket[i])) {\n          return true;\n        }\n      }\n      return false;\n    } else {\n      return false;\n    }\n  };\n  types.TransitMap.prototype[\x22has\x22] \x3d types.TransitMap.prototype.has;\n  types.TransitMap.prototype.keys \x3d function() {\n    return new types.TransitMapIterator(this, types.KEYS);\n  };\n  types.TransitMap.prototype[\x22keys\x22] \x3d types.TransitMap.prototype.keys;\n  types.TransitMap.prototype.keySet \x3d function() {\n    var keys \x3d this.getKeys(), ret \x3d [];\n    for (var i \x3d 0; i \x3c keys.length; i++) {\n      var bucket \x3d this.map[keys[i]];\n      for (var j \x3d 0; j \x3c bucket.length; j +\x3d 2) {\n        ret.push(bucket[j]);\n      }\n    }\n    return ret;\n  };\n  types.TransitMap.prototype[\x22keySet\x22] \x3d types.TransitMap.prototype.keySet;\n  types.TransitMap.prototype.set \x3d function(k, v) {\n    this.hashCode \x3d -1;\n    var code \x3d eq.hashCode(k), bucket \x3d this.map[code];\n    if (bucket \x3d\x3d null) {\n      if (this._keys) {\n        this._keys.push(code);\n      }\n      this.map[code] \x3d [k, v];\n      this.size++;\n    } else {\n      var newEntry \x3d true;\n      for (var i \x3d 0; i \x3c bucket.length; i +\x3d 2) {\n        if (eq.equals(v, bucket[i])) {\n          newEntry \x3d false;\n          bucket[i] \x3d v;\n          break;\n        }\n      }\n      if (newEntry) {\n        bucket.push(k);\n        bucket.push(v);\n        this.size++;\n      }\n    }\n  };\n  types.TransitMap.prototype[\x22set\x22] \x3d types.TransitMap.prototype.set;\n  types.TransitMap.prototype.values \x3d function() {\n    return new types.TransitMapIterator(this, types.VALUES);\n  };\n  types.TransitMap.prototype[\x22values\x22] \x3d types.TransitMap.prototype.values;\n  types.TransitMap.prototype.clone \x3d function() {\n    var clone \x3d types.map();\n    this.forEach(function(v, k) {\n      clone.set(k, v);\n    });\n    return clone;\n  };\n  types.TransitMap.prototype[\x22clone\x22] \x3d types.TransitMap.prototype.clone;\n  types.TransitMap.prototype[types.ITERATOR] \x3d function() {\n    return this.entries();\n  };\n  types.TransitMap.prototype.com$cognitect$transit$hashCode \x3d function() {\n    if (this.hashCode \x3d\x3d\x3d -1) {\n      this.hashCode \x3d eq.hashMapLike(this);\n    }\n    return this.hashCode;\n  };\n  types.TransitMap.prototype.com$cognitect$transit$equals \x3d function(other) {\n    return types.mapEquals(this, other);\n  };\n  types.map \x3d function(arr, checkDups, hashMap) {\n    arr \x3d arr || [];\n    checkDups \x3d checkDups \x3d\x3d\x3d false ? checkDups : true;\n    hashMap \x3d hashMap \x3d\x3d\x3d true ? hashMap : false;\n    if (!hashMap \x26\x26 arr.length \x3c\x3d types.ARRAY_MAP_THRESHOLD * 2) {\n      if (checkDups) {\n        var t \x3d arr;\n        arr \x3d [];\n        for (var i \x3d 0; i \x3c t.length; i +\x3d 2) {\n          var seen \x3d false;\n          for (var j \x3d 0; j \x3c arr.length; j +\x3d 2) {\n            if (eq.equals(arr[j], t[i])) {\n              arr[j + 1] \x3d t[i + 1];\n              seen \x3d true;\n              break;\n            }\n          }\n          if (!seen) {\n            arr.push(t[i]);\n            arr.push(t[i + 1]);\n          }\n        }\n      }\n      return new types.TransitArrayMap(arr);\n    } else {\n      var map \x3d {}, keys \x3d [], size \x3d 0;\n      for (var i \x3d 0; i \x3c arr.length; i +\x3d 2) {\n        var code \x3d eq.hashCode(arr[i]), bucket \x3d map[code];\n        if (bucket \x3d\x3d null) {\n          keys.push(code);\n          map[code] \x3d [arr[i], arr[i + 1]];\n          size++;\n        } else {\n          var newEntry \x3d true;\n          for (var j \x3d 0; j \x3c bucket.length; j +\x3d 2) {\n            if (eq.equals(bucket[j], arr[i])) {\n              bucket[j + 1] \x3d arr[i + 1];\n              newEntry \x3d false;\n              break;\n            }\n          }\n          if (newEntry) {\n            bucket.push(arr[i]);\n            bucket.push(arr[i + 1]);\n            size++;\n          }\n        }\n      }\n      return new types.TransitMap(keys, map, size);\n    }\n  };\n  types.isArrayMap \x3d function(x) {\n    return x instanceof types.TransitArrayMap;\n  };\n  types.isMap \x3d function(x) {\n    return x instanceof types.TransitArrayMap || x instanceof types.TransitMap;\n  };\n  types.TransitSet \x3d function Transit$Set(map) {\n    this.map \x3d map;\n    this.size \x3d map.size;\n  };\n  types.TransitSet.prototype.toString \x3d function() {\n    return types.printSet(this);\n  };\n  types.TransitSet.prototype[\x22inspect\x22] \x3d function() {\n    return this.toString();\n  };\n  types.TransitSet.prototype.add \x3d function(value) {\n    this.map.set(value, value);\n    this.size \x3d this.map.size;\n  };\n  types.TransitSet.prototype[\x22add\x22] \x3d types.TransitSet.prototype.add;\n  types.TransitSet.prototype.clear \x3d function() {\n    this.map \x3d new types.TransitMap;\n    this.size \x3d 0;\n  };\n  types.TransitSet.prototype[\x22clear\x22] \x3d types.TransitSet.prototype.clear;\n  types.TransitSet.prototype[\x22delete\x22] \x3d function(value) {\n    var ret \x3d this.map.delete(value);\n    this.size \x3d this.map.size;\n    return ret;\n  };\n  types.TransitSet.prototype.entries \x3d function() {\n    return this.map.entries();\n  };\n  types.TransitSet.prototype[\x22entries\x22] \x3d types.TransitSet.prototype.entries;\n  types.TransitSet.prototype.forEach \x3d function(iterator, thisArg) {\n    var self \x3d this;\n    this.map.forEach(function(v, k, m) {\n      iterator(k, self);\n    });\n  };\n  types.TransitSet.prototype[\x22forEach\x22] \x3d types.TransitSet.prototype.forEach;\n  types.TransitSet.prototype.has \x3d function(value) {\n    return this.map.has(value);\n  };\n  types.TransitSet.prototype[\x22has\x22] \x3d types.TransitSet.prototype.has;\n  types.TransitSet.prototype.keys \x3d function() {\n    return this.map.keys();\n  };\n  types.TransitSet.prototype[\x22keys\x22] \x3d types.TransitSet.prototype.keys;\n  types.TransitSet.prototype.keySet \x3d function() {\n    return this.map.keySet();\n  };\n  types.TransitSet.prototype[\x22keySet\x22] \x3d types.TransitSet.prototype.keySet;\n  types.TransitSet.prototype.values \x3d function() {\n    return this.map.values();\n  };\n  types.TransitSet.prototype[\x22values\x22] \x3d types.TransitSet.prototype.values;\n  types.TransitSet.prototype.clone \x3d function() {\n    var clone \x3d types.set();\n    this.forEach(function(k) {\n      clone.add(k);\n    });\n    return clone;\n  };\n  types.TransitSet.prototype[\x22clone\x22] \x3d types.TransitSet.prototype.clone;\n  types.TransitSet.prototype[types.ITERATOR] \x3d function() {\n    return this.values();\n  };\n  types.TransitSet.prototype.com$cognitect$transit$equals \x3d function(other) {\n    if (other instanceof types.TransitSet) {\n      if (this.size \x3d\x3d\x3d other.size) {\n        return eq.equals(this.map, other.map);\n      }\n    } else {\n      return false;\n    }\n  };\n  types.TransitSet.prototype.com$cognitect$transit$hashCode \x3d function(other) {\n    return eq.hashCode(this.map);\n  };\n  types.set \x3d function(arr) {\n    arr \x3d arr || [];\n    var map \x3d {}, keys \x3d [], size \x3d 0;\n    for (var i \x3d 0; i \x3c arr.length; i++) {\n      var code \x3d eq.hashCode(arr[i]), vals \x3d map[code];\n      if (vals \x3d\x3d null) {\n        keys.push(code);\n        map[code] \x3d [arr[i], arr[i]];\n        size++;\n      } else {\n        var newEntry \x3d true;\n        for (var j \x3d 0; j \x3c vals.length; j +\x3d 2) {\n          if (eq.equals(vals[j], arr[i])) {\n            newEntry \x3d false;\n            break;\n          }\n        }\n        if (newEntry) {\n          vals.push(arr[i]);\n          vals.push(arr[i]);\n          size++;\n        }\n      }\n    }\n    return new types.TransitSet(new types.TransitMap(keys, map, size));\n  };\n  types.isSet \x3d function(x) {\n    return x instanceof types.TransitSet;\n  };\n  types.quoted \x3d function(obj) {\n    return types.taggedValue(\x22\x27\x22, obj);\n  };\n  types.isQuoted \x3d function(x) {\n    return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22\x27\x22;\n  };\n  types.list \x3d function(xs) {\n    return types.taggedValue(\x22list\x22, xs);\n  };\n  types.isList \x3d function(x) {\n    return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22list\x22;\n  };\n  types.link \x3d function(rep) {\n    return types.taggedValue(\x22link\x22, rep);\n  };\n  types.isLink \x3d function(x) {\n    return x instanceof types.TaggedValue \x26\x26 x.tag \x3d\x3d\x3d \x22link\x22;\n  };\n  types.specialDouble \x3d function(v) {\n    switch(v) {\n      case \x22-INF\x22:\n        return -Infinity;\n      case \x22INF\x22:\n        return Infinity;\n      case \x22NaN\x22:\n        return NaN;\n      default:\n        throw new Error(\x22Invalid special double value \x22 + v);\n        break;\n    }\n  };\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.impl.decoder.js", true , "goog.provide(\x22com.cognitect.transit.impl.decoder\x22);\ngoog.require(\x22com.cognitect.transit.util\x22);\ngoog.require(\x22com.cognitect.transit.delimiters\x22);\ngoog.require(\x22com.cognitect.transit.caching\x22);\ngoog.require(\x22com.cognitect.transit.types\x22);\ngoog.scope(function() {\n  var decoder \x3d com.cognitect.transit.impl.decoder, util \x3d com.cognitect.transit.util, d \x3d com.cognitect.transit.delimiters, caching \x3d com.cognitect.transit.caching, types \x3d com.cognitect.transit.types;\n  decoder.Tag \x3d function Transit$Tag(s) {\n    this.str \x3d s;\n  };\n  decoder.tag \x3d function(s) {\n    return new decoder.Tag(s);\n  };\n  decoder.isTag \x3d function(x) {\n    return x \x26\x26 x instanceof decoder.Tag;\n  };\n  decoder.isGroundHandler \x3d function(handler) {\n    switch(handler) {\n      case \x22_\x22:\n      case \x22s\x22:\n      case \x22?\x22:\n      case \x22i\x22:\n      case \x22d\x22:\n      case \x22b\x22:\n      case \x22\x27\x22:\n      case \x22array\x22:\n      case \x22map\x22:\n        return true;\n    }\n    return false;\n  };\n  decoder.Decoder \x3d function Transit$Decoder(options) {\n    this.options \x3d options || {};\n    this.handlers \x3d {};\n    for (var h in this.defaults.handlers) {\n      this.handlers[h] \x3d this.defaults.handlers[h];\n    }\n    for (var h in this.options[\x22handlers\x22]) {\n      if (decoder.isGroundHandler(h)) {\n        throw new Error(\x27Cannot override handler for ground type \x22\x27 + h + \x27\x22\x27);\n      }\n      this.handlers[h] \x3d this.options[\x22handlers\x22][h];\n    }\n    this.preferStrings \x3d this.options[\x22preferStrings\x22] !\x3d null ? this.options[\x22preferStrings\x22] : this.defaults.preferStrings;\n    this.preferBuffers \x3d this.options[\x22preferBuffers\x22] !\x3d null ? this.options[\x22preferBuffers\x22] : this.defaults.preferBuffers;\n    this.defaultHandler \x3d this.options[\x22defaultHandler\x22] || this.defaults.defaultHandler;\n    this.mapBuilder \x3d this.options[\x22mapBuilder\x22];\n    this.arrayBuilder \x3d this.options[\x22arrayBuilder\x22];\n  };\n  decoder.Decoder.prototype.defaults \x3d {handlers:{\x22_\x22:function(v, d) {\n    return types.nullValue();\n  }, \x22?\x22:function(v, d) {\n    return types.boolValue(v);\n  }, \x22b\x22:function(v, d) {\n    return types.binary(v, d);\n  }, \x22i\x22:function(v, d) {\n    return types.intValue(v);\n  }, \x22n\x22:function(v, d) {\n    return types.bigInteger(v);\n  }, \x22d\x22:function(v, d) {\n    return types.floatValue(v);\n  }, \x22f\x22:function(v, d) {\n    return types.bigDecimalValue(v);\n  }, \x22c\x22:function(v, d) {\n    return types.charValue(v);\n  }, \x22:\x22:function(v, d) {\n    return types.keyword(v);\n  }, \x22$\x22:function(v, d) {\n    return types.symbol(v);\n  }, \x22r\x22:function(v, d) {\n    return types.uri(v);\n  }, \x22z\x22:function(v, d) {\n    return types.specialDouble(v);\n  }, \x22\x27\x22:function(v, d) {\n    return v;\n  }, \x22m\x22:function(v, d) {\n    return types.date(v);\n  }, \x22t\x22:function(v, d) {\n    return types.verboseDate(v);\n  }, \x22u\x22:function(v, d) {\n    return types.uuid(v);\n  }, \x22set\x22:function(v, d) {\n    return types.set(v);\n  }, \x22list\x22:function(v, d) {\n    return types.list(v);\n  }, \x22link\x22:function(v, d) {\n    return types.link(v);\n  }, \x22cmap\x22:function(v, d) {\n    return types.map(v, false);\n  }}, defaultHandler:function(c, val) {\n    return types.taggedValue(c, val);\n  }, preferStrings:true, preferBuffers:true};\n  decoder.Decoder.prototype.decode \x3d function(node, cache, asMapKey, tagValue) {\n    if (node \x3d\x3d null) {\n      return null;\n    }\n    var t \x3d typeof node;\n    switch(t) {\n      case \x22string\x22:\n        return this.decodeString(node, cache, asMapKey, tagValue);\n        break;\n      case \x22object\x22:\n        if (util.isArray(node)) {\n          if (node[0] \x3d\x3d\x3d \x22^ \x22) {\n            return this.decodeArrayHash(node, cache, asMapKey, tagValue);\n          } else {\n            return this.decodeArray(node, cache, asMapKey, tagValue);\n          }\n        } else {\n          return this.decodeHash(node, cache, asMapKey, tagValue);\n        }\n        break;\n    }\n    return node;\n  };\n  decoder.Decoder.prototype[\x22decode\x22] \x3d decoder.Decoder.prototype.decode;\n  decoder.Decoder.prototype.decodeString \x3d function(string, cache, asMapKey, tagValue) {\n    if (caching.isCacheable(string, asMapKey)) {\n      var val \x3d this.parseString(string, cache, false);\n      if (cache) {\n        cache.write(val, asMapKey);\n      }\n      return val;\n    } else {\n      if (caching.isCacheCode(string)) {\n        return cache.read(string, asMapKey);\n      } else {\n        return this.parseString(string, cache, asMapKey);\n      }\n    }\n  };\n  decoder.Decoder.prototype.decodeHash \x3d function(hash, cache, asMapKey, tagValue) {\n    var ks \x3d util.objectKeys(hash), key \x3d ks[0], tag \x3d ks.length \x3d\x3d 1 ? this.decode(key, cache, false, false) : null;\n    if (decoder.isTag(tag)) {\n      var val \x3d hash[key], handler \x3d this.handlers[tag.str];\n      if (handler !\x3d null) {\n        return handler(this.decode(val, cache, false, true), this);\n      } else {\n        return types.taggedValue(tag.str, this.decode(val, cache, false, false));\n      }\n    } else {\n      if (this.mapBuilder) {\n        if (ks.length \x3c types.SMALL_ARRAY_MAP_THRESHOLD * 2 \x26\x26 this.mapBuilder.fromArray) {\n          var nodep \x3d [];\n          for (var i \x3d 0; i \x3c ks.length; i++) {\n            var strKey \x3d ks[i];\n            nodep.push(this.decode(strKey, cache, true, false));\n            nodep.push(this.decode(hash[strKey], cache, false, false));\n          }\n          return this.mapBuilder.fromArray(nodep, hash);\n        } else {\n          var ret \x3d this.mapBuilder.init(hash);\n          for (var i \x3d 0; i \x3c ks.length; i++) {\n            var strKey \x3d ks[i];\n            ret \x3d this.mapBuilder.add(ret, this.decode(strKey, cache, true, false), this.decode(hash[strKey], cache, false, false), hash);\n          }\n          return this.mapBuilder.finalize(ret, hash);\n        }\n      } else {\n        var nodep \x3d [];\n        for (var i \x3d 0; i \x3c ks.length; i++) {\n          var strKey \x3d ks[i];\n          nodep.push(this.decode(strKey, cache, true, false));\n          nodep.push(this.decode(hash[strKey], cache, false, false));\n        }\n        return types.map(nodep, false);\n      }\n    }\n  };\n  decoder.Decoder.prototype.decodeArrayHash \x3d function(node, cache, asMapKey, tagValue) {\n    if (this.mapBuilder) {\n      if (node.length \x3c types.SMALL_ARRAY_MAP_THRESHOLD * 2 + 1 \x26\x26 this.mapBuilder.fromArray) {\n        var nodep \x3d [];\n        for (var i \x3d 1; i \x3c node.length; i +\x3d 2) {\n          nodep.push(this.decode(node[i], cache, true, false));\n          nodep.push(this.decode(node[i + 1], cache, false, false));\n        }\n        return this.mapBuilder.fromArray(nodep, node);\n      } else {\n        var ret \x3d this.mapBuilder.init(node);\n        for (var i \x3d 1; i \x3c node.length; i +\x3d 2) {\n          ret \x3d this.mapBuilder.add(ret, this.decode(node[i], cache, true, false), this.decode(node[i + 1], cache, false, false), node);\n        }\n        return this.mapBuilder.finalize(ret, node);\n      }\n    } else {\n      var nodep \x3d [];\n      for (var i \x3d 1; i \x3c node.length; i +\x3d 2) {\n        nodep.push(this.decode(node[i], cache, true, false));\n        nodep.push(this.decode(node[i + 1], cache, false, false));\n      }\n      return types.map(nodep, false);\n    }\n  };\n  decoder.Decoder.prototype.decodeArray \x3d function(node, cache, asMapKey, tagValue) {\n    if (tagValue) {\n      var ret \x3d [];\n      for (var i \x3d 0; i \x3c node.length; i++) {\n        ret.push(this.decode(node[i], cache, asMapKey, false));\n      }\n      return ret;\n    } else {\n      var cacheIdx \x3d cache \x26\x26 cache.idx;\n      if (node.length \x3d\x3d\x3d 2 \x26\x26 typeof node[0] \x3d\x3d\x3d \x22string\x22) {\n        var tag \x3d this.decode(node[0], cache, false, false);\n        if (decoder.isTag(tag)) {\n          var val \x3d node[1], handler \x3d this.handlers[tag.str];\n          if (handler !\x3d null) {\n            var ret \x3d handler(this.decode(val, cache, asMapKey, true), this);\n            return ret;\n          } else {\n            return types.taggedValue(tag.str, this.decode(val, cache, asMapKey, false));\n          }\n        }\n      }\n      if (cache \x26\x26 cacheIdx !\x3d cache.idx) {\n        cache.idx \x3d cacheIdx;\n      }\n      if (this.arrayBuilder) {\n        if (node.length \x3c\x3d 32 \x26\x26 this.arrayBuilder.fromArray) {\n          var arr \x3d [];\n          for (var i \x3d 0; i \x3c node.length; i++) {\n            arr.push(this.decode(node[i], cache, asMapKey, false));\n          }\n          return this.arrayBuilder.fromArray(arr, node);\n        } else {\n          var ret \x3d this.arrayBuilder.init(node);\n          for (var i \x3d 0; i \x3c node.length; i++) {\n            ret \x3d this.arrayBuilder.add(ret, this.decode(node[i], cache, asMapKey, false), node);\n          }\n          return this.arrayBuilder.finalize(ret, node);\n        }\n      } else {\n        var ret \x3d [];\n        for (var i \x3d 0; i \x3c node.length; i++) {\n          ret.push(this.decode(node[i], cache, asMapKey, false));\n        }\n        return ret;\n      }\n    }\n  };\n  decoder.Decoder.prototype.parseString \x3d function(string, cache, asMapKey) {\n    if (string.charAt(0) \x3d\x3d\x3d d.ESC) {\n      var c \x3d string.charAt(1);\n      if (c \x3d\x3d\x3d d.ESC || c \x3d\x3d\x3d d.SUB || c \x3d\x3d\x3d d.RES) {\n        return string.substring(1);\n      } else {\n        if (c \x3d\x3d\x3d d.TAG) {\n          return decoder.tag(string.substring(2));\n        } else {\n          var handler \x3d this.handlers[c];\n          if (handler \x3d\x3d null) {\n            return this.defaultHandler(c, string.substring(2));\n          } else {\n            return handler(string.substring(2), this);\n          }\n        }\n      }\n    } else {\n      return string;\n    }\n  };\n  decoder.decoder \x3d function(options) {\n    return new decoder.Decoder(options);\n  };\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.impl.reader.js", true , "goog.provide(\x22com.cognitect.transit.impl.reader\x22);\ngoog.require(\x22com.cognitect.transit.impl.decoder\x22);\ngoog.require(\x22com.cognitect.transit.caching\x22);\ngoog.scope(function() {\n  var reader \x3d com.cognitect.transit.impl.reader, decoder \x3d com.cognitect.transit.impl.decoder, caching \x3d com.cognitect.transit.caching;\n  reader.JSONUnmarshaller \x3d function Transit$JSONUnmarshaller(opts) {\n    this.decoder \x3d new decoder.Decoder(opts);\n  };\n  reader.JSONUnmarshaller.prototype.unmarshal \x3d function(str, cache) {\n    return this.decoder.decode(JSON.parse(str), cache);\n  };\n  reader.Reader \x3d function Transit$Reader(unmarshaller, options) {\n    this.unmarshaller \x3d unmarshaller;\n    this.options \x3d options || {};\n    this.cache \x3d this.options[\x22cache\x22] ? this.options[\x22cache\x22] : new caching.ReadCache;\n  };\n  reader.Reader.prototype.read \x3d function(str) {\n    var ret \x3d this.unmarshaller.unmarshal(str, this.cache);\n    this.cache.clear();\n    return ret;\n  };\n  reader.Reader.prototype[\x22read\x22] \x3d reader.Reader.prototype.read;\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.handlers.js", true , "goog.provide(\x22com.cognitect.transit.handlers\x22);\ngoog.require(\x22com.cognitect.transit.util\x22);\ngoog.require(\x22com.cognitect.transit.types\x22);\ngoog.require(\x22goog.math.Long\x22);\ngoog.scope(function() {\n  var handlers \x3d com.cognitect.transit.handlers, util \x3d com.cognitect.transit.util, types \x3d com.cognitect.transit.types, Long \x3d goog.math.Long;\n  handlers.ctorGuid \x3d 0;\n  handlers.ctorGuidProperty \x3d \x22transit$guid$\x22 + util.randomUUID();\n  handlers.typeTag \x3d function(ctor) {\n    if (ctor \x3d\x3d null) {\n      return \x22null\x22;\n    } else {\n      if (ctor \x3d\x3d\x3d String) {\n        return \x22string\x22;\n      } else {\n        if (ctor \x3d\x3d\x3d Boolean) {\n          return \x22boolean\x22;\n        } else {\n          if (ctor \x3d\x3d\x3d Number) {\n            return \x22number\x22;\n          } else {\n            if (ctor \x3d\x3d\x3d Array) {\n              return \x22array\x22;\n            } else {\n              if (ctor \x3d\x3d\x3d Object) {\n                return \x22map\x22;\n              } else {\n                var tag \x3d ctor[handlers.ctorGuidProperty];\n                if (tag \x3d\x3d null) {\n                  if (typeof Object.defineProperty !\x3d \x22undefined\x22) {\n                    tag \x3d ++handlers.ctorGuid;\n                    Object.defineProperty(ctor, handlers.ctorGuidProperty, {value:tag, enumerable:false});\n                  } else {\n                    ctor[handlers.ctorGuidProperty] \x3d tag \x3d ++handlers.ctorGuid;\n                  }\n                }\n                return tag;\n              }\n            }\n          }\n        }\n      }\n    }\n  };\n  handlers.constructor \x3d function(x) {\n    if (x \x3d\x3d null) {\n      return null;\n    } else {\n      return x.constructor;\n    }\n  };\n  handlers.padZeros \x3d function(n, m) {\n    var s \x3d n.toString();\n    for (var i \x3d s.length; i \x3c m; i++) {\n      s \x3d \x220\x22 + s;\n    }\n    return s;\n  };\n  handlers.stringableKeys \x3d function(m) {\n    var stringable \x3d false, ks \x3d util.objectKeys(m);\n    for (var i \x3d 0; i \x3c ks.length; i++) {\n    }\n    return true;\n  };\n  handlers.NilHandler \x3d function Transit$NilHandler() {\n  };\n  handlers.NilHandler.prototype.tag \x3d function(v) {\n    return \x22_\x22;\n  };\n  handlers.NilHandler.prototype.rep \x3d function(v) {\n    return null;\n  };\n  handlers.NilHandler.prototype.stringRep \x3d function(v) {\n    return \x22null\x22;\n  };\n  handlers.StringHandler \x3d function Transit$StringHandler() {\n  };\n  handlers.StringHandler.prototype.tag \x3d function(v) {\n    return \x22s\x22;\n  };\n  handlers.StringHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.StringHandler.prototype.stringRep \x3d function(v) {\n    return v;\n  };\n  handlers.NumberHandler \x3d function Transit$NumberHandler() {\n  };\n  handlers.NumberHandler.prototype.tag \x3d function(v) {\n    return \x22i\x22;\n  };\n  handlers.NumberHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.NumberHandler.prototype.stringRep \x3d function(v) {\n    return v.toString();\n  };\n  handlers.IntegerHandler \x3d function Transit$IntegerHandler() {\n  };\n  handlers.IntegerHandler.prototype.tag \x3d function(v) {\n    return \x22i\x22;\n  };\n  handlers.IntegerHandler.prototype.rep \x3d function(v) {\n    return v.toString();\n  };\n  handlers.IntegerHandler.prototype.stringRep \x3d function(v) {\n    return v.toString();\n  };\n  handlers.BooleanHandler \x3d function Transit$BooleanHandler() {\n  };\n  handlers.BooleanHandler.prototype.tag \x3d function(v) {\n    return \x22?\x22;\n  };\n  handlers.BooleanHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.BooleanHandler.prototype.stringRep \x3d function(v) {\n    return v.toString();\n  };\n  handlers.ArrayHandler \x3d function Transit$ArrayHandler() {\n  };\n  handlers.ArrayHandler.prototype.tag \x3d function(v) {\n    return \x22array\x22;\n  };\n  handlers.ArrayHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.ArrayHandler.prototype.stringRep \x3d function(v) {\n    return null;\n  };\n  handlers.MapHandler \x3d function Transit$MapHandler() {\n  };\n  handlers.MapHandler.prototype.tag \x3d function(v) {\n    return \x22map\x22;\n  };\n  handlers.MapHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.MapHandler.prototype.stringRep \x3d function(v) {\n    return null;\n  };\n  handlers.VerboseDateHandler \x3d function Transit$VerboseDateHandler() {\n  };\n  handlers.VerboseDateHandler.prototype.tag \x3d function(v) {\n    return \x22t\x22;\n  };\n  handlers.VerboseDateHandler.prototype.rep \x3d function(v) {\n    return v.getUTCFullYear() + \x22-\x22 + handlers.padZeros(v.getUTCMonth() + 1, 2) + \x22-\x22 + handlers.padZeros(v.getUTCDate(), 2) + \x22T\x22 + handlers.padZeros(v.getUTCHours(), 2) + \x22:\x22 + handlers.padZeros(v.getUTCMinutes(), 2) + \x22:\x22 + handlers.padZeros(v.getUTCSeconds(), 2) + \x22.\x22 + handlers.padZeros(v.getUTCMilliseconds(), 3) + \x22Z\x22;\n  };\n  handlers.VerboseDateHandler.prototype.stringRep \x3d function(v, h) {\n    return h.rep(v);\n  };\n  handlers.DateHandler \x3d function Transit$DateHandler() {\n  };\n  handlers.DateHandler.prototype.tag \x3d function(v) {\n    return \x22m\x22;\n  };\n  handlers.DateHandler.prototype.rep \x3d function(v) {\n    return v.valueOf();\n  };\n  handlers.DateHandler.prototype.stringRep \x3d function(v) {\n    return v.valueOf().toString();\n  };\n  handlers.DateHandler.prototype.getVerboseHandler \x3d function(v) {\n    return new handlers.VerboseDateHandler;\n  };\n  handlers.UUIDHandler \x3d function Transit$UUIDHandler() {\n  };\n  handlers.UUIDHandler.prototype.tag \x3d function(v) {\n    return \x22u\x22;\n  };\n  handlers.UUIDHandler.prototype.rep \x3d function(v) {\n    return v.toString();\n  };\n  handlers.UUIDHandler.prototype.stringRep \x3d function(v) {\n    return v.toString();\n  };\n  handlers.KeywordHandler \x3d function Transit$KeywordHandler() {\n  };\n  handlers.KeywordHandler.prototype.tag \x3d function(v) {\n    return \x22:\x22;\n  };\n  handlers.KeywordHandler.prototype.rep \x3d function(v) {\n    return v._name;\n  };\n  handlers.KeywordHandler.prototype.stringRep \x3d function(v, h) {\n    return h.rep(v);\n  };\n  handlers.SymbolHandler \x3d function Transit$SymbolHandler() {\n  };\n  handlers.SymbolHandler.prototype.tag \x3d function(v) {\n    return \x22$\x22;\n  };\n  handlers.SymbolHandler.prototype.rep \x3d function(v) {\n    return v._name;\n  };\n  handlers.SymbolHandler.prototype.stringRep \x3d function(v, h) {\n    return h.rep(v);\n  };\n  handlers.TaggedHandler \x3d function Transit$TaggedHandler() {\n  };\n  handlers.TaggedHandler.prototype.tag \x3d function(v) {\n    return v.tag;\n  };\n  handlers.TaggedHandler.prototype.rep \x3d function(v) {\n    return v.rep;\n  };\n  handlers.TaggedHandler.prototype.stringRep \x3d function(v, h) {\n    return null;\n  };\n  handlers.TransitSetHandler \x3d function Transit$TransitSetHandler() {\n  };\n  handlers.TransitSetHandler.prototype.tag \x3d function(v) {\n    return \x22set\x22;\n  };\n  handlers.TransitSetHandler.prototype.rep \x3d function(v) {\n    var arr \x3d [];\n    v.forEach(function(key, set) {\n      arr.push(key);\n    });\n    return types.taggedValue(\x22array\x22, arr);\n  };\n  handlers.TransitSetHandler.prototype.stringRep \x3d function(v, h) {\n    return null;\n  };\n  handlers.TransitArrayMapHandler \x3d function Transit$ArrayMapHandler() {\n  };\n  handlers.TransitArrayMapHandler.prototype.tag \x3d function(v) {\n    return \x22map\x22;\n  };\n  handlers.TransitArrayMapHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.TransitArrayMapHandler.prototype.stringRep \x3d function(v, h) {\n    return null;\n  };\n  handlers.TransitMapHandler \x3d function Transit$MapHandler() {\n  };\n  handlers.TransitMapHandler.prototype.tag \x3d function(v) {\n    return \x22map\x22;\n  };\n  handlers.TransitMapHandler.prototype.rep \x3d function(v) {\n    return v;\n  };\n  handlers.TransitMapHandler.prototype.stringRep \x3d function(v, h) {\n    return null;\n  };\n  handlers.BufferHandler \x3d function Transit$BufferHandler() {\n  };\n  handlers.BufferHandler.prototype.tag \x3d function(v) {\n    return \x22b\x22;\n  };\n  handlers.BufferHandler.prototype.rep \x3d function(v) {\n    return v.toString(\x22base64\x22);\n  };\n  handlers.BufferHandler.prototype.stringRep \x3d function(v, h) {\n    return null;\n  };\n  handlers.Uint8ArrayHandler \x3d function Transit$Uint8ArrayHandler() {\n  };\n  handlers.Uint8ArrayHandler.prototype.tag \x3d function(v) {\n    return \x22b\x22;\n  };\n  handlers.Uint8ArrayHandler.prototype.rep \x3d function(v) {\n    return util.Uint8ToBase64(v);\n  };\n  handlers.Uint8ArrayHandler.prototype.stringRep \x3d function(v, h) {\n    return null;\n  };\n  handlers.defaultHandlers \x3d function(hs) {\n    hs.set(null, new handlers.NilHandler);\n    hs.set(String, new handlers.StringHandler);\n    hs.set(Number, new handlers.NumberHandler);\n    hs.set(Long, new handlers.IntegerHandler);\n    hs.set(Boolean, new handlers.BooleanHandler);\n    hs.set(Array, new handlers.ArrayHandler);\n    hs.set(Object, new handlers.MapHandler);\n    hs.set(Date, new handlers.DateHandler);\n    hs.set(types.UUID, new handlers.UUIDHandler);\n    hs.set(types.Keyword, new handlers.KeywordHandler);\n    hs.set(types.Symbol, new handlers.SymbolHandler);\n    hs.set(types.TaggedValue, new handlers.TaggedHandler);\n    hs.set(types.TransitSet, new handlers.TransitSetHandler);\n    hs.set(types.TransitArrayMap, new handlers.TransitArrayMapHandler);\n    hs.set(types.TransitMap, new handlers.TransitMapHandler);\n    if (typeof goog.global.Buffer !\x3d \x22undefined\x22) {\n      hs.set(goog.global.Buffer, new handlers.BufferHandler);\n    }\n    if (typeof Uint8Array !\x3d \x22undefined\x22) {\n      hs.set(Uint8Array, new handlers.Uint8ArrayHandler);\n    }\n    return hs;\n  };\n  handlers.Handlers \x3d function Transit$Handlers() {\n    this.handlers \x3d {};\n    handlers.defaultHandlers(this);\n  };\n  handlers.Handlers.prototype.get \x3d function(ctor) {\n    var h \x3d null;\n    if (typeof ctor \x3d\x3d\x3d \x22string\x22) {\n      h \x3d this.handlers[ctor];\n    } else {\n      h \x3d this.handlers[handlers.typeTag(ctor)];\n    }\n    if (h !\x3d null) {\n      return h;\n    } else {\n      return this.handlers[\x22default\x22];\n    }\n  };\n  handlers.Handlers.prototype[\x22get\x22] \x3d handlers.Handlers.prototype.get;\n  handlers.validTag \x3d function(tag) {\n    switch(tag) {\n      case \x22null\x22:\n      case \x22string\x22:\n      case \x22boolean\x22:\n      case \x22number\x22:\n      case \x22array\x22:\n      case \x22map\x22:\n        return false;\n        break;\n    }\n    return true;\n  };\n  handlers.Handlers.prototype.set \x3d function(ctor, handler) {\n    if (typeof ctor \x3d\x3d\x3d \x22string\x22 \x26\x26 handlers.validTag(ctor)) {\n      this.handlers[ctor] \x3d handler;\n    } else {\n      this.handlers[handlers.typeTag(ctor)] \x3d handler;\n    }\n  };\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.impl.writer.js", true , "goog.provide(\x22com.cognitect.transit.impl.writer\x22);\ngoog.require(\x22com.cognitect.transit.util\x22);\ngoog.require(\x22com.cognitect.transit.caching\x22);\ngoog.require(\x22com.cognitect.transit.handlers\x22);\ngoog.require(\x22com.cognitect.transit.types\x22);\ngoog.require(\x22com.cognitect.transit.delimiters\x22);\ngoog.require(\x22goog.math.Long\x22);\ngoog.scope(function() {\n  var writer \x3d com.cognitect.transit.impl.writer, util \x3d com.cognitect.transit.util, caching \x3d com.cognitect.transit.caching, handlers \x3d com.cognitect.transit.handlers, types \x3d com.cognitect.transit.types, d \x3d com.cognitect.transit.delimiters, Long \x3d goog.math.Long;\n  writer.escape \x3d function(string) {\n    if (string.length \x3e 0) {\n      var c \x3d string.charAt(0);\n      if (c \x3d\x3d\x3d d.ESC || c \x3d\x3d\x3d d.SUB || c \x3d\x3d\x3d d.RES) {\n        return d.ESC + string;\n      } else {\n        return string;\n      }\n    } else {\n      return string;\n    }\n  };\n  writer.JSONMarshaller \x3d function Transit$JSONMarshaller(opts) {\n    this.opts \x3d opts || {};\n    this.preferStrings \x3d this.opts[\x22preferStrings\x22] !\x3d null ? this.opts[\x22preferStrings\x22] : true;\n    this.objectBuilder \x3d this.opts[\x22objectBuilder\x22] || null;\n    this.transform \x3d this.opts[\x22transform\x22] || null;\n    this.handlers \x3d new handlers.Handlers;\n    var optsHandlers \x3d this.opts[\x22handlers\x22];\n    if (optsHandlers) {\n      if (util.isArray(optsHandlers) || !optsHandlers.forEach) {\n        throw new Error(\x27transit writer \x22handlers\x22 option must be a map\x27);\n      }\n      var self \x3d this;\n      optsHandlers.forEach(function(v, k) {\n        if (k !\x3d\x3d undefined) {\n          self.handlers.set(k, v);\n        } else {\n          throw new Error(\x22Cannot create handler for JavaScript undefined\x22);\n        }\n      });\n    }\n    this.handlerForForeign \x3d this.opts[\x22handlerForForeign\x22];\n    this.unpack \x3d this.opts[\x22unpack\x22] || function(x) {\n      if (types.isArrayMap(x) \x26\x26 x.backingMap \x3d\x3d\x3d null) {\n        return x._entries;\n      } else {\n        return false;\n      }\n    };\n    this.verbose \x3d this.opts \x26\x26 this.opts[\x22verbose\x22] || false;\n  };\n  writer.JSONMarshaller.prototype.handler \x3d function(obj) {\n    var h \x3d this.handlers.get(handlers.constructor(obj));\n    if (h !\x3d null) {\n      return h;\n    } else {\n      var tag \x3d obj \x26\x26 obj[\x22transitTag\x22];\n      if (tag) {\n        return this.handlers.get(tag);\n      } else {\n        return null;\n      }\n    }\n  };\n  writer.JSONMarshaller.prototype.registerHandler \x3d function(ctor, handler) {\n    this.handlers.set(ctor, handler);\n  };\n  writer.JSONMarshaller.prototype.emitNil \x3d function(asMapKey, cache) {\n    if (asMapKey) {\n      return this.emitString(d.ESC, \x22_\x22, \x22\x22, asMapKey, cache);\n    } else {\n      return null;\n    }\n  };\n  writer.JSONMarshaller.prototype.emitString \x3d function(prefix, tag, s, asMapKey, cache) {\n    var string \x3d prefix + tag + s;\n    if (cache) {\n      return cache.write(string, asMapKey);\n    } else {\n      return string;\n    }\n  };\n  writer.JSONMarshaller.prototype.emitBoolean \x3d function(b, asMapKey, cache) {\n    if (asMapKey) {\n      var s \x3d b.toString();\n      return this.emitString(d.ESC, \x22?\x22, s[0], asMapKey, cache);\n    } else {\n      return b;\n    }\n  };\n  writer.JSONMarshaller.prototype.emitInteger \x3d function(i, asMapKey, cache) {\n    if (i \x3d\x3d\x3d Infinity) {\n      return this.emitString(d.ESC, \x22z\x22, \x22INF\x22, asMapKey, cache);\n    } else {\n      if (i \x3d\x3d\x3d -Infinity) {\n        return this.emitString(d.ESC, \x22z\x22, \x22-INF\x22, asMapKey, cache);\n      } else {\n        if (isNaN(i)) {\n          return this.emitString(d.ESC, \x22z\x22, \x22NaN\x22, asMapKey, cache);\n        } else {\n          if (asMapKey || typeof i \x3d\x3d\x3d \x22string\x22 || i instanceof Long) {\n            return this.emitString(d.ESC, \x22i\x22, i.toString(), asMapKey, cache);\n          } else {\n            return i;\n          }\n        }\n      }\n    }\n  };\n  writer.JSONMarshaller.prototype.emitDouble \x3d function(d, asMapKey, cache) {\n    if (asMapKey) {\n      return this.emitString(d.ESC, \x22d\x22, d, asMapKey, cache);\n    } else {\n      return d;\n    }\n  };\n  writer.JSONMarshaller.prototype.emitBinary \x3d function(b, asMapKey, cache) {\n    return this.emitString(d.ESC, \x22b\x22, b, asMapKey, cache);\n  };\n  writer.JSONMarshaller.prototype.emitQuoted \x3d function(em, obj, cache) {\n    if (em.verbose) {\n      var ret \x3d {}, k \x3d this.emitString(d.ESC_TAG, \x22\x27\x22, \x22\x22, true, cache);\n      ret[k] \x3d writer.marshal(this, obj, false, cache);\n      return ret;\n    } else {\n      return [this.emitString(d.ESC_TAG, \x22\x27\x22, \x22\x22, true, cache), writer.marshal(this, obj, false, cache)];\n    }\n  };\n  writer.emitObjects \x3d function(em, iterable, cache) {\n    var ret \x3d [];\n    if (util.isArray(iterable)) {\n      for (var i \x3d 0; i \x3c iterable.length; i++) {\n        ret.push(writer.marshal(em, iterable[i], false, cache));\n      }\n    } else {\n      iterable.forEach(function(v, i) {\n        ret.push(writer.marshal(em, v, false, cache));\n      });\n    }\n    return ret;\n  };\n  writer.emitArray \x3d function(em, iterable, skip, cache) {\n    return writer.emitObjects(em, iterable, cache);\n  };\n  writer.isStringableKey \x3d function(em, k) {\n    if (typeof k !\x3d\x3d \x22string\x22) {\n      var h \x3d em.handler(k);\n      return h \x26\x26 h.tag(k).length \x3d\x3d\x3d 1;\n    } else {\n      return true;\n    }\n  };\n  writer.stringableKeys \x3d function(em, obj) {\n    var arr \x3d em.unpack(obj), stringableKeys \x3d true;\n    if (arr) {\n      for (var i \x3d 0; i \x3c arr.length; i +\x3d 2) {\n        stringableKeys \x3d writer.isStringableKey(em, arr[i]);\n        if (!stringableKeys) {\n          break;\n        }\n      }\n      return stringableKeys;\n    } else {\n      if (obj.keys) {\n        var iter \x3d obj.keys(), step \x3d null;\n        if (iter.next) {\n          step \x3d iter.next();\n          while (!step.done) {\n            stringableKeys \x3d writer.isStringableKey(em, step.value);\n            if (!stringableKeys) {\n              break;\n            }\n            step \x3d iter.next();\n          }\n          return stringableKeys;\n        }\n      }\n    }\n    if (obj.forEach) {\n      obj.forEach(function(v, k) {\n        stringableKeys \x3d stringableKeys \x26\x26 writer.isStringableKey(em, k);\n      });\n      return stringableKeys;\n    } else {\n      throw new Error(\x22Cannot walk keys of object type \x22 + handlers.constructor(obj).name);\n    }\n  };\n  writer.isForeignObject \x3d function(x) {\n    if (x.constructor[\x22transit$isObject\x22]) {\n      return true;\n    }\n    var ret \x3d x.constructor.toString();\n    ret \x3d ret.substr(\x22function \x22.length);\n    ret \x3d ret.substr(0, ret.indexOf(\x22(\x22));\n    var isObject \x3d ret \x3d\x3d \x22Object\x22;\n    if (typeof Object.defineProperty !\x3d \x22undefined\x22) {\n      Object.defineProperty(x.constructor, \x22transit$isObject\x22, {value:isObject, enumerable:false});\n    } else {\n      x.constructor[\x22transit$isObject\x22] \x3d isObject;\n    }\n    return isObject;\n  };\n  writer.emitMap \x3d function(em, obj, skip, cache) {\n    var arr \x3d null, rep \x3d null, tag \x3d null, ks \x3d null, i \x3d 0;\n    if (obj.constructor \x3d\x3d\x3d Object || obj.forEach !\x3d null || em.handlerForForeign \x26\x26 writer.isForeignObject(obj)) {\n      if (em.verbose) {\n        if (obj.forEach !\x3d null) {\n          if (writer.stringableKeys(em, obj)) {\n            var ret \x3d {};\n            obj.forEach(function(v, k) {\n              ret[writer.marshal(em, k, true, false)] \x3d writer.marshal(em, v, false, cache);\n            });\n            return ret;\n          } else {\n            arr \x3d em.unpack(obj);\n            rep \x3d [];\n            tag \x3d em.emitString(d.ESC_TAG, \x22cmap\x22, \x22\x22, true, cache);\n            if (arr) {\n              for (; i \x3c arr.length; i +\x3d 2) {\n                rep.push(writer.marshal(em, arr[i], false, false));\n                rep.push(writer.marshal(em, arr[i + 1], false, cache));\n              }\n            } else {\n              obj.forEach(function(v, k) {\n                rep.push(writer.marshal(em, k, false, false));\n                rep.push(writer.marshal(em, v, false, cache));\n              });\n            }\n            ret \x3d {};\n            ret[tag] \x3d rep;\n            return ret;\n          }\n        } else {\n          ks \x3d util.objectKeys(obj);\n          ret \x3d {};\n          for (; i \x3c ks.length; i++) {\n            ret[writer.marshal(em, ks[i], true, false)] \x3d writer.marshal(em, obj[ks[i]], false, cache);\n          }\n          return ret;\n        }\n      } else {\n        if (obj.forEach !\x3d null) {\n          if (writer.stringableKeys(em, obj)) {\n            arr \x3d em.unpack(obj);\n            ret \x3d [\x22^ \x22];\n            if (arr) {\n              for (; i \x3c arr.length; i +\x3d 2) {\n                ret.push(writer.marshal(em, arr[i], true, cache));\n                ret.push(writer.marshal(em, arr[i + 1], false, cache));\n              }\n            } else {\n              obj.forEach(function(v, k) {\n                ret.push(writer.marshal(em, k, true, cache));\n                ret.push(writer.marshal(em, v, false, cache));\n              });\n            }\n            return ret;\n          } else {\n            arr \x3d em.unpack(obj);\n            rep \x3d [];\n            tag \x3d em.emitString(d.ESC_TAG, \x22cmap\x22, \x22\x22, true, cache);\n            if (arr) {\n              for (; i \x3c arr.length; i +\x3d 2) {\n                rep.push(writer.marshal(em, arr[i], false, cache));\n                rep.push(writer.marshal(em, arr[i + 1], false, cache));\n              }\n            } else {\n              obj.forEach(function(v, k) {\n                rep.push(writer.marshal(em, k, false, cache));\n                rep.push(writer.marshal(em, v, false, cache));\n              });\n            }\n            return [tag, rep];\n          }\n        } else {\n          ret \x3d [\x22^ \x22];\n          ks \x3d util.objectKeys(obj);\n          for (; i \x3c ks.length; i++) {\n            ret.push(writer.marshal(em, ks[i], true, cache));\n            ret.push(writer.marshal(em, obj[ks[i]], false, cache));\n          }\n          return ret;\n        }\n      }\n    } else {\n      if (em.objectBuilder !\x3d null) {\n        return em.objectBuilder(obj, function(k) {\n          return writer.marshal(em, k, true, cache);\n        }, function(v) {\n          return writer.marshal(em, v, false, cache);\n        });\n      } else {\n        var name \x3d handlers.constructor(obj).name, err \x3d new Error(\x22Cannot write \x22 + name);\n        err.data \x3d {obj:obj, type:name};\n        throw err;\n      }\n    }\n  };\n  writer.emitTaggedMap \x3d function(em, tag, rep, skip, cache) {\n    if (em.verbose) {\n      var ret \x3d {};\n      ret[em.emitString(d.ESC_TAG, tag, \x22\x22, true, cache)] \x3d writer.marshal(em, rep, false, cache);\n      return ret;\n    } else {\n      return [em.emitString(d.ESC_TAG, tag, \x22\x22, true, cache), writer.marshal(em, rep, false, cache)];\n    }\n  };\n  writer.emitEncoded \x3d function(em, h, tag, rep, obj, asMapKey, cache) {\n    if (tag.length \x3d\x3d\x3d 1) {\n      if (typeof rep \x3d\x3d\x3d \x22string\x22) {\n        return em.emitString(d.ESC, tag, rep, asMapKey, cache);\n      } else {\n        if (asMapKey || em.preferStrings) {\n          var vh \x3d em.verbose \x26\x26 h.getVerboseHandler();\n          if (vh) {\n            tag \x3d vh.tag(obj);\n            rep \x3d vh.stringRep(obj, vh);\n          } else {\n            rep \x3d h.stringRep(obj, h);\n          }\n          if (rep !\x3d\x3d null) {\n            return em.emitString(d.ESC, tag, rep, asMapKey, cache);\n          } else {\n            var err \x3d new Error(\x27Tag \x22\x27 + tag + \x27\x22 cannot be encoded as string\x27);\n            err.data \x3d {tag:tag, rep:rep, obj:obj};\n            throw err;\n          }\n        } else {\n          return writer.emitTaggedMap(em, tag, rep, asMapKey, cache);\n        }\n      }\n    } else {\n      return writer.emitTaggedMap(em, tag, rep, asMapKey, cache);\n    }\n  };\n  writer.marshal \x3d function(em, obj, asMapKey, cache) {\n    if (em.transform !\x3d\x3d null) {\n      obj \x3d em.transform(obj);\n    }\n    var h \x3d em.handler(obj) || (em.handlerForForeign ? em.handlerForForeign(obj, em.handlers) : null), tag \x3d h ? h.tag(obj) : null, rep \x3d h ? h.rep(obj) : null;\n    if (h !\x3d null \x26\x26 tag !\x3d null) {\n      switch(tag) {\n        case \x22_\x22:\n          return em.emitNil(asMapKey, cache);\n          break;\n        case \x22s\x22:\n          return em.emitString(\x22\x22, \x22\x22, writer.escape(rep), asMapKey, cache);\n          break;\n        case \x22?\x22:\n          return em.emitBoolean(rep, asMapKey, cache);\n          break;\n        case \x22i\x22:\n          return em.emitInteger(rep, asMapKey, cache);\n          break;\n        case \x22d\x22:\n          return em.emitDouble(rep, asMapKey, cache);\n          break;\n        case \x22b\x22:\n          return em.emitBinary(rep, asMapKey, cache);\n          break;\n        case \x22\x27\x22:\n          return em.emitQuoted(em, rep, cache);\n          break;\n        case \x22array\x22:\n          return writer.emitArray(em, rep, asMapKey, cache);\n          break;\n        case \x22map\x22:\n          return writer.emitMap(em, rep, asMapKey, cache);\n          break;\n        default:\n          return writer.emitEncoded(em, h, tag, rep, obj, asMapKey, cache);\n          break;\n      }\n    } else {\n      var name \x3d handlers.constructor(obj).name, err \x3d new Error(\x22Cannot write \x22 + name);\n      err.data \x3d {obj:obj, type:name};\n      throw err;\n    }\n  };\n  writer.maybeQuoted \x3d function(em, obj) {\n    var h \x3d em.handler(obj) || (em.handlerForForeign ? em.handlerForForeign(obj, em.handlers) : null);\n    if (h !\x3d null) {\n      if (h.tag(obj).length \x3d\x3d\x3d 1) {\n        return types.quoted(obj);\n      } else {\n        return obj;\n      }\n    } else {\n      var name \x3d handlers.constructor(obj).name, err \x3d new Error(\x22Cannot write \x22 + name);\n      err.data \x3d {obj:obj, type:name};\n      throw err;\n    }\n  };\n  writer.marshalTop \x3d function(em, obj, asMapKey, cache) {\n    return JSON.stringify(writer.marshal(em, writer.maybeQuoted(em, obj), asMapKey, cache));\n  };\n  writer.Writer \x3d function Transit$Writer(marshaller, options) {\n    this._marshaller \x3d marshaller;\n    this.options \x3d options || {};\n    if (this.options[\x22cache\x22] \x3d\x3d\x3d false) {\n      this.cache \x3d null;\n    } else {\n      this.cache \x3d this.options[\x22cache\x22] ? this.options[\x22cache\x22] : new caching.WriteCache;\n    }\n  };\n  writer.Writer.prototype.marshaller \x3d function() {\n    return this._marshaller;\n  };\n  writer.Writer.prototype[\x22marshaller\x22] \x3d writer.Writer.prototype.marshaller;\n  writer.Writer.prototype.write \x3d function(obj, opts) {\n    var ret \x3d null, ropts \x3d opts || {}, asMapKey \x3d ropts[\x22asMapKey\x22] || false, cache \x3d this._marshaller.verbose ? false : this.cache;\n    if (ropts[\x22marshalTop\x22] \x3d\x3d\x3d false) {\n      ret \x3d writer.marshal(this._marshaller, obj, asMapKey, cache);\n    } else {\n      ret \x3d writer.marshalTop(this._marshaller, obj, asMapKey, cache);\n    }\n    if (this.cache !\x3d null) {\n      this.cache.clear();\n    }\n    return ret;\n  };\n  writer.Writer.prototype[\x22write\x22] \x3d writer.Writer.prototype.write;\n  writer.Writer.prototype.register \x3d function(type, handler) {\n    this._marshaller.registerHandler(type, handler);\n  };\n  writer.Writer.prototype[\x22register\x22] \x3d writer.Writer.prototype.register;\n});\n");
SHADOW_ENV.evalLoad("com.cognitect.transit.js", true , "goog.provide(\x22com.cognitect.transit\x22);\ngoog.require(\x22com.cognitect.transit.util\x22);\ngoog.require(\x22com.cognitect.transit.impl.reader\x22);\ngoog.require(\x22com.cognitect.transit.impl.writer\x22);\ngoog.require(\x22com.cognitect.transit.types\x22);\ngoog.require(\x22com.cognitect.transit.eq\x22);\ngoog.require(\x22com.cognitect.transit.impl.decoder\x22);\ngoog.require(\x22com.cognitect.transit.caching\x22);\nvar TRANSIT_DEV \x3d true;\nvar TRANSIT_NODE_TARGET \x3d false;\nvar TRANSIT_BROWSER_TARGET \x3d false;\nvar TRANSIT_BROWSER_AMD_TARGET \x3d false;\ngoog.scope(function() {\n  var transit \x3d com.cognitect.transit;\n  var util \x3d com.cognitect.transit.util, reader \x3d com.cognitect.transit.impl.reader, writer \x3d com.cognitect.transit.impl.writer, decoder \x3d com.cognitect.transit.impl.decoder, types \x3d com.cognitect.transit.types, eq \x3d com.cognitect.transit.eq, caching \x3d com.cognitect.transit.caching;\n  transit.MapLike;\n  transit.SetLike;\n  transit.reader \x3d function(type, opts) {\n    if (type \x3d\x3d\x3d \x22json\x22 || type \x3d\x3d\x3d \x22json-verbose\x22 || type \x3d\x3d null) {\n      type \x3d \x22json\x22;\n      var unmarshaller \x3d new reader.JSONUnmarshaller(opts);\n      return new reader.Reader(unmarshaller, opts);\n    } else {\n      throw new Error(\x22Cannot create reader of type \x22 + type);\n    }\n  };\n  transit.writer \x3d function(type, opts) {\n    if (type \x3d\x3d\x3d \x22json\x22 || type \x3d\x3d\x3d \x22json-verbose\x22 || type \x3d\x3d null) {\n      if (type \x3d\x3d\x3d \x22json-verbose\x22) {\n        if (opts \x3d\x3d null) {\n          opts \x3d {};\n        }\n        opts[\x22verbose\x22] \x3d true;\n      }\n      var marshaller \x3d new writer.JSONMarshaller(opts);\n      return new writer.Writer(marshaller, opts);\n    } else {\n      var err \x3d new Error(\x27Type must be \x22json\x22\x27);\n      err.data \x3d {type:type};\n      throw err;\n    }\n  };\n  transit.makeWriteHandler \x3d function(obj) {\n    var Handler \x3d function() {\n    };\n    Handler.prototype.tag \x3d obj[\x22tag\x22];\n    Handler.prototype.rep \x3d obj[\x22rep\x22];\n    Handler.prototype.stringRep \x3d obj[\x22stringRep\x22];\n    Handler.prototype.getVerboseHandler \x3d obj[\x22getVerboseHandler\x22];\n    return new Handler;\n  };\n  transit.makeBuilder \x3d function(obj) {\n    var Builder \x3d function() {\n    };\n    Builder.prototype.init \x3d obj[\x22init\x22];\n    Builder.prototype.add \x3d obj[\x22add\x22];\n    Builder.prototype.finalize \x3d obj[\x22finalize\x22];\n    Builder.prototype.fromArray \x3d obj[\x22fromArray\x22];\n    return new Builder;\n  };\n  transit.date \x3d types.date;\n  transit.integer \x3d types.intValue;\n  transit.isInteger \x3d types.isInteger;\n  transit.uuid \x3d types.uuid;\n  transit.isUUID \x3d types.isUUID;\n  transit.bigInt \x3d types.bigInteger;\n  transit.isBigInt \x3d types.isBigInteger;\n  transit.bigDec \x3d types.bigDecimalValue;\n  transit.isBigDec \x3d types.isBigDecimal;\n  transit.keyword \x3d types.keyword;\n  transit.isKeyword \x3d types.isKeyword;\n  transit.symbol \x3d types.symbol;\n  transit.isSymbol \x3d types.isSymbol;\n  transit.binary \x3d types.binary;\n  transit.isBinary \x3d types.isBinary;\n  transit.uri \x3d types.uri;\n  transit.isURI \x3d types.isURI;\n  transit.map \x3d types.map;\n  transit.isMap \x3d types.isMap;\n  transit.set \x3d types.set;\n  transit.isSet \x3d types.isSet;\n  transit.list \x3d types.list;\n  transit.isList \x3d types.isList;\n  transit.quoted \x3d types.quoted;\n  transit.isQuoted \x3d types.isQuoted;\n  transit.tagged \x3d types.taggedValue;\n  transit.isTaggedValue \x3d types.isTaggedValue;\n  transit.link \x3d types.link;\n  transit.isLink \x3d types.isLink;\n  transit.hash \x3d eq.hashCode;\n  transit.hashMapLike \x3d eq.hashMapLike;\n  transit.hashArrayLike \x3d eq.hashArrayLike;\n  transit.equals \x3d eq.equals;\n  transit.extendToEQ \x3d eq.extendToEQ;\n  transit.mapToObject \x3d function(m) {\n    var ret \x3d {};\n    m.forEach(function(v, k) {\n      if (typeof k !\x3d\x3d \x22string\x22) {\n        throw Error(\x22Cannot convert map with non-string keys\x22);\n      } else {\n        ret[k] \x3d v;\n      }\n    });\n    return ret;\n  };\n  transit.objectToMap \x3d function(obj) {\n    var ret \x3d transit.map();\n    for (var p in obj) {\n      if (obj.hasOwnProperty(p)) {\n        ret.set(p, obj[p]);\n      }\n    }\n    return ret;\n  };\n  transit.decoder \x3d decoder.decoder;\n  transit.readCache \x3d caching.readCache;\n  transit.writeCache \x3d caching.writeCache;\n  transit.UUIDfromString \x3d types.UUIDfromString;\n  transit.randomUUID \x3d util.randomUUID;\n  transit.stringableKeys \x3d writer.stringableKeys;\n  if (TRANSIT_BROWSER_TARGET) {\n    goog.exportSymbol(\x22transit.reader\x22, transit.reader);\n    goog.exportSymbol(\x22transit.writer\x22, transit.writer);\n    goog.exportSymbol(\x22transit.makeBuilder\x22, transit.makeBuilder);\n    goog.exportSymbol(\x22transit.makeWriteHandler\x22, transit.makeWriteHandler);\n    goog.exportSymbol(\x22transit.date\x22, types.date);\n    goog.exportSymbol(\x22transit.integer\x22, types.intValue);\n    goog.exportSymbol(\x22transit.isInteger\x22, types.isInteger);\n    goog.exportSymbol(\x22transit.uuid\x22, types.uuid);\n    goog.exportSymbol(\x22transit.isUUID\x22, types.isUUID);\n    goog.exportSymbol(\x22transit.bigInt\x22, types.bigInteger);\n    goog.exportSymbol(\x22transit.isBigInt\x22, types.isBigInteger);\n    goog.exportSymbol(\x22transit.bigDec\x22, types.bigDecimalValue);\n    goog.exportSymbol(\x22transit.isBigDec\x22, types.isBigDecimal);\n    goog.exportSymbol(\x22transit.keyword\x22, types.keyword);\n    goog.exportSymbol(\x22transit.isKeyword\x22, types.isKeyword);\n    goog.exportSymbol(\x22transit.symbol\x22, types.symbol);\n    goog.exportSymbol(\x22transit.isSymbol\x22, types.isSymbol);\n    goog.exportSymbol(\x22transit.binary\x22, types.binary);\n    goog.exportSymbol(\x22transit.isBinary\x22, types.isBinary);\n    goog.exportSymbol(\x22transit.uri\x22, types.uri);\n    goog.exportSymbol(\x22transit.isURI\x22, types.isURI);\n    goog.exportSymbol(\x22transit.map\x22, types.map);\n    goog.exportSymbol(\x22transit.isMap\x22, types.isMap);\n    goog.exportSymbol(\x22transit.set\x22, types.set);\n    goog.exportSymbol(\x22transit.isSet\x22, types.isSet);\n    goog.exportSymbol(\x22transit.list\x22, types.list);\n    goog.exportSymbol(\x22transit.isList\x22, types.isList);\n    goog.exportSymbol(\x22transit.quoted\x22, types.quoted);\n    goog.exportSymbol(\x22transit.isQuoted\x22, types.isQuoted);\n    goog.exportSymbol(\x22transit.tagged\x22, types.taggedValue);\n    goog.exportSymbol(\x22transit.isTaggedValue\x22, types.isTaggedValue);\n    goog.exportSymbol(\x22transit.link\x22, types.link);\n    goog.exportSymbol(\x22transit.isLink\x22, types.isLink);\n    goog.exportSymbol(\x22transit.hash\x22, eq.hashCode);\n    goog.exportSymbol(\x22transit.hashMapLike\x22, eq.hashMapLike);\n    goog.exportSymbol(\x22transit.hashArrayLike\x22, eq.hashArrayLike);\n    goog.exportSymbol(\x22transit.equals\x22, eq.equals);\n    goog.exportSymbol(\x22transit.extendToEQ\x22, eq.extendToEQ);\n    goog.exportSymbol(\x22transit.mapToObject\x22, transit.mapToObject);\n    goog.exportSymbol(\x22transit.objectToMap\x22, transit.objectToMap);\n    goog.exportSymbol(\x22transit.decoder\x22, decoder.decoder);\n    goog.exportSymbol(\x22transit.UUIDfromString\x22, types.UUIDfromString);\n    goog.exportSymbol(\x22transit.randomUUID\x22, util.randomUUID);\n    goog.exportSymbol(\x22transit.stringableKeys\x22, writer.stringableKeys);\n    goog.exportSymbol(\x22transit.readCache\x22, caching.readCache);\n    goog.exportSymbol(\x22transit.writeCache\x22, caching.writeCache);\n  }\n  if (TRANSIT_NODE_TARGET) {\n    module.exports \x3d {reader:transit.reader, writer:transit.writer, makeBuilder:transit.makeBuilder, makeWriteHandler:transit.makeWriteHandler, date:types.date, integer:types.intValue, isInteger:types.isInteger, uuid:types.uuid, isUUID:types.isUUID, bigInt:types.bigInteger, isBigInt:types.isBigInteger, bigDec:types.bigDecimalValue, isBigDec:types.isBigDecimal, keyword:types.keyword, isKeyword:types.isKeyword, symbol:types.symbol, isSymbol:types.isSymbol, binary:types.binary, isBinary:types.isBinary, \n    uri:types.uri, isURI:types.isURI, map:types.map, isMap:types.isMap, set:types.set, isSet:types.isSet, list:types.list, isList:types.isList, quoted:types.quoted, isQuoted:types.isQuoted, tagged:types.taggedValue, isTaggedValue:types.isTaggedValue, link:types.link, isLink:types.isLink, hash:eq.hashCode, hashArrayLike:eq.hashArrayLike, hashMapLike:eq.hashMapLike, equals:eq.equals, extendToEQ:eq.extendToEQ, mapToObject:transit.mapToObject, objectToMap:transit.objectToMap, decoder:decoder.decoder, \n    UUIDfromString:types.UUIDfromString, randomUUID:util.randomUUID, stringableKeys:writer.stringableKeys, readCache:caching.readCache, writeCache:caching.writeCache};\n  }\n});\n");
SHADOW_ENV.evalLoad("cognitect.transit.js", true , "goog.provide(\x27cognitect.transit\x27);\n(cljs.core.UUID.prototype.cljs$core$IEquiv$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.UUID.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nif((other instanceof cljs.core.UUID)){\nreturn (this$__$1.uuid \x3d\x3d\x3d other.uuid);\n} else {\nif((other instanceof com.cognitect.transit.types.UUID)){\nreturn (this$__$1.uuid \x3d\x3d\x3d other.toString());\n} else {\nreturn false;\n\n}\n}\n}));\n(cljs.core.UUID.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.UUID.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nif((((other instanceof cljs.core.UUID)) || ((other instanceof com.cognitect.transit.types.UUID)))){\nreturn cljs.core.compare(this$__$1.toString(),other.toString());\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(other)].join(\x27\x27)));\n}\n}));\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IComparable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IComparable$_compare$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nif((((other instanceof cljs.core.UUID)) || ((other instanceof com.cognitect.transit.types.UUID)))){\nreturn cljs.core.compare(this$__$1.toString(),other.toString());\n} else {\nthrow (new Error([\x22Cannot compare \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(other)].join(\x27\x27)));\n}\n}));\n(goog.math.Long.prototype.cljs$core$IEquiv$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(goog.math.Long.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nreturn this$__$1.equiv(other);\n}));\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IEquiv$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nif((other instanceof cljs.core.UUID)){\nreturn other.cljs$core$IEquiv$_equiv$arity$2(null,this$__$1);\n} else {\nreturn this$__$1.equiv(other);\n}\n}));\n\n(com.cognitect.transit.types.TaggedValue.prototype.cljs$core$IEquiv$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(com.cognitect.transit.types.TaggedValue.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this$,other){\nvar this$__$1 \x3d this;\nreturn this$__$1.equiv(other);\n}));\n(goog.math.Long.prototype.cljs$core$IHash$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(goog.math.Long.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn com.cognitect.transit.eq.hashCode(this$__$1);\n}));\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IHash$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn cljs.core.hash(this$__$1.toString());\n}));\n\n(com.cognitect.transit.types.TaggedValue.prototype.cljs$core$IHash$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(com.cognitect.transit.types.TaggedValue.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this$){\nvar this$__$1 \x3d this;\nreturn com.cognitect.transit.eq.hashCode(this$__$1);\n}));\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IPrintWithWriter$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(com.cognitect.transit.types.UUID.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (uuid,writer,_){\nvar uuid__$1 \x3d this;\nreturn cljs.core._write(writer,[\x22#uuid \\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(uuid__$1.toString()),\x22\\\x22\x22].join(\x27\x27));\n}));\ncognitect.transit.opts_merge \x3d (function cognitect$transit$opts_merge(a,b){\nvar seq__42795_43214 \x3d cljs.core.seq(cljs.core.js_keys(b));\nvar chunk__42796_43215 \x3d null;\nvar count__42797_43216 \x3d (0);\nvar i__42798_43217 \x3d (0);\nwhile(true){\nif((i__42798_43217 \x3c count__42797_43216)){\nvar k_43219 \x3d chunk__42796_43215.cljs$core$IIndexed$_nth$arity$2(null,i__42798_43217);\nvar v_43220 \x3d (b[k_43219]);\n(a[k_43219] \x3d v_43220);\n\n\nvar G__43221 \x3d seq__42795_43214;\nvar G__43222 \x3d chunk__42796_43215;\nvar G__43223 \x3d count__42797_43216;\nvar G__43224 \x3d (i__42798_43217 + (1));\nseq__42795_43214 \x3d G__43221;\nchunk__42796_43215 \x3d G__43222;\ncount__42797_43216 \x3d G__43223;\ni__42798_43217 \x3d G__43224;\ncontinue;\n} else {\nvar temp__5753__auto___43227 \x3d cljs.core.seq(seq__42795_43214);\nif(temp__5753__auto___43227){\nvar seq__42795_43229__$1 \x3d temp__5753__auto___43227;\nif(cljs.core.chunked_seq_QMARK_(seq__42795_43229__$1)){\nvar c__4591__auto___43230 \x3d cljs.core.chunk_first(seq__42795_43229__$1);\nvar G__43231 \x3d cljs.core.chunk_rest(seq__42795_43229__$1);\nvar G__43232 \x3d c__4591__auto___43230;\nvar G__43233 \x3d cljs.core.count(c__4591__auto___43230);\nvar G__43234 \x3d (0);\nseq__42795_43214 \x3d G__43231;\nchunk__42796_43215 \x3d G__43232;\ncount__42797_43216 \x3d G__43233;\ni__42798_43217 \x3d G__43234;\ncontinue;\n} else {\nvar k_43235 \x3d cljs.core.first(seq__42795_43229__$1);\nvar v_43236 \x3d (b[k_43235]);\n(a[k_43235] \x3d v_43236);\n\n\nvar G__43237 \x3d cljs.core.next(seq__42795_43229__$1);\nvar G__43238 \x3d null;\nvar G__43239 \x3d (0);\nvar G__43240 \x3d (0);\nseq__42795_43214 \x3d G__43237;\nchunk__42796_43215 \x3d G__43238;\ncount__42797_43216 \x3d G__43239;\ni__42798_43217 \x3d G__43240;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn a;\n});\n\n/**\n* @constructor\n*/\ncognitect.transit.MapBuilder \x3d (function (){\n});\n(cognitect.transit.MapBuilder.prototype.init \x3d (function (node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY);\n}));\n\n(cognitect.transit.MapBuilder.prototype.add \x3d (function (m,k,v,node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(m,k,v);\n}));\n\n(cognitect.transit.MapBuilder.prototype.finalize \x3d (function (m,node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.persistent_BANG_(m);\n}));\n\n(cognitect.transit.MapBuilder.prototype.fromArray \x3d (function (arr,node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (cljs.core.PersistentArrayMap.fromArray.cljs$core$IFn$_invoke$arity$3 ? cljs.core.PersistentArrayMap.fromArray.cljs$core$IFn$_invoke$arity$3(arr,true,true) : cljs.core.PersistentArrayMap.fromArray.call(null,arr,true,true));\n}));\n\n(cognitect.transit.MapBuilder.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.MapBuilder.cljs$lang$type \x3d true);\n\n(cognitect.transit.MapBuilder.cljs$lang$ctorStr \x3d \x22cognitect.transit/MapBuilder\x22);\n\n(cognitect.transit.MapBuilder.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/MapBuilder\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/MapBuilder.\n */\ncognitect.transit.__GT_MapBuilder \x3d (function cognitect$transit$__GT_MapBuilder(){\nreturn (new cognitect.transit.MapBuilder());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.VectorBuilder \x3d (function (){\n});\n(cognitect.transit.VectorBuilder.prototype.init \x3d (function (node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\n}));\n\n(cognitect.transit.VectorBuilder.prototype.add \x3d (function (v,x,node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(v,x);\n}));\n\n(cognitect.transit.VectorBuilder.prototype.finalize \x3d (function (v,node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.persistent_BANG_(v);\n}));\n\n(cognitect.transit.VectorBuilder.prototype.fromArray \x3d (function (arr,node){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (cljs.core.PersistentVector.fromArray.cljs$core$IFn$_invoke$arity$2 ? cljs.core.PersistentVector.fromArray.cljs$core$IFn$_invoke$arity$2(arr,true) : cljs.core.PersistentVector.fromArray.call(null,arr,true));\n}));\n\n(cognitect.transit.VectorBuilder.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.VectorBuilder.cljs$lang$type \x3d true);\n\n(cognitect.transit.VectorBuilder.cljs$lang$ctorStr \x3d \x22cognitect.transit/VectorBuilder\x22);\n\n(cognitect.transit.VectorBuilder.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/VectorBuilder\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/VectorBuilder.\n */\ncognitect.transit.__GT_VectorBuilder \x3d (function cognitect$transit$__GT_VectorBuilder(){\nreturn (new cognitect.transit.VectorBuilder());\n});\n\n/**\n * Return a transit reader. type may be either :json or :json-verbose.\n * opts may be a map optionally containing a :handlers entry. The value\n * of :handlers should be map from string tag to a decoder function of one\n * argument which returns the in-memory representation of the semantic transit\n * value. If a :default handler is provided, it will be used when no matching\n * read handler can be found.\n */\ncognitect.transit.reader \x3d (function cognitect$transit$reader(var_args){\nvar G__42867 \x3d arguments.length;\nswitch (G__42867) {\ncase 1:\nreturn cognitect.transit.reader.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cognitect.transit.reader.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cognitect.transit.reader.cljs$core$IFn$_invoke$arity$1 \x3d (function (type){\nreturn cognitect.transit.reader.cljs$core$IFn$_invoke$arity$2(type,null);\n}));\n\n(cognitect.transit.reader.cljs$core$IFn$_invoke$arity$2 \x3d (function (type,opts){\nreturn com.cognitect.transit.reader(cljs.core.name(type),cognitect.transit.opts_merge(({\x22handlers\x22: cljs.core.clj__GT_js(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 6, [\x22$\x22,(function (v){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(v);\n}),\x22:\x22,(function (v){\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(v);\n}),\x22set\x22,(function (v){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentHashSet.EMPTY,v);\n}),\x22list\x22,(function (v){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.List.EMPTY,v.reverse());\n}),\x22cmap\x22,(function (v){\nvar i \x3d (0);\nvar ret \x3d cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY);\nwhile(true){\nif((i \x3c v.length)){\nvar G__43258 \x3d (i + (2));\nvar G__43259 \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(ret,(v[i]),(v[(i + (1))]));\ni \x3d G__43258;\nret \x3d G__43259;\ncontinue;\n} else {\nreturn cljs.core.persistent_BANG_(ret);\n}\nbreak;\n}\n}),\x22with-meta\x22,(function (v){\nreturn cljs.core.with_meta((v[(0)]),(v[(1)]));\n})], null),cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781).cljs$core$IFn$_invoke$arity$1(opts),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328))], 0))), \x22defaultHandler\x22: new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781).cljs$core$IFn$_invoke$arity$1(opts)), \x22mapBuilder\x22: (new cognitect.transit.MapBuilder()), \x22arrayBuilder\x22: (new cognitect.transit.VectorBuilder()), \x22prefersStrings\x22: false}),cljs.core.clj__GT_js(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781)))));\n}));\n\n(cognitect.transit.reader.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Read a transit encoded string into ClojureScript values given a \n * transit reader.\n */\ncognitect.transit.read \x3d (function cognitect$transit$read(r,str){\nreturn r.read(str);\n});\n\n/**\n* @constructor\n*/\ncognitect.transit.KeywordHandler \x3d (function (){\n});\n(cognitect.transit.KeywordHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22:\x22;\n}));\n\n(cognitect.transit.KeywordHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn v.fqn;\n}));\n\n(cognitect.transit.KeywordHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn v.fqn;\n}));\n\n(cognitect.transit.KeywordHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.KeywordHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.KeywordHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/KeywordHandler\x22);\n\n(cognitect.transit.KeywordHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/KeywordHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/KeywordHandler.\n */\ncognitect.transit.__GT_KeywordHandler \x3d (function cognitect$transit$__GT_KeywordHandler(){\nreturn (new cognitect.transit.KeywordHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.SymbolHandler \x3d (function (){\n});\n(cognitect.transit.SymbolHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22$\x22;\n}));\n\n(cognitect.transit.SymbolHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn v.str;\n}));\n\n(cognitect.transit.SymbolHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn v.str;\n}));\n\n(cognitect.transit.SymbolHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.SymbolHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.SymbolHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/SymbolHandler\x22);\n\n(cognitect.transit.SymbolHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/SymbolHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/SymbolHandler.\n */\ncognitect.transit.__GT_SymbolHandler \x3d (function cognitect$transit$__GT_SymbolHandler(){\nreturn (new cognitect.transit.SymbolHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.ListHandler \x3d (function (){\n});\n(cognitect.transit.ListHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22list\x22;\n}));\n\n(cognitect.transit.ListHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d [];\nvar seq__42918_43275 \x3d cljs.core.seq(v);\nvar chunk__42919_43276 \x3d null;\nvar count__42920_43277 \x3d (0);\nvar i__42921_43278 \x3d (0);\nwhile(true){\nif((i__42921_43278 \x3c count__42920_43277)){\nvar x_43279 \x3d chunk__42919_43276.cljs$core$IIndexed$_nth$arity$2(null,i__42921_43278);\nret.push(x_43279);\n\n\nvar G__43284 \x3d seq__42918_43275;\nvar G__43285 \x3d chunk__42919_43276;\nvar G__43286 \x3d count__42920_43277;\nvar G__43287 \x3d (i__42921_43278 + (1));\nseq__42918_43275 \x3d G__43284;\nchunk__42919_43276 \x3d G__43285;\ncount__42920_43277 \x3d G__43286;\ni__42921_43278 \x3d G__43287;\ncontinue;\n} else {\nvar temp__5753__auto___43288 \x3d cljs.core.seq(seq__42918_43275);\nif(temp__5753__auto___43288){\nvar seq__42918_43289__$1 \x3d temp__5753__auto___43288;\nif(cljs.core.chunked_seq_QMARK_(seq__42918_43289__$1)){\nvar c__4591__auto___43290 \x3d cljs.core.chunk_first(seq__42918_43289__$1);\nvar G__43291 \x3d cljs.core.chunk_rest(seq__42918_43289__$1);\nvar G__43292 \x3d c__4591__auto___43290;\nvar G__43293 \x3d cljs.core.count(c__4591__auto___43290);\nvar G__43294 \x3d (0);\nseq__42918_43275 \x3d G__43291;\nchunk__42919_43276 \x3d G__43292;\ncount__42920_43277 \x3d G__43293;\ni__42921_43278 \x3d G__43294;\ncontinue;\n} else {\nvar x_43297 \x3d cljs.core.first(seq__42918_43289__$1);\nret.push(x_43297);\n\n\nvar G__43298 \x3d cljs.core.next(seq__42918_43289__$1);\nvar G__43299 \x3d null;\nvar G__43300 \x3d (0);\nvar G__43301 \x3d (0);\nseq__42918_43275 \x3d G__43298;\nchunk__42919_43276 \x3d G__43299;\ncount__42920_43277 \x3d G__43300;\ni__42921_43278 \x3d G__43301;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn com.cognitect.transit.tagged(\x22array\x22,ret);\n}));\n\n(cognitect.transit.ListHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn null;\n}));\n\n(cognitect.transit.ListHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.ListHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.ListHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/ListHandler\x22);\n\n(cognitect.transit.ListHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/ListHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/ListHandler.\n */\ncognitect.transit.__GT_ListHandler \x3d (function cognitect$transit$__GT_ListHandler(){\nreturn (new cognitect.transit.ListHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.MapHandler \x3d (function (){\n});\n(cognitect.transit.MapHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22map\x22;\n}));\n\n(cognitect.transit.MapHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn v;\n}));\n\n(cognitect.transit.MapHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn null;\n}));\n\n(cognitect.transit.MapHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.MapHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.MapHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/MapHandler\x22);\n\n(cognitect.transit.MapHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/MapHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/MapHandler.\n */\ncognitect.transit.__GT_MapHandler \x3d (function cognitect$transit$__GT_MapHandler(){\nreturn (new cognitect.transit.MapHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.SetHandler \x3d (function (){\n});\n(cognitect.transit.SetHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22set\x22;\n}));\n\n(cognitect.transit.SetHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d [];\nvar seq__42967_43320 \x3d cljs.core.seq(v);\nvar chunk__42968_43321 \x3d null;\nvar count__42969_43322 \x3d (0);\nvar i__42970_43323 \x3d (0);\nwhile(true){\nif((i__42970_43323 \x3c count__42969_43322)){\nvar x_43326 \x3d chunk__42968_43321.cljs$core$IIndexed$_nth$arity$2(null,i__42970_43323);\nret.push(x_43326);\n\n\nvar G__43333 \x3d seq__42967_43320;\nvar G__43334 \x3d chunk__42968_43321;\nvar G__43335 \x3d count__42969_43322;\nvar G__43336 \x3d (i__42970_43323 + (1));\nseq__42967_43320 \x3d G__43333;\nchunk__42968_43321 \x3d G__43334;\ncount__42969_43322 \x3d G__43335;\ni__42970_43323 \x3d G__43336;\ncontinue;\n} else {\nvar temp__5753__auto___43337 \x3d cljs.core.seq(seq__42967_43320);\nif(temp__5753__auto___43337){\nvar seq__42967_43338__$1 \x3d temp__5753__auto___43337;\nif(cljs.core.chunked_seq_QMARK_(seq__42967_43338__$1)){\nvar c__4591__auto___43341 \x3d cljs.core.chunk_first(seq__42967_43338__$1);\nvar G__43344 \x3d cljs.core.chunk_rest(seq__42967_43338__$1);\nvar G__43345 \x3d c__4591__auto___43341;\nvar G__43346 \x3d cljs.core.count(c__4591__auto___43341);\nvar G__43347 \x3d (0);\nseq__42967_43320 \x3d G__43344;\nchunk__42968_43321 \x3d G__43345;\ncount__42969_43322 \x3d G__43346;\ni__42970_43323 \x3d G__43347;\ncontinue;\n} else {\nvar x_43349 \x3d cljs.core.first(seq__42967_43338__$1);\nret.push(x_43349);\n\n\nvar G__43350 \x3d cljs.core.next(seq__42967_43338__$1);\nvar G__43351 \x3d null;\nvar G__43352 \x3d (0);\nvar G__43353 \x3d (0);\nseq__42967_43320 \x3d G__43350;\nchunk__42968_43321 \x3d G__43351;\ncount__42969_43322 \x3d G__43352;\ni__42970_43323 \x3d G__43353;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn com.cognitect.transit.tagged(\x22array\x22,ret);\n}));\n\n(cognitect.transit.SetHandler.prototype.stringRep \x3d (function (){\nvar self__ \x3d this;\nvar v \x3d this;\nreturn null;\n}));\n\n(cognitect.transit.SetHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.SetHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.SetHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/SetHandler\x22);\n\n(cognitect.transit.SetHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/SetHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/SetHandler.\n */\ncognitect.transit.__GT_SetHandler \x3d (function cognitect$transit$__GT_SetHandler(){\nreturn (new cognitect.transit.SetHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.VectorHandler \x3d (function (){\n});\n(cognitect.transit.VectorHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22array\x22;\n}));\n\n(cognitect.transit.VectorHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nvar ret \x3d [];\nvar seq__43037_43360 \x3d cljs.core.seq(v);\nvar chunk__43038_43361 \x3d null;\nvar count__43039_43362 \x3d (0);\nvar i__43040_43363 \x3d (0);\nwhile(true){\nif((i__43040_43363 \x3c count__43039_43362)){\nvar x_43365 \x3d chunk__43038_43361.cljs$core$IIndexed$_nth$arity$2(null,i__43040_43363);\nret.push(x_43365);\n\n\nvar G__43366 \x3d seq__43037_43360;\nvar G__43367 \x3d chunk__43038_43361;\nvar G__43368 \x3d count__43039_43362;\nvar G__43369 \x3d (i__43040_43363 + (1));\nseq__43037_43360 \x3d G__43366;\nchunk__43038_43361 \x3d G__43367;\ncount__43039_43362 \x3d G__43368;\ni__43040_43363 \x3d G__43369;\ncontinue;\n} else {\nvar temp__5753__auto___43370 \x3d cljs.core.seq(seq__43037_43360);\nif(temp__5753__auto___43370){\nvar seq__43037_43371__$1 \x3d temp__5753__auto___43370;\nif(cljs.core.chunked_seq_QMARK_(seq__43037_43371__$1)){\nvar c__4591__auto___43372 \x3d cljs.core.chunk_first(seq__43037_43371__$1);\nvar G__43373 \x3d cljs.core.chunk_rest(seq__43037_43371__$1);\nvar G__43374 \x3d c__4591__auto___43372;\nvar G__43375 \x3d cljs.core.count(c__4591__auto___43372);\nvar G__43376 \x3d (0);\nseq__43037_43360 \x3d G__43373;\nchunk__43038_43361 \x3d G__43374;\ncount__43039_43362 \x3d G__43375;\ni__43040_43363 \x3d G__43376;\ncontinue;\n} else {\nvar x_43377 \x3d cljs.core.first(seq__43037_43371__$1);\nret.push(x_43377);\n\n\nvar G__43379 \x3d cljs.core.next(seq__43037_43371__$1);\nvar G__43380 \x3d null;\nvar G__43381 \x3d (0);\nvar G__43382 \x3d (0);\nseq__43037_43360 \x3d G__43379;\nchunk__43038_43361 \x3d G__43380;\ncount__43039_43362 \x3d G__43381;\ni__43040_43363 \x3d G__43382;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn ret;\n}));\n\n(cognitect.transit.VectorHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn null;\n}));\n\n(cognitect.transit.VectorHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.VectorHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.VectorHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/VectorHandler\x22);\n\n(cognitect.transit.VectorHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/VectorHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/VectorHandler.\n */\ncognitect.transit.__GT_VectorHandler \x3d (function cognitect$transit$__GT_VectorHandler(){\nreturn (new cognitect.transit.VectorHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.UUIDHandler \x3d (function (){\n});\n(cognitect.transit.UUIDHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22u\x22;\n}));\n\n(cognitect.transit.UUIDHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn v.uuid;\n}));\n\n(cognitect.transit.UUIDHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn this$.rep(v);\n}));\n\n(cognitect.transit.UUIDHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.UUIDHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.UUIDHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/UUIDHandler\x22);\n\n(cognitect.transit.UUIDHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/UUIDHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/UUIDHandler.\n */\ncognitect.transit.__GT_UUIDHandler \x3d (function cognitect$transit$__GT_UUIDHandler(){\nreturn (new cognitect.transit.UUIDHandler());\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.WithMeta \x3d (function (value,meta){\nthis.value \x3d value;\nthis.meta \x3d meta;\n});\n\n(cognitect.transit.WithMeta.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null)], null);\n}));\n\n(cognitect.transit.WithMeta.cljs$lang$type \x3d true);\n\n(cognitect.transit.WithMeta.cljs$lang$ctorStr \x3d \x22cognitect.transit/WithMeta\x22);\n\n(cognitect.transit.WithMeta.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/WithMeta\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/WithMeta.\n */\ncognitect.transit.__GT_WithMeta \x3d (function cognitect$transit$__GT_WithMeta(value,meta){\nreturn (new cognitect.transit.WithMeta(value,meta));\n});\n\n\n/**\n* @constructor\n*/\ncognitect.transit.WithMetaHandler \x3d (function (){\n});\n(cognitect.transit.WithMetaHandler.prototype.tag \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn \x22with-meta\x22;\n}));\n\n(cognitect.transit.WithMetaHandler.prototype.rep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn com.cognitect.transit.tagged(\x22array\x22,[v.value,v.meta]);\n}));\n\n(cognitect.transit.WithMetaHandler.prototype.stringRep \x3d (function (v){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn null;\n}));\n\n(cognitect.transit.WithMetaHandler.getBasis \x3d (function (){\nreturn cljs.core.PersistentVector.EMPTY;\n}));\n\n(cognitect.transit.WithMetaHandler.cljs$lang$type \x3d true);\n\n(cognitect.transit.WithMetaHandler.cljs$lang$ctorStr \x3d \x22cognitect.transit/WithMetaHandler\x22);\n\n(cognitect.transit.WithMetaHandler.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/WithMetaHandler\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/WithMetaHandler.\n */\ncognitect.transit.__GT_WithMetaHandler \x3d (function cognitect$transit$__GT_WithMetaHandler(){\nreturn (new cognitect.transit.WithMetaHandler());\n});\n\n/**\n * Return a transit writer. type maybe either :json or :json-verbose.\n *   opts is a map with the following optional keys:\n * \n *  :handlers  - a map of type constructors to handler instances. Can optionally\n *               provide a :default write handler which will be used if no\n *               matching handler can be found.\n *  :transform - a function of one argument returning a transformed value. Will\n *               be invoked on a value before it is written.\n */\ncognitect.transit.writer \x3d (function cognitect$transit$writer(var_args){\nvar G__43090 \x3d arguments.length;\nswitch (G__43090) {\ncase 1:\nreturn cognitect.transit.writer.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cognitect.transit.writer.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cognitect.transit.writer.cljs$core$IFn$_invoke$arity$1 \x3d (function (type){\nreturn cognitect.transit.writer.cljs$core$IFn$_invoke$arity$2(type,null);\n}));\n\n(cognitect.transit.writer.cljs$core$IFn$_invoke$arity$2 \x3d (function (type,opts){\nvar keyword_handler \x3d (new cognitect.transit.KeywordHandler());\nvar symbol_handler \x3d (new cognitect.transit.SymbolHandler());\nvar list_handler \x3d (new cognitect.transit.ListHandler());\nvar map_handler \x3d (new cognitect.transit.MapHandler());\nvar set_handler \x3d (new cognitect.transit.SetHandler());\nvar vector_handler \x3d (new cognitect.transit.VectorHandler());\nvar uuid_handler \x3d (new cognitect.transit.UUIDHandler());\nvar meta_handler \x3d (new cognitect.transit.WithMetaHandler());\nvar handlers \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentHashMap.fromArrays([cljs.core.PersistentHashMap,cljs.core.Cons,cljs.core.PersistentArrayMap,cljs.core.NodeSeq,cljs.core.PersistentQueue,cljs.core.IndexedSeq,cljs.core.Keyword,cljs.core.EmptyList,cljs.core.LazySeq,cljs.core.Subvec,cljs.core.PersistentQueueSeq,cljs.core.ArrayNodeSeq,cljs.core.ValSeq,cognitect.transit.WithMeta,cljs.core.PersistentArrayMapSeq,cljs.core.PersistentVector,cljs.core.List,cljs.core.RSeq,cljs.core.PersistentHashSet,cljs.core.PersistentTreeMap,cljs.core.KeySeq,cljs.core.ChunkedSeq,cljs.core.PersistentTreeSet,cljs.core.ChunkedCons,cljs.core.Symbol,cljs.core.UUID,cljs.core.Range,cljs.core.PersistentTreeMapSeq],[map_handler,list_handler,map_handler,list_handler,list_handler,list_handler,keyword_handler,list_handler,list_handler,vector_handler,list_handler,list_handler,list_handler,meta_handler,list_handler,vector_handler,list_handler,list_handler,set_handler,map_handler,list_handler,list_handler,set_handler,list_handler,symbol_handler,uuid_handler,list_handler,list_handler]),(((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.Eduction !\x3d\x3d \x27undefined\x27))?cljs.core.PersistentArrayMap.createAsIfByAssoc([cljs.core.Eduction,list_handler]):null),(((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.Repeat !\x3d\x3d \x27undefined\x27))?cljs.core.PersistentArrayMap.createAsIfByAssoc([cljs.core.Repeat,list_handler]):null),(((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.MapEntry !\x3d\x3d \x27undefined\x27))?cljs.core.PersistentArrayMap.createAsIfByAssoc([cljs.core.MapEntry,vector_handler]):null),new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781).cljs$core$IFn$_invoke$arity$1(opts)], 0));\nreturn com.cognitect.transit.writer(cljs.core.name(type),cognitect.transit.opts_merge(({\x22objectBuilder\x22: (function (m,kfn,vfn){\nreturn cljs.core.reduce_kv((function (obj,k,v){\nvar G__43099 \x3d obj;\nG__43099.push((kfn.cljs$core$IFn$_invoke$arity$1 ? kfn.cljs$core$IFn$_invoke$arity$1(k) : kfn.call(null,k)),(vfn.cljs$core$IFn$_invoke$arity$1 ? vfn.cljs$core$IFn$_invoke$arity$1(v) : vfn.call(null,v)));\n\nreturn G__43099;\n}),[\x22^ \x22],m);\n}), \x22handlers\x22: (function (){var x43101 \x3d cljs.core.clone(handlers);\n(x43101.forEach \x3d (function (f){\nvar coll \x3d this;\nvar seq__43104 \x3d cljs.core.seq(coll);\nvar chunk__43105 \x3d null;\nvar count__43106 \x3d (0);\nvar i__43107 \x3d (0);\nwhile(true){\nif((i__43107 \x3c count__43106)){\nvar vec__43121 \x3d chunk__43105.cljs$core$IIndexed$_nth$arity$2(null,i__43107);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43121,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43121,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),k)){\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,\x22default\x22) : f.call(null,v,\x22default\x22));\n} else {\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n}\n\n\nvar G__43443 \x3d seq__43104;\nvar G__43444 \x3d chunk__43105;\nvar G__43445 \x3d count__43106;\nvar G__43446 \x3d (i__43107 + (1));\nseq__43104 \x3d G__43443;\nchunk__43105 \x3d G__43444;\ncount__43106 \x3d G__43445;\ni__43107 \x3d G__43446;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__43104);\nif(temp__5753__auto__){\nvar seq__43104__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__43104__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__43104__$1);\nvar G__43453 \x3d cljs.core.chunk_rest(seq__43104__$1);\nvar G__43454 \x3d c__4591__auto__;\nvar G__43455 \x3d cljs.core.count(c__4591__auto__);\nvar G__43456 \x3d (0);\nseq__43104 \x3d G__43453;\nchunk__43105 \x3d G__43454;\ncount__43106 \x3d G__43455;\ni__43107 \x3d G__43456;\ncontinue;\n} else {\nvar vec__43129 \x3d cljs.core.first(seq__43104__$1);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43129,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43129,(1),null);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),k)){\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,\x22default\x22) : f.call(null,v,\x22default\x22));\n} else {\n(f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(v,k) : f.call(null,v,k));\n}\n\n\nvar G__43463 \x3d cljs.core.next(seq__43104__$1);\nvar G__43464 \x3d null;\nvar G__43465 \x3d (0);\nvar G__43466 \x3d (0);\nseq__43104 \x3d G__43463;\nchunk__43105 \x3d G__43464;\ncount__43106 \x3d G__43465;\ni__43107 \x3d G__43466;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\nreturn x43101;\n})(), \x22unpack\x22: (function (x){\nif((x instanceof cljs.core.PersistentArrayMap)){\nreturn x.arr;\n} else {\nreturn false;\n}\n})}),cljs.core.clj__GT_js(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781)))));\n}));\n\n(cognitect.transit.writer.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Encode an object into a transit string given a transit writer.\n */\ncognitect.transit.write \x3d (function cognitect$transit$write(w,o){\nreturn w.write(o);\n});\n/**\n * Construct a read handler. Implemented as identity, exists primarily\n * for API compatiblity with transit-clj\n */\ncognitect.transit.read_handler \x3d (function cognitect$transit$read_handler(from_rep){\nreturn from_rep;\n});\n/**\n * Creates a transit write handler whose tag, rep,\n * stringRep, and verboseWriteHandler methods\n * invoke the provided fns.\n */\ncognitect.transit.write_handler \x3d (function cognitect$transit$write_handler(var_args){\nvar G__43140 \x3d arguments.length;\nswitch (G__43140) {\ncase 2:\nreturn cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$2 \x3d (function (tag_fn,rep_fn){\nreturn cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$4(tag_fn,rep_fn,null,null);\n}));\n\n(cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$3 \x3d (function (tag_fn,rep_fn,str_rep_fn){\nreturn cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$4(tag_fn,rep_fn,str_rep_fn,null);\n}));\n\n(cognitect.transit.write_handler.cljs$core$IFn$_invoke$arity$4 \x3d (function (tag_fn,rep_fn,str_rep_fn,verbose_handler_fn){\nif((typeof cognitect !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cognitect.transit !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cognitect.transit.t_cognitect$transit43144 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.IWithMeta}\n*/\ncognitect.transit.t_cognitect$transit43144 \x3d (function (tag_fn,rep_fn,str_rep_fn,verbose_handler_fn,meta43145){\nthis.tag_fn \x3d tag_fn;\nthis.rep_fn \x3d rep_fn;\nthis.str_rep_fn \x3d str_rep_fn;\nthis.verbose_handler_fn \x3d verbose_handler_fn;\nthis.meta43145 \x3d meta43145;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cognitect.transit.t_cognitect$transit43144.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_43146,meta43145__$1){\nvar self__ \x3d this;\nvar _43146__$1 \x3d this;\nreturn (new cognitect.transit.t_cognitect$transit43144(self__.tag_fn,self__.rep_fn,self__.str_rep_fn,self__.verbose_handler_fn,meta43145__$1));\n}));\n\n(cognitect.transit.t_cognitect$transit43144.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_43146){\nvar self__ \x3d this;\nvar _43146__$1 \x3d this;\nreturn self__.meta43145;\n}));\n\n(cognitect.transit.t_cognitect$transit43144.prototype.tag \x3d (function (o){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.tag_fn.cljs$core$IFn$_invoke$arity$1 ? self__.tag_fn.cljs$core$IFn$_invoke$arity$1(o) : self__.tag_fn.call(null,o));\n}));\n\n(cognitect.transit.t_cognitect$transit43144.prototype.rep \x3d (function (o){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn (self__.rep_fn.cljs$core$IFn$_invoke$arity$1 ? self__.rep_fn.cljs$core$IFn$_invoke$arity$1(o) : self__.rep_fn.call(null,o));\n}));\n\n(cognitect.transit.t_cognitect$transit43144.prototype.stringRep \x3d (function (o){\nvar self__ \x3d this;\nvar _ \x3d this;\nif(cljs.core.truth_(self__.str_rep_fn)){\nreturn (self__.str_rep_fn.cljs$core$IFn$_invoke$arity$1 ? self__.str_rep_fn.cljs$core$IFn$_invoke$arity$1(o) : self__.str_rep_fn.call(null,o));\n} else {\nreturn null;\n}\n}));\n\n(cognitect.transit.t_cognitect$transit43144.prototype.getVerboseHandler \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nif(cljs.core.truth_(self__.verbose_handler_fn)){\nreturn (self__.verbose_handler_fn.cljs$core$IFn$_invoke$arity$0 ? self__.verbose_handler_fn.cljs$core$IFn$_invoke$arity$0() : self__.verbose_handler_fn.call(null));\n} else {\nreturn null;\n}\n}));\n\n(cognitect.transit.t_cognitect$transit43144.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tag-fn\x22,\x22tag-fn\x22,242055482,null),new cljs.core.Symbol(null,\x22rep-fn\x22,\x22rep-fn\x22,-1724891035,null),new cljs.core.Symbol(null,\x22str-rep-fn\x22,\x22str-rep-fn\x22,-1179615016,null),new cljs.core.Symbol(null,\x22verbose-handler-fn\x22,\x22verbose-handler-fn\x22,547340594,null),new cljs.core.Symbol(null,\x22meta43145\x22,\x22meta43145\x22,-1551591300,null)], null);\n}));\n\n(cognitect.transit.t_cognitect$transit43144.cljs$lang$type \x3d true);\n\n(cognitect.transit.t_cognitect$transit43144.cljs$lang$ctorStr \x3d \x22cognitect.transit/t_cognitect$transit43144\x22);\n\n(cognitect.transit.t_cognitect$transit43144.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cognitect.transit/t_cognitect$transit43144\x22);\n}));\n\n/**\n * Positional factory function for cognitect.transit/t_cognitect$transit43144.\n */\ncognitect.transit.__GT_t_cognitect$transit43144 \x3d (function cognitect$transit$__GT_t_cognitect$transit43144(tag_fn__$1,rep_fn__$1,str_rep_fn__$1,verbose_handler_fn__$1,meta43145){\nreturn (new cognitect.transit.t_cognitect$transit43144(tag_fn__$1,rep_fn__$1,str_rep_fn__$1,verbose_handler_fn__$1,meta43145));\n});\n\n}\n\nreturn (new cognitect.transit.t_cognitect$transit43144(tag_fn,rep_fn,str_rep_fn,verbose_handler_fn,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(cognitect.transit.write_handler.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Construct a tagged value. tag must be a string and rep can\n * be any transit encodeable value.\n */\ncognitect.transit.tagged_value \x3d (function cognitect$transit$tagged_value(tag,rep){\nreturn com.cognitect.transit.types.taggedValue(tag,rep);\n});\n/**\n * Returns true if x is a transit tagged value, false otherwise.\n */\ncognitect.transit.tagged_value_QMARK_ \x3d (function cognitect$transit$tagged_value_QMARK_(x){\nreturn com.cognitect.transit.types.isTaggedValue(x);\n});\n/**\n * Construct a transit integer value. Returns JavaScript number if\n *   in the 53bit integer range, a goog.math.Long instance if above. s\n *   may be a string or a JavaScript number.\n */\ncognitect.transit.integer \x3d (function cognitect$transit$integer(s){\nreturn com.cognitect.transit.types.intValue(s);\n});\n/**\n * Returns true if x is an integer value between the 53bit and 64bit\n *   range, false otherwise.\n */\ncognitect.transit.integer_QMARK_ \x3d (function cognitect$transit$integer_QMARK_(x){\nreturn com.cognitect.transit.types.isInteger(x);\n});\n/**\n * Construct a big integer from a string.\n */\ncognitect.transit.bigint \x3d (function cognitect$transit$bigint(s){\nreturn com.cognitect.transit.types.bigInteger(s);\n});\n/**\n * Returns true if x is a transit big integer value, false otherwise.\n */\ncognitect.transit.bigint_QMARK_ \x3d (function cognitect$transit$bigint_QMARK_(x){\nreturn com.cognitect.transit.types.isBigInteger(x);\n});\n/**\n * Construct a big decimal from a string.\n */\ncognitect.transit.bigdec \x3d (function cognitect$transit$bigdec(s){\nreturn com.cognitect.transit.types.bigDecimalValue(s);\n});\n/**\n * Returns true if x is a transit big decimal value, false otherwise.\n */\ncognitect.transit.bigdec_QMARK_ \x3d (function cognitect$transit$bigdec_QMARK_(x){\nreturn com.cognitect.transit.types.isBigDecimal(x);\n});\n/**\n * Construct a URI from a string.\n */\ncognitect.transit.uri \x3d (function cognitect$transit$uri(s){\nreturn com.cognitect.transit.types.uri(s);\n});\n/**\n * Returns true if x is a transit URI value, false otherwise.\n */\ncognitect.transit.uri_QMARK_ \x3d (function cognitect$transit$uri_QMARK_(x){\nreturn com.cognitect.transit.types.isURI(x);\n});\n/**\n * Construct a UUID from a string.\n */\ncognitect.transit.uuid \x3d (function cognitect$transit$uuid(s){\nreturn com.cognitect.transit.types.uuid(s);\n});\n/**\n * Returns true if x is a transit UUID value, false otherwise.\n */\ncognitect.transit.uuid_QMARK_ \x3d (function cognitect$transit$uuid_QMARK_(x){\nvar or__4160__auto__ \x3d com.cognitect.transit.types.isUUID(x);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (x instanceof cljs.core.UUID);\n}\n});\n/**\n * Construct a transit binary value. s should be base64 encoded\n * string.\n */\ncognitect.transit.binary \x3d (function cognitect$transit$binary(s){\nreturn com.cognitect.transit.types.binary(s);\n});\n/**\n * Returns true if x is a transit binary value, false otherwise.\n */\ncognitect.transit.binary_QMARK_ \x3d (function cognitect$transit$binary_QMARK_(x){\nreturn com.cognitect.transit.types.isBinary(x);\n});\n/**\n * Construct a quoted transit value. x should be a transit\n * encodeable value.\n */\ncognitect.transit.quoted \x3d (function cognitect$transit$quoted(x){\nreturn com.cognitect.transit.types.quoted(x);\n});\n/**\n * Returns true if x is a transit quoted value, false otherwise.\n */\ncognitect.transit.quoted_QMARK_ \x3d (function cognitect$transit$quoted_QMARK_(x){\nreturn com.cognitect.transit.types.isQuoted(x);\n});\n/**\n * Construct a transit link value. x should be an IMap instance\n * containing at a minimum the following keys: :href, :rel. It\n * may optionall include :name, :render, and :prompt. :href must\n * be a transit URI, all other values are strings, and :render must\n * be either :image or :link.\n */\ncognitect.transit.link \x3d (function cognitect$transit$link(x){\nreturn com.cognitect.transit.types.link(x);\n});\n/**\n * Returns true if x a transit link value, false if otherwise.\n */\ncognitect.transit.link_QMARK_ \x3d (function cognitect$transit$link_QMARK_(x){\nreturn com.cognitect.transit.types.isLink(x);\n});\n/**\n * For :transform. Will write any metadata present on the value.\n */\ncognitect.transit.write_meta \x3d (function cognitect$transit$write_meta(x){\nif((((!((x \x3d\x3d null))))?(((((x.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$core$IMeta$))))?true:false):false)){\nvar m \x3d x.cljs$core$IMeta$_meta$arity$1(null);\nif((!((m \x3d\x3d null)))){\nreturn (new cognitect.transit.WithMeta(x.cljs$core$IWithMeta$_with_meta$arity$2(null,null),m));\n} else {\nreturn x;\n}\n} else {\nreturn x;\n}\n});\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.api.js", true , "goog.provide(\x27shadow.remote.runtime.api\x27);\n\n/**\n * @interface\n */\nshadow.remote.runtime.api.IRuntime \x3d function(){};\n\nvar shadow$remote$runtime$api$IRuntime$relay_msg$dyn_42862 \x3d (function (runtime,msg){\nvar x__4463__auto__ \x3d (((runtime \x3d\x3d null))?null:runtime);\nvar m__4464__auto__ \x3d (shadow.remote.runtime.api.relay_msg[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(runtime,msg) : m__4464__auto__.call(null,runtime,msg));\n} else {\nvar m__4461__auto__ \x3d (shadow.remote.runtime.api.relay_msg[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(runtime,msg) : m__4461__auto__.call(null,runtime,msg));\n} else {\nthrow cljs.core.missing_protocol(\x22IRuntime.relay-msg\x22,runtime);\n}\n}\n});\nshadow.remote.runtime.api.relay_msg \x3d (function shadow$remote$runtime$api$relay_msg(runtime,msg){\nif((((!((runtime \x3d\x3d null)))) \x26\x26 ((!((runtime.shadow$remote$runtime$api$IRuntime$relay_msg$arity$2 \x3d\x3d null)))))){\nreturn runtime.shadow$remote$runtime$api$IRuntime$relay_msg$arity$2(runtime,msg);\n} else {\nreturn shadow$remote$runtime$api$IRuntime$relay_msg$dyn_42862(runtime,msg);\n}\n});\n\nvar shadow$remote$runtime$api$IRuntime$add_extension$dyn_42864 \x3d (function (runtime,key,spec){\nvar x__4463__auto__ \x3d (((runtime \x3d\x3d null))?null:runtime);\nvar m__4464__auto__ \x3d (shadow.remote.runtime.api.add_extension[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(runtime,key,spec) : m__4464__auto__.call(null,runtime,key,spec));\n} else {\nvar m__4461__auto__ \x3d (shadow.remote.runtime.api.add_extension[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(runtime,key,spec) : m__4461__auto__.call(null,runtime,key,spec));\n} else {\nthrow cljs.core.missing_protocol(\x22IRuntime.add-extension\x22,runtime);\n}\n}\n});\nshadow.remote.runtime.api.add_extension \x3d (function shadow$remote$runtime$api$add_extension(runtime,key,spec){\nif((((!((runtime \x3d\x3d null)))) \x26\x26 ((!((runtime.shadow$remote$runtime$api$IRuntime$add_extension$arity$3 \x3d\x3d null)))))){\nreturn runtime.shadow$remote$runtime$api$IRuntime$add_extension$arity$3(runtime,key,spec);\n} else {\nreturn shadow$remote$runtime$api$IRuntime$add_extension$dyn_42864(runtime,key,spec);\n}\n});\n\nvar shadow$remote$runtime$api$IRuntime$del_extension$dyn_42868 \x3d (function (runtime,key){\nvar x__4463__auto__ \x3d (((runtime \x3d\x3d null))?null:runtime);\nvar m__4464__auto__ \x3d (shadow.remote.runtime.api.del_extension[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(runtime,key) : m__4464__auto__.call(null,runtime,key));\n} else {\nvar m__4461__auto__ \x3d (shadow.remote.runtime.api.del_extension[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(runtime,key) : m__4461__auto__.call(null,runtime,key));\n} else {\nthrow cljs.core.missing_protocol(\x22IRuntime.del-extension\x22,runtime);\n}\n}\n});\nshadow.remote.runtime.api.del_extension \x3d (function shadow$remote$runtime$api$del_extension(runtime,key){\nif((((!((runtime \x3d\x3d null)))) \x26\x26 ((!((runtime.shadow$remote$runtime$api$IRuntime$del_extension$arity$2 \x3d\x3d null)))))){\nreturn runtime.shadow$remote$runtime$api$IRuntime$del_extension$arity$2(runtime,key);\n} else {\nreturn shadow$remote$runtime$api$IRuntime$del_extension$dyn_42868(runtime,key);\n}\n});\n\n\n/**\n * @interface\n */\nshadow.remote.runtime.api.Inspectable \x3d function(){};\n\nvar shadow$remote$runtime$api$Inspectable$describe$dyn_42870 \x3d (function (thing,opts){\nvar x__4463__auto__ \x3d (((thing \x3d\x3d null))?null:thing);\nvar m__4464__auto__ \x3d (shadow.remote.runtime.api.describe[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(thing,opts) : m__4464__auto__.call(null,thing,opts));\n} else {\nvar temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.meta(thing),cljs.core.with_meta(new cljs.core.Symbol(\x22shadow.remote.runtime.api\x22,\x22describe\x22,\x22shadow.remote.runtime.api/describe\x22,1388020131,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.analyzer\x22,\x22no-resolve\x22,\x22cljs.analyzer/no-resolve\x22,-1872351017),true], null)));\nif(temp__5751__auto__){\nvar meta_impl__4462__auto__ \x3d temp__5751__auto__;\nreturn (meta_impl__4462__auto__.cljs$core$IFn$_invoke$arity$2 ? meta_impl__4462__auto__.cljs$core$IFn$_invoke$arity$2(thing,opts) : meta_impl__4462__auto__.call(null,thing,opts));\n} else {\nvar m__4461__auto__ \x3d (shadow.remote.runtime.api.describe[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(thing,opts) : m__4461__auto__.call(null,thing,opts));\n} else {\nthrow cljs.core.missing_protocol(\x22Inspectable.describe\x22,thing);\n}\n}\n}\n});\n/**\n * returns a map descriptor that tells system how to handle things further\n */\nshadow.remote.runtime.api.describe \x3d (function shadow$remote$runtime$api$describe(thing,opts){\nif((((!((thing \x3d\x3d null)))) \x26\x26 ((!((thing.shadow$remote$runtime$api$Inspectable$describe$arity$2 \x3d\x3d null)))))){\nreturn thing.shadow$remote$runtime$api$Inspectable$describe$arity$2(thing,opts);\n} else {\nreturn shadow$remote$runtime$api$Inspectable$describe$dyn_42870(thing,opts);\n}\n});\n\n\n/**\n * @interface\n */\nshadow.remote.runtime.api.IEvalCLJS \x3d function(){};\n\nvar shadow$remote$runtime$api$IEvalCLJS$_cljs_eval$dyn_42878 \x3d (function (runtime,input,callback){\nvar x__4463__auto__ \x3d (((runtime \x3d\x3d null))?null:runtime);\nvar m__4464__auto__ \x3d (shadow.remote.runtime.api._cljs_eval[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(runtime,input,callback) : m__4464__auto__.call(null,runtime,input,callback));\n} else {\nvar m__4461__auto__ \x3d (shadow.remote.runtime.api._cljs_eval[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(runtime,input,callback) : m__4461__auto__.call(null,runtime,input,callback));\n} else {\nthrow cljs.core.missing_protocol(\x22IEvalCLJS.-cljs-eval\x22,runtime);\n}\n}\n});\nshadow.remote.runtime.api._cljs_eval \x3d (function shadow$remote$runtime$api$_cljs_eval(runtime,input,callback){\nif((((!((runtime \x3d\x3d null)))) \x26\x26 ((!((runtime.shadow$remote$runtime$api$IEvalCLJS$_cljs_eval$arity$3 \x3d\x3d null)))))){\nreturn runtime.shadow$remote$runtime$api$IEvalCLJS$_cljs_eval$arity$3(runtime,input,callback);\n} else {\nreturn shadow$remote$runtime$api$IEvalCLJS$_cljs_eval$dyn_42878(runtime,input,callback);\n}\n});\n\n\n\n/**\n * @interface\n */\nshadow.remote.runtime.api.IEvalJS \x3d function(){};\n\nvar shadow$remote$runtime$api$IEvalJS$_js_eval$dyn_42879 \x3d (function (runtime,code){\nvar x__4463__auto__ \x3d (((runtime \x3d\x3d null))?null:runtime);\nvar m__4464__auto__ \x3d (shadow.remote.runtime.api._js_eval[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(runtime,code) : m__4464__auto__.call(null,runtime,code));\n} else {\nvar m__4461__auto__ \x3d (shadow.remote.runtime.api._js_eval[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(runtime,code) : m__4461__auto__.call(null,runtime,code));\n} else {\nthrow cljs.core.missing_protocol(\x22IEvalJS.-js-eval\x22,runtime);\n}\n}\n});\nshadow.remote.runtime.api._js_eval \x3d (function shadow$remote$runtime$api$_js_eval(runtime,code){\nif((((!((runtime \x3d\x3d null)))) \x26\x26 ((!((runtime.shadow$remote$runtime$api$IEvalJS$_js_eval$arity$2 \x3d\x3d null)))))){\nreturn runtime.shadow$remote$runtime$api$IEvalJS$_js_eval$arity$2(runtime,code);\n} else {\nreturn shadow$remote$runtime$api$IEvalJS$_js_eval$dyn_42879(runtime,code);\n}\n});\n\n\nshadow.remote.runtime.api.cljs_eval \x3d (function shadow$remote$runtime$api$cljs_eval(runtime,p__42838,callback){\nvar map__42839 \x3d p__42838;\nvar map__42839__$1 \x3d cljs.core.__destructure_map(map__42839);\nvar input \x3d map__42839__$1;\nvar code \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__42839__$1,new cljs.core.Keyword(null,\x22code\x22,\x22code\x22,1586293142));\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__42839__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nif(((typeof code \x3d\x3d\x3d \x27string\x27) \x26\x26 (cljs.core.simple_symbol_QMARK_(ns)))){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid cljs-eval input\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22input\x22,\x22input\x22,556931961),input], null));\n}\n\nreturn shadow.remote.runtime.api._cljs_eval(runtime,input,callback);\n});\n\nshadow.remote.runtime.api.js_eval \x3d (function shadow$remote$runtime$api$js_eval(runtime,code){\nif(typeof code \x3d\x3d\x3d \x27string\x27){\n} else {\nthrow (new Error(\x22Assert failed: (string? code)\x22));\n}\n\nreturn shadow.remote.runtime.api._js_eval(runtime,code);\n});\n");
SHADOW_ENV.evalLoad("clojure.core.protocols.js", true , "goog.provide(\x27clojure.core.protocols\x27);\n\n/**\n * @interface\n */\nclojure.core.protocols.Datafiable \x3d function(){};\n\nvar clojure$core$protocols$Datafiable$datafy$dyn_42815 \x3d (function (o){\nvar x__4463__auto__ \x3d (((o \x3d\x3d null))?null:o);\nvar m__4464__auto__ \x3d (clojure.core.protocols.datafy[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4464__auto__.call(null,o));\n} else {\nvar temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.meta(o),cljs.core.with_meta(new cljs.core.Symbol(\x22clojure.core.protocols\x22,\x22datafy\x22,\x22clojure.core.protocols/datafy\x22,707534751,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.analyzer\x22,\x22no-resolve\x22,\x22cljs.analyzer/no-resolve\x22,-1872351017),true], null)));\nif(temp__5751__auto__){\nvar meta_impl__4462__auto__ \x3d temp__5751__auto__;\nreturn (meta_impl__4462__auto__.cljs$core$IFn$_invoke$arity$1 ? meta_impl__4462__auto__.cljs$core$IFn$_invoke$arity$1(o) : meta_impl__4462__auto__.call(null,o));\n} else {\nvar m__4461__auto__ \x3d (clojure.core.protocols.datafy[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(o) : m__4461__auto__.call(null,o));\n} else {\nthrow cljs.core.missing_protocol(\x22Datafiable.datafy\x22,o);\n}\n}\n}\n});\n/**\n * return a representation of o as data (default identity)\n */\nclojure.core.protocols.datafy \x3d (function clojure$core$protocols$datafy(o){\nif((((!((o \x3d\x3d null)))) \x26\x26 ((!((o.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d\x3d null)))))){\nreturn o.clojure$core$protocols$Datafiable$datafy$arity$1(o);\n} else {\nreturn clojure$core$protocols$Datafiable$datafy$dyn_42815(o);\n}\n});\n\ngoog.object.set(clojure.core.protocols.Datafiable,\x22null\x22,true);\n\ngoog.object.set(clojure.core.protocols.datafy,\x22null\x22,(function (_){\nreturn null;\n}));\n\ngoog.object.set(clojure.core.protocols.Datafiable,\x22_\x22,true);\n\ngoog.object.set(clojure.core.protocols.datafy,\x22_\x22,(function (o){\nreturn o;\n}));\n\n/**\n * @interface\n */\nclojure.core.protocols.Navigable \x3d function(){};\n\nvar clojure$core$protocols$Navigable$nav$dyn_42833 \x3d (function (coll,k,v){\nvar x__4463__auto__ \x3d (((coll \x3d\x3d null))?null:coll);\nvar m__4464__auto__ \x3d (clojure.core.protocols.nav[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,v) : m__4464__auto__.call(null,coll,k,v));\n} else {\nvar temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.meta(coll),cljs.core.with_meta(new cljs.core.Symbol(\x22clojure.core.protocols\x22,\x22nav\x22,\x22clojure.core.protocols/nav\x22,298936762,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.analyzer\x22,\x22no-resolve\x22,\x22cljs.analyzer/no-resolve\x22,-1872351017),true], null)));\nif(temp__5751__auto__){\nvar meta_impl__4462__auto__ \x3d temp__5751__auto__;\nreturn (meta_impl__4462__auto__.cljs$core$IFn$_invoke$arity$3 ? meta_impl__4462__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,v) : meta_impl__4462__auto__.call(null,coll,k,v));\n} else {\nvar m__4461__auto__ \x3d (clojure.core.protocols.nav[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(coll,k,v) : m__4461__auto__.call(null,coll,k,v));\n} else {\nthrow cljs.core.missing_protocol(\x22Navigable.nav\x22,coll);\n}\n}\n}\n});\n/**\n * return (possibly transformed) v in the context of coll and k (a key/index or nil),\n * defaults to returning v.\n */\nclojure.core.protocols.nav \x3d (function clojure$core$protocols$nav(coll,k,v){\nif((((!((coll \x3d\x3d null)))) \x26\x26 ((!((coll.clojure$core$protocols$Navigable$nav$arity$3 \x3d\x3d null)))))){\nreturn coll.clojure$core$protocols$Navigable$nav$arity$3(coll,k,v);\n} else {\nreturn clojure$core$protocols$Navigable$nav$dyn_42833(coll,k,v);\n}\n});\n\ngoog.object.set(clojure.core.protocols.Navigable,\x22_\x22,true);\n\ngoog.object.set(clojure.core.protocols.nav,\x22_\x22,(function (_,___$1,x){\nreturn x;\n}));\n");
SHADOW_ENV.evalLoad("clojure.datafy.js", true , "goog.provide(\x27clojure.datafy\x27);\n/**\n * Attempts to return x as data.\n *   datafy will return the value of clojure.protocols/datafy. If\n *   the value has been transformed and the result supports\n *   metadata, :clojure.datafy/obj will be set on the metadata to the\n *   original value of x.\n */\nclojure.datafy.datafy \x3d (function clojure$datafy$datafy(x){\nvar v \x3d clojure.core.protocols.datafy(x);\nif((v \x3d\x3d\x3d x)){\nreturn v;\n} else {\nif((((!((v \x3d\x3d null))))?(((((v.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d v.cljs$core$IWithMeta$))))?true:false):false)){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$4(v,cljs.core.assoc,new cljs.core.Keyword(\x22clojure.datafy\x22,\x22obj\x22,\x22clojure.datafy/obj\x22,-330079421),x);\n} else {\nreturn v;\n}\n}\n});\n/**\n * Returns (possibly transformed) v in the context of coll and k (a\n *   key/index or nil). Callers should attempt to provide the key/index\n *   context k for Indexed/Associative/ILookup colls if possible, but not\n *   to fabricate one e.g. for sequences (pass nil). nav will return the\n *   value of clojure.core.protocols/nav.\n */\nclojure.datafy.nav \x3d (function clojure$datafy$nav(coll,k,v){\nreturn clojure.core.protocols.nav(coll,k,v);\n});\nclojure.datafy.datify_ref \x3d (function clojure$datafy$datify_ref(r){\nreturn cljs.core.with_meta(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.deref(r)], null),cljs.core.meta(r));\n});\n(cljs.core.Var.prototype.clojure$core$protocols$Datafiable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Var.prototype.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d (function (r){\nvar r__$1 \x3d this;\nreturn clojure.datafy.datify_ref(r__$1);\n}));\n\n(cljs.core.Reduced.prototype.clojure$core$protocols$Datafiable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Reduced.prototype.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d (function (r){\nvar r__$1 \x3d this;\nreturn clojure.datafy.datify_ref(r__$1);\n}));\n\n(cljs.core.Atom.prototype.clojure$core$protocols$Datafiable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Atom.prototype.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d (function (r){\nvar r__$1 \x3d this;\nreturn clojure.datafy.datify_ref(r__$1);\n}));\n\n(cljs.core.Volatile.prototype.clojure$core$protocols$Datafiable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Volatile.prototype.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d (function (r){\nvar r__$1 \x3d this;\nreturn clojure.datafy.datify_ref(r__$1);\n}));\n\n(cljs.core.Delay.prototype.clojure$core$protocols$Datafiable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Delay.prototype.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d (function (r){\nvar r__$1 \x3d this;\nreturn clojure.datafy.datify_ref(r__$1);\n}));\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.writer.js", true , "goog.provide(\x27shadow.remote.runtime.writer\x27);\n\n/**\n* @constructor\n * @implements {cljs.core.IWriter}\n*/\nshadow.remote.runtime.writer.LimitWriter \x3d (function (sb,limit){\nthis.sb \x3d sb;\nthis.limit \x3d limit;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1073741824;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(shadow.remote.runtime.writer.LimitWriter.prototype.getString \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn self__.sb.toString();\n}));\n\n(shadow.remote.runtime.writer.LimitWriter.prototype.cljs$core$IWriter$_write$arity$2 \x3d (function (_,s){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nself__.sb.append(s);\n\nif((self__.sb.getLength() \x3e\x3d self__.limit)){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2([\x22The limit of \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.limit),\x22 bytes was reached while printing.\x22].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(\x22shadow.remote.runtime.writer\x22,\x22limit-reached\x22,\x22shadow.remote.runtime.writer/limit-reached\x22,1304350996),new cljs.core.Keyword(null,\x22limit\x22,\x22limit\x22,-1355822363),self__.limit], null));\n} else {\nreturn null;\n}\n}));\n\n(shadow.remote.runtime.writer.LimitWriter.prototype.cljs$core$IWriter$_flush$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn null;\n}));\n\n(shadow.remote.runtime.writer.LimitWriter.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22sb\x22,\x22sb\x22,-1249746442,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22StringBuffer\x22,\x22StringBuffer\x22,864531538,null)], null)),new cljs.core.Symbol(null,\x22limit\x22,\x22limit\x22,284709164,null)], null);\n}));\n\n(shadow.remote.runtime.writer.LimitWriter.cljs$lang$type \x3d true);\n\n(shadow.remote.runtime.writer.LimitWriter.cljs$lang$ctorStr \x3d \x22shadow.remote.runtime.writer/LimitWriter\x22);\n\n(shadow.remote.runtime.writer.LimitWriter.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22shadow.remote.runtime.writer/LimitWriter\x22);\n}));\n\n/**\n * Positional factory function for shadow.remote.runtime.writer/LimitWriter.\n */\nshadow.remote.runtime.writer.__GT_LimitWriter \x3d (function shadow$remote$runtime$writer$__GT_LimitWriter(sb,limit){\nreturn (new shadow.remote.runtime.writer.LimitWriter(sb,limit));\n});\n\nshadow.remote.runtime.writer.pr_str_limit \x3d (function shadow$remote$runtime$writer$pr_str_limit(obj,limit){\nvar sb \x3d (new goog.string.StringBuffer());\nvar writer \x3d (new shadow.remote.runtime.writer.LimitWriter(sb,limit));\ntry{cljs.core.pr_writer(obj,writer,cljs.core.pr_opts());\n\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [false,sb.toString()], null);\n}catch (e42775){var e \x3d e42775;\nif((!(cljs.core.keyword_identical_QMARK_(new cljs.core.Keyword(\x22shadow.remote.runtime.writer\x22,\x22limit-reached\x22,\x22shadow.remote.runtime.writer/limit-reached\x22,1304350996),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223).cljs$core$IFn$_invoke$arity$1(cljs.core.ex_data(e)))))){\nthrow e;\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,(function (){var s \x3d sb.toString();\nif((s.length \x3e limit)){\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),limit);\n} else {\nreturn s;\n}\n})()], null);\n}\n}});\nshadow.remote.runtime.writer.limit_writer \x3d (function shadow$remote$runtime$writer$limit_writer(limit){\nvar sb \x3d (new goog.string.StringBuffer());\nreturn (new shadow.remote.runtime.writer.LimitWriter(sb,limit));\n});\nshadow.remote.runtime.writer.get_string \x3d (function shadow$remote$runtime$writer$get_string(lw){\nreturn lw.getString();\n});\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.shared.js", true , "goog.provide(\x27shadow.remote.runtime.shared\x27);\nshadow.remote.runtime.shared.init_state \x3d (function shadow$remote$runtime$shared$init_state(client_info){\nreturn new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22client-info\x22,\x22client-info\x22,1958982504),client_info,new cljs.core.Keyword(null,\x22call-id-seq\x22,\x22call-id-seq\x22,-1679248218),(0),new cljs.core.Keyword(null,\x22call-handlers\x22,\x22call-handlers\x22,386605551),cljs.core.PersistentArrayMap.EMPTY], null);\n});\nshadow.remote.runtime.shared.now \x3d (function shadow$remote$runtime$shared$now(){\nreturn Date.now();\n});\nshadow.remote.runtime.shared.relay_msg \x3d (function shadow$remote$runtime$shared$relay_msg(runtime,msg){\nreturn shadow.remote.runtime.api.relay_msg(runtime,msg);\n});\nshadow.remote.runtime.shared.reply \x3d (function shadow$remote$runtime$shared$reply(runtime,p__43829,res){\nvar map__43831 \x3d p__43829;\nvar map__43831__$1 \x3d cljs.core.__destructure_map(map__43831);\nvar call_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43831__$1,new cljs.core.Keyword(null,\x22call-id\x22,\x22call-id\x22,1043012968));\nvar from \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43831__$1,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044));\nvar res__$1 \x3d (function (){var G__43837 \x3d res;\nvar G__43837__$1 \x3d (cljs.core.truth_(call_id)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__43837,new cljs.core.Keyword(null,\x22call-id\x22,\x22call-id\x22,1043012968),call_id):G__43837);\nif(cljs.core.truth_(from)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__43837__$1,new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),from);\n} else {\nreturn G__43837__$1;\n}\n})();\nreturn shadow.remote.runtime.api.relay_msg(runtime,res__$1);\n});\nshadow.remote.runtime.shared.call \x3d (function shadow$remote$runtime$shared$call(var_args){\nvar G__43864 \x3d arguments.length;\nswitch (G__43864) {\ncase 3:\nreturn shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$3 \x3d (function (runtime,msg,handlers){\nreturn shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$4(runtime,msg,handlers,(0));\n}));\n\n(shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$4 \x3d (function (p__43868,msg,handlers,timeout_after_ms){\nvar map__43870 \x3d p__43868;\nvar map__43870__$1 \x3d cljs.core.__destructure_map(map__43870);\nvar runtime \x3d map__43870__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43870__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar call_id \x3d new cljs.core.Keyword(null,\x22call-id-seq\x22,\x22call-id-seq\x22,-1679248218).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.update,new cljs.core.Keyword(null,\x22call-id-seq\x22,\x22call-id-seq\x22,-1679248218),cljs.core.inc);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22call-handlers\x22,\x22call-handlers\x22,386605551),call_id], null),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),handlers,new cljs.core.Keyword(null,\x22called-at\x22,\x22called-at\x22,607081160),shadow.remote.runtime.shared.now(),new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),msg,new cljs.core.Keyword(null,\x22timeout\x22,\x22timeout\x22,-318625318),timeout_after_ms], null));\n\nreturn shadow.remote.runtime.api.relay_msg(runtime,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(msg,new cljs.core.Keyword(null,\x22call-id\x22,\x22call-id\x22,1043012968),call_id));\n}));\n\n(shadow.remote.runtime.shared.call.cljs$lang$maxFixedArity \x3d 4);\n\nshadow.remote.runtime.shared.trigger_BANG_ \x3d (function shadow$remote$runtime$shared$trigger_BANG_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44177 \x3d arguments.length;\nvar i__4772__auto___44179 \x3d (0);\nwhile(true){\nif((i__4772__auto___44179 \x3c len__4771__auto___44177)){\nargs__4777__auto__.push((arguments[i__4772__auto___44179]));\n\nvar G__44180 \x3d (i__4772__auto___44179 + (1));\ni__4772__auto___44179 \x3d G__44180;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn shadow.remote.runtime.shared.trigger_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(shadow.remote.runtime.shared.trigger_BANG_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (p__43886,ev,args){\nvar map__43887 \x3d p__43886;\nvar map__43887__$1 \x3d cljs.core.__destructure_map(map__43887);\nvar runtime \x3d map__43887__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43887__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar seq__43889 \x3d cljs.core.seq(cljs.core.vals(new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref))));\nvar chunk__43892 \x3d null;\nvar count__43893 \x3d (0);\nvar i__43894 \x3d (0);\nwhile(true){\nif((i__43894 \x3c count__43893)){\nvar ext \x3d chunk__43892.cljs$core$IIndexed$_nth$arity$2(null,i__43894);\nvar ev_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(ext,ev);\nif(cljs.core.truth_(ev_fn)){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2(ev_fn,args);\n\n\nvar G__44188 \x3d seq__43889;\nvar G__44189 \x3d chunk__43892;\nvar G__44190 \x3d count__43893;\nvar G__44191 \x3d (i__43894 + (1));\nseq__43889 \x3d G__44188;\nchunk__43892 \x3d G__44189;\ncount__43893 \x3d G__44190;\ni__43894 \x3d G__44191;\ncontinue;\n} else {\nvar G__44195 \x3d seq__43889;\nvar G__44196 \x3d chunk__43892;\nvar G__44197 \x3d count__43893;\nvar G__44198 \x3d (i__43894 + (1));\nseq__43889 \x3d G__44195;\nchunk__43892 \x3d G__44196;\ncount__43893 \x3d G__44197;\ni__43894 \x3d G__44198;\ncontinue;\n}\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__43889);\nif(temp__5753__auto__){\nvar seq__43889__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__43889__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__43889__$1);\nvar G__44201 \x3d cljs.core.chunk_rest(seq__43889__$1);\nvar G__44202 \x3d c__4591__auto__;\nvar G__44203 \x3d cljs.core.count(c__4591__auto__);\nvar G__44204 \x3d (0);\nseq__43889 \x3d G__44201;\nchunk__43892 \x3d G__44202;\ncount__43893 \x3d G__44203;\ni__43894 \x3d G__44204;\ncontinue;\n} else {\nvar ext \x3d cljs.core.first(seq__43889__$1);\nvar ev_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(ext,ev);\nif(cljs.core.truth_(ev_fn)){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$2(ev_fn,args);\n\n\nvar G__44213 \x3d cljs.core.next(seq__43889__$1);\nvar G__44214 \x3d null;\nvar G__44215 \x3d (0);\nvar G__44216 \x3d (0);\nseq__43889 \x3d G__44213;\nchunk__43892 \x3d G__44214;\ncount__43893 \x3d G__44215;\ni__43894 \x3d G__44216;\ncontinue;\n} else {\nvar G__44217 \x3d cljs.core.next(seq__43889__$1);\nvar G__44218 \x3d null;\nvar G__44219 \x3d (0);\nvar G__44220 \x3d (0);\nseq__43889 \x3d G__44217;\nchunk__43892 \x3d G__44218;\ncount__43893 \x3d G__44219;\ni__43894 \x3d G__44220;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(shadow.remote.runtime.shared.trigger_BANG_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(shadow.remote.runtime.shared.trigger_BANG_.cljs$lang$applyTo \x3d (function (seq43876){\nvar G__43877 \x3d cljs.core.first(seq43876);\nvar seq43876__$1 \x3d cljs.core.next(seq43876);\nvar G__43878 \x3d cljs.core.first(seq43876__$1);\nvar seq43876__$2 \x3d cljs.core.next(seq43876__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__43877,G__43878,seq43876__$2);\n}));\n\nshadow.remote.runtime.shared.welcome \x3d (function shadow$remote$runtime$shared$welcome(p__43931,p__43932){\nvar map__43935 \x3d p__43931;\nvar map__43935__$1 \x3d cljs.core.__destructure_map(map__43935);\nvar runtime \x3d map__43935__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43935__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar map__43937 \x3d p__43932;\nvar map__43937__$1 \x3d cljs.core.__destructure_map(map__43937);\nvar msg \x3d map__43937__$1;\nvar client_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43937__$1,new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc,new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140),client_id);\n\nvar map__43945 \x3d cljs.core.deref(state_ref);\nvar map__43945__$1 \x3d cljs.core.__destructure_map(map__43945);\nvar client_info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43945__$1,new cljs.core.Keyword(null,\x22client-info\x22,\x22client-info\x22,1958982504));\nvar extensions \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43945__$1,new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196));\nshadow.remote.runtime.shared.relay_msg(runtime,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22hello\x22,\x22hello\x22,-245025397),new cljs.core.Keyword(null,\x22client-info\x22,\x22client-info\x22,1958982504),client_info], null));\n\nreturn shadow.remote.runtime.shared.trigger_BANG_(runtime,new cljs.core.Keyword(null,\x22on-welcome\x22,\x22on-welcome\x22,1895317125));\n});\nshadow.remote.runtime.shared.ping \x3d (function shadow$remote$runtime$shared$ping(runtime,msg){\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22pong\x22,\x22pong\x22,-172484958)], null));\n});\nshadow.remote.runtime.shared.get_client_id \x3d (function shadow$remote$runtime$shared$get_client_id(p__43973){\nvar map__43977 \x3d p__43973;\nvar map__43977__$1 \x3d cljs.core.__destructure_map(map__43977);\nvar runtime \x3d map__43977__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43977__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22runtime has no assigned runtime-id\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),runtime], null));\n}\n});\nshadow.remote.runtime.shared.request_supported_ops \x3d (function shadow$remote$runtime$shared$request_supported_ops(p__43986,msg){\nvar map__43988 \x3d p__43986;\nvar map__43988__$1 \x3d cljs.core.__destructure_map(map__43988);\nvar runtime \x3d map__43988__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__43988__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22supported-ops\x22,\x22supported-ops\x22,337914702),new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),cljs.core.disj.cljs$core$IFn$_invoke$arity$variadic(cljs.core.set(cljs.core.keys(new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref)))),new cljs.core.Keyword(null,\x22welcome\x22,\x22welcome\x22,-578152123),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22unknown-relay-op\x22,\x22unknown-relay-op\x22,170832753),new cljs.core.Keyword(null,\x22unknown-op\x22,\x22unknown-op\x22,1900385996),new cljs.core.Keyword(null,\x22request-supported-ops\x22,\x22request-supported-ops\x22,-1034994502),new cljs.core.Keyword(null,\x22tool-disconnect\x22,\x22tool-disconnect\x22,189103996)], 0))], null));\n});\nshadow.remote.runtime.shared.unknown_relay_op \x3d (function shadow$remote$runtime$shared$unknown_relay_op(msg){\nreturn console.warn(\x22unknown-relay-op\x22,msg);\n});\nshadow.remote.runtime.shared.unknown_op \x3d (function shadow$remote$runtime$shared$unknown_op(msg){\nreturn console.warn(\x22unknown-op\x22,msg);\n});\nshadow.remote.runtime.shared.add_extension_STAR_ \x3d (function shadow$remote$runtime$shared$add_extension_STAR_(p__43999,key,p__44000){\nvar map__44002 \x3d p__43999;\nvar map__44002__$1 \x3d cljs.core.__destructure_map(map__44002);\nvar state \x3d map__44002__$1;\nvar extensions \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44002__$1,new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196));\nvar map__44003 \x3d p__44000;\nvar map__44003__$1 \x3d cljs.core.__destructure_map(map__44003);\nvar spec \x3d map__44003__$1;\nvar ops \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44003__$1,new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063));\nif(cljs.core.contains_QMARK_(extensions,key)){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22extension already registered\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),key,new cljs.core.Keyword(null,\x22spec\x22,\x22spec\x22,347520401),spec], null));\n} else {\n}\n\nreturn cljs.core.reduce_kv((function (state__$1,op_kw,op_handler){\nif(cljs.core.truth_(cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(state__$1,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),op_kw], null)))){\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22op already registered\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),key,new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),op_kw], null));\n} else {\n}\n\nreturn cljs.core.assoc_in(state__$1,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),op_kw], null),op_handler);\n}),cljs.core.assoc_in(state,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196),key], null),spec),ops);\n});\nshadow.remote.runtime.shared.add_extension \x3d (function shadow$remote$runtime$shared$add_extension(p__44014,key,spec){\nvar map__44018 \x3d p__44014;\nvar map__44018__$1 \x3d cljs.core.__destructure_map(map__44018);\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44018__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,shadow.remote.runtime.shared.add_extension_STAR_,key,spec);\n});\nshadow.remote.runtime.shared.add_defaults \x3d (function shadow$remote$runtime$shared$add_defaults(runtime){\nreturn shadow.remote.runtime.shared.add_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.shared\x22,\x22defaults\x22,\x22shadow.remote.runtime.shared/defaults\x22,-1821257543),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22welcome\x22,\x22welcome\x22,-578152123),(function (p1__44023_SHARP_){\nreturn shadow.remote.runtime.shared.welcome(runtime,p1__44023_SHARP_);\n}),new cljs.core.Keyword(null,\x22unknown-relay-op\x22,\x22unknown-relay-op\x22,170832753),(function (p1__44025_SHARP_){\nreturn shadow.remote.runtime.shared.unknown_relay_op(p1__44025_SHARP_);\n}),new cljs.core.Keyword(null,\x22unknown-op\x22,\x22unknown-op\x22,1900385996),(function (p1__44026_SHARP_){\nreturn shadow.remote.runtime.shared.unknown_op(p1__44026_SHARP_);\n}),new cljs.core.Keyword(null,\x22ping\x22,\x22ping\x22,-1670114784),(function (p1__44027_SHARP_){\nreturn shadow.remote.runtime.shared.ping(runtime,p1__44027_SHARP_);\n}),new cljs.core.Keyword(null,\x22request-supported-ops\x22,\x22request-supported-ops\x22,-1034994502),(function (p1__44028_SHARP_){\nreturn shadow.remote.runtime.shared.request_supported_ops(runtime,p1__44028_SHARP_);\n})], null)], null));\n});\nshadow.remote.runtime.shared.del_extension_STAR_ \x3d (function shadow$remote$runtime$shared$del_extension_STAR_(state,key){\nvar ext \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(state,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196),key], null));\nif(cljs.core.not(ext)){\nreturn state;\n} else {\nreturn cljs.core.reduce_kv((function (state__$1,op_kw,op_handler){\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(state__$1,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063)], null),cljs.core.dissoc,op_kw);\n}),cljs.core.update.cljs$core$IFn$_invoke$arity$4(state,new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196),cljs.core.dissoc,key),new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063).cljs$core$IFn$_invoke$arity$1(ext));\n}\n});\nshadow.remote.runtime.shared.del_extension \x3d (function shadow$remote$runtime$shared$del_extension(p__44048,key){\nvar map__44052 \x3d p__44048;\nvar map__44052__$1 \x3d cljs.core.__destructure_map(map__44052);\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44052__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(state_ref,shadow.remote.runtime.shared.del_extension_STAR_,key);\n});\nshadow.remote.runtime.shared.unhandled_call_result \x3d (function shadow$remote$runtime$shared$unhandled_call_result(call_config,msg){\nreturn console.warn(\x22unhandled call result\x22,msg,call_config);\n});\nshadow.remote.runtime.shared.unhandled_client_not_found \x3d (function shadow$remote$runtime$shared$unhandled_client_not_found(p__44062,msg){\nvar map__44065 \x3d p__44062;\nvar map__44065__$1 \x3d cljs.core.__destructure_map(map__44065);\nvar runtime \x3d map__44065__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44065__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn shadow.remote.runtime.shared.trigger_BANG_.cljs$core$IFn$_invoke$arity$variadic(runtime,new cljs.core.Keyword(null,\x22on-client-not-found\x22,\x22on-client-not-found\x22,-642452849),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([msg], 0));\n});\nshadow.remote.runtime.shared.reply_unknown_op \x3d (function shadow$remote$runtime$shared$reply_unknown_op(runtime,msg){\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22unknown-op\x22,\x22unknown-op\x22,1900385996),new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),msg], null));\n});\nshadow.remote.runtime.shared.process \x3d (function shadow$remote$runtime$shared$process(p__44076,p__44077){\nvar map__44078 \x3d p__44076;\nvar map__44078__$1 \x3d cljs.core.__destructure_map(map__44078);\nvar runtime \x3d map__44078__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44078__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar map__44081 \x3d p__44077;\nvar map__44081__$1 \x3d cljs.core.__destructure_map(map__44081);\nvar msg \x3d map__44081__$1;\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44081__$1,new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955));\nvar call_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44081__$1,new cljs.core.Keyword(null,\x22call-id\x22,\x22call-id\x22,1043012968));\nvar state \x3d cljs.core.deref(state_ref);\nvar op_handler \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(state,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),op], null));\nif(cljs.core.truth_(call_id)){\nvar cfg \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(state,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22call-handlers\x22,\x22call-handlers\x22,386605551),call_id], null));\nvar call_handler \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cfg,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),op], null));\nif(cljs.core.truth_(call_handler)){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(state_ref,cljs.core.update,new cljs.core.Keyword(null,\x22call-handlers\x22,\x22call-handlers\x22,386605551),cljs.core.dissoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([call_id], 0));\n\nreturn (call_handler.cljs$core$IFn$_invoke$arity$1 ? call_handler.cljs$core$IFn$_invoke$arity$1(msg) : call_handler.call(null,msg));\n} else {\nif(cljs.core.truth_(op_handler)){\nreturn (op_handler.cljs$core$IFn$_invoke$arity$1 ? op_handler.cljs$core$IFn$_invoke$arity$1(msg) : op_handler.call(null,msg));\n} else {\nreturn shadow.remote.runtime.shared.unhandled_call_result(cfg,msg);\n\n}\n}\n} else {\nif(cljs.core.truth_(op_handler)){\nreturn (op_handler.cljs$core$IFn$_invoke$arity$1 ? op_handler.cljs$core$IFn$_invoke$arity$1(msg) : op_handler.call(null,msg));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22client-not-found\x22,\x22client-not-found\x22,-1754042614),op)){\nreturn shadow.remote.runtime.shared.unhandled_client_not_found(runtime,msg);\n} else {\nreturn shadow.remote.runtime.shared.reply_unknown_op(runtime,msg);\n\n}\n}\n}\n});\nshadow.remote.runtime.shared.run_on_idle \x3d (function shadow$remote$runtime$shared$run_on_idle(state_ref){\nvar seq__44089 \x3d cljs.core.seq(cljs.core.vals(new cljs.core.Keyword(null,\x22extensions\x22,\x22extensions\x22,-1103629196).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref))));\nvar chunk__44091 \x3d null;\nvar count__44092 \x3d (0);\nvar i__44093 \x3d (0);\nwhile(true){\nif((i__44093 \x3c count__44092)){\nvar map__44137 \x3d chunk__44091.cljs$core$IIndexed$_nth$arity$2(null,i__44093);\nvar map__44137__$1 \x3d cljs.core.__destructure_map(map__44137);\nvar on_idle \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44137__$1,new cljs.core.Keyword(null,\x22on-idle\x22,\x22on-idle\x22,2044706602));\nif(cljs.core.truth_(on_idle)){\n(on_idle.cljs$core$IFn$_invoke$arity$0 ? on_idle.cljs$core$IFn$_invoke$arity$0() : on_idle.call(null));\n\n\nvar G__44281 \x3d seq__44089;\nvar G__44282 \x3d chunk__44091;\nvar G__44283 \x3d count__44092;\nvar G__44284 \x3d (i__44093 + (1));\nseq__44089 \x3d G__44281;\nchunk__44091 \x3d G__44282;\ncount__44092 \x3d G__44283;\ni__44093 \x3d G__44284;\ncontinue;\n} else {\nvar G__44286 \x3d seq__44089;\nvar G__44287 \x3d chunk__44091;\nvar G__44288 \x3d count__44092;\nvar G__44289 \x3d (i__44093 + (1));\nseq__44089 \x3d G__44286;\nchunk__44091 \x3d G__44287;\ncount__44092 \x3d G__44288;\ni__44093 \x3d G__44289;\ncontinue;\n}\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__44089);\nif(temp__5753__auto__){\nvar seq__44089__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__44089__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__44089__$1);\nvar G__44293 \x3d cljs.core.chunk_rest(seq__44089__$1);\nvar G__44294 \x3d c__4591__auto__;\nvar G__44295 \x3d cljs.core.count(c__4591__auto__);\nvar G__44296 \x3d (0);\nseq__44089 \x3d G__44293;\nchunk__44091 \x3d G__44294;\ncount__44092 \x3d G__44295;\ni__44093 \x3d G__44296;\ncontinue;\n} else {\nvar map__44143 \x3d cljs.core.first(seq__44089__$1);\nvar map__44143__$1 \x3d cljs.core.__destructure_map(map__44143);\nvar on_idle \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44143__$1,new cljs.core.Keyword(null,\x22on-idle\x22,\x22on-idle\x22,2044706602));\nif(cljs.core.truth_(on_idle)){\n(on_idle.cljs$core$IFn$_invoke$arity$0 ? on_idle.cljs$core$IFn$_invoke$arity$0() : on_idle.call(null));\n\n\nvar G__44298 \x3d cljs.core.next(seq__44089__$1);\nvar G__44299 \x3d null;\nvar G__44300 \x3d (0);\nvar G__44301 \x3d (0);\nseq__44089 \x3d G__44298;\nchunk__44091 \x3d G__44299;\ncount__44092 \x3d G__44300;\ni__44093 \x3d G__44301;\ncontinue;\n} else {\nvar G__44302 \x3d cljs.core.next(seq__44089__$1);\nvar G__44303 \x3d null;\nvar G__44304 \x3d (0);\nvar G__44305 \x3d (0);\nseq__44089 \x3d G__44302;\nchunk__44091 \x3d G__44303;\ncount__44092 \x3d G__44304;\ni__44093 \x3d G__44305;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.cljs.js_builtins.js", true , "goog.provide(\x27shadow.remote.runtime.cljs.js_builtins\x27);\ngoog.object.set(clojure.core.protocols.Datafiable,\x22object\x22,true);\n\ngoog.object.set(clojure.core.protocols.datafy,\x22object\x22,(function (o){\nif((!((o.__proto__ \x3d\x3d\x3d Object.prototype)))){\nreturn o;\n} else {\nreturn cljs.core.with_meta(cljs.core.persistent_BANG_(cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,key){\nreturn cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(m,key,goog.object.get(o,key));\n}),cljs.core.transient$(cljs.core.PersistentArrayMap.EMPTY),goog.object.getKeys(o))),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(\x22clojure.core.protocols\x22,\x22nav\x22,\x22clojure.core.protocols/nav\x22,298936762,null),(function (coll,k,v){\nreturn goog.object.get(o,k);\n})], null));\n}\n}));\n\ngoog.object.set(clojure.core.protocols.Datafiable,\x22array\x22,true);\n\ngoog.object.set(clojure.core.protocols.datafy,\x22array\x22,(function (o){\nreturn cljs.core.vec(o);\n}));\n\n(Error.prototype.clojure$core$protocols$Datafiable$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(Error.prototype.clojure$core$protocols$Datafiable$datafy$arity$1 \x3d (function (e){\nvar e__$1 \x3d this;\nvar data \x3d cljs.core.ex_data(e__$1);\nvar file \x3d e__$1.fileName;\nvar line \x3d e__$1.lineNumber;\nvar column \x3d e__$1.columnNumber;\nvar G__43082 \x3d new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22message\x22,\x22message\x22,-406056002),e__$1.message,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),e__$1.name,new cljs.core.Keyword(null,\x22stack\x22,\x22stack\x22,-793405930),e__$1.stack], null);\nvar G__43082__$1 \x3d (((!((data \x3d\x3d null))))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__43082,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),data):G__43082);\nvar G__43082__$2 \x3d (cljs.core.truth_(file)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__43082__$1,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file):G__43082__$1);\nvar G__43082__$3 \x3d (cljs.core.truth_(line)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__43082__$2,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line):G__43082__$2);\nif(cljs.core.truth_(column)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__43082__$3,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column);\n} else {\nreturn G__43082__$3;\n}\n}));\n");
SHADOW_ENV.evalLoad("clojure.walk.js", true , "goog.provide(\x27clojure.walk\x27);\n/**\n * Traverses form, an arbitrary data structure.  inner and outer are\n *   functions.  Applies inner to each element of form, building up a\n *   data structure of the same type, then applies outer to the result.\n *   Recognizes all Clojure data structures. Consumes seqs as with doall.\n */\nclojure.walk.walk \x3d (function clojure$walk$walk(inner,outer,form){\nif(cljs.core.list_QMARK_(form)){\nvar G__43063 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__43063) : outer.call(null,G__43063));\n} else {\nif(cljs.core.map_entry_QMARK_(form)){\nvar G__43064 \x3d (new cljs.core.MapEntry((function (){var G__43065 \x3d cljs.core.key(form);\nreturn (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__43065) : inner.call(null,G__43065));\n})(),(function (){var G__43067 \x3d cljs.core.val(form);\nreturn (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__43067) : inner.call(null,G__43067));\n})(),null));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__43064) : outer.call(null,G__43064));\n} else {\nif(cljs.core.seq_QMARK_(form)){\nvar G__43069 \x3d cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__43069) : outer.call(null,G__43069));\n} else {\nif(cljs.core.record_QMARK_(form)){\nvar G__43070 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (r,x){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(x) : inner.call(null,x)));\n}),form,form);\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__43070) : outer.call(null,G__43070));\n} else {\nif(cljs.core.coll_QMARK_(form)){\nvar G__43071 \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.empty(form),cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__43071) : outer.call(null,G__43071));\n} else {\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(form) : outer.call(null,form));\n\n}\n}\n}\n}\n}\n});\n/**\n * Performs a depth-first, post-order traversal of form.  Calls f on\n *   each sub-form, uses f\x27s return value in place of the original.\n *   Recognizes all Clojure data structures. Consumes seqs as with doall.\n */\nclojure.walk.postwalk \x3d (function clojure$walk$postwalk(f,form){\nreturn clojure.walk.walk(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(clojure.walk.postwalk,f),f,form);\n});\n/**\n * Like postwalk, but does pre-order traversal.\n */\nclojure.walk.prewalk \x3d (function clojure$walk$prewalk(f,form){\nreturn clojure.walk.walk(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(clojure.walk.prewalk,f),cljs.core.identity,(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(form) : f.call(null,form)));\n});\n/**\n * Recursively transforms all map keys from strings to keywords.\n */\nclojure.walk.keywordize_keys \x3d (function clojure$walk$keywordize_keys(m){\nvar f \x3d (function (p__43078){\nvar vec__43079 \x3d p__43078;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43079,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43079,(1),null);\nif(typeof k \x3d\x3d\x3d \x27string\x27){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(k),v], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);\n}\n});\nreturn clojure.walk.postwalk((function (x){\nif(cljs.core.map_QMARK_(x)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,x));\n} else {\nreturn x;\n}\n}),m);\n});\n/**\n * Recursively transforms all map keys from keywords to strings.\n */\nclojure.walk.stringify_keys \x3d (function clojure$walk$stringify_keys(m){\nvar f \x3d (function (p__43085){\nvar vec__43086 \x3d p__43085;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43086,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__43086,(1),null);\nif((k instanceof cljs.core.Keyword)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.name(k),v], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);\n}\n});\nreturn clojure.walk.postwalk((function (x){\nif(cljs.core.map_QMARK_(x)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(f,x));\n} else {\nreturn x;\n}\n}),m);\n});\n/**\n * Recursively transforms form by replacing keys in smap with their\n *   values.  Like clojure/replace but works on any data structure.  Does\n *   replacement at the root of the tree first.\n */\nclojure.walk.prewalk_replace \x3d (function clojure$walk$prewalk_replace(smap,form){\nreturn clojure.walk.prewalk((function (x){\nif(cljs.core.contains_QMARK_(smap,x)){\nreturn (smap.cljs$core$IFn$_invoke$arity$1 ? smap.cljs$core$IFn$_invoke$arity$1(x) : smap.call(null,x));\n} else {\nreturn x;\n}\n}),form);\n});\n/**\n * Recursively transforms form by replacing keys in smap with their\n *   values.  Like clojure/replace but works on any data structure.  Does\n *   replacement at the leaves of the tree first.\n */\nclojure.walk.postwalk_replace \x3d (function clojure$walk$postwalk_replace(smap,form){\nreturn clojure.walk.postwalk((function (x){\nif(cljs.core.contains_QMARK_(smap,x)){\nreturn (smap.cljs$core$IFn$_invoke$arity$1 ? smap.cljs$core$IFn$_invoke$arity$1(x) : smap.call(null,x));\n} else {\nreturn x;\n}\n}),form);\n});\n");
SHADOW_ENV.evalLoad("cljs.spec.gen.alpha.js", true , "goog.provide(\x27cljs.spec.gen.alpha\x27);\n\n/**\n* @constructor\n * @implements {cljs.core.IDeref}\n*/\ncljs.spec.gen.alpha.LazyVar \x3d (function (f,cached){\nthis.f \x3d f;\nthis.cached \x3d cached;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 32768;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.gen.alpha.LazyVar.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif((!((self__.cached \x3d\x3d null)))){\nreturn self__.cached;\n} else {\nvar x \x3d (self__.f.cljs$core$IFn$_invoke$arity$0 ? self__.f.cljs$core$IFn$_invoke$arity$0() : self__.f.call(null));\nif((x \x3d\x3d null)){\n} else {\n(self__.cached \x3d x);\n}\n\nreturn x;\n}\n}));\n\n(cljs.spec.gen.alpha.LazyVar.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22cached\x22,\x22cached\x22,-1216707864,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(cljs.spec.gen.alpha.LazyVar.cljs$lang$type \x3d true);\n\n(cljs.spec.gen.alpha.LazyVar.cljs$lang$ctorStr \x3d \x22cljs.spec.gen.alpha/LazyVar\x22);\n\n(cljs.spec.gen.alpha.LazyVar.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.gen.alpha/LazyVar\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.gen.alpha/LazyVar.\n */\ncljs.spec.gen.alpha.__GT_LazyVar \x3d (function cljs$spec$gen$alpha$__GT_LazyVar(f,cached){\nreturn (new cljs.spec.gen.alpha.LazyVar(f,cached));\n});\n\ncljs.spec.gen.alpha.quick_check_ref \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.quick_check !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.quick_check;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check\x22,\x22quick-check\x22,\x22clojure.test.check/quick-check\x22,-810344251,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check\x22,\x22quick-check\x22,\x22clojure.test.check/quick-check\x22,-810344251,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\ncljs.spec.gen.alpha.quick_check \x3d (function cljs$spec$gen$alpha$quick_check(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44132 \x3d arguments.length;\nvar i__4772__auto___44133 \x3d (0);\nwhile(true){\nif((i__4772__auto___44133 \x3c len__4771__auto___44132)){\nargs__4777__auto__.push((arguments[i__4772__auto___44133]));\n\nvar G__44134 \x3d (i__4772__auto___44133 + (1));\ni__4772__auto___44133 \x3d G__44134;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.quick_check.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.quick_check.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.spec.gen.alpha.quick_check_ref),args);\n}));\n\n(cljs.spec.gen.alpha.quick_check.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.quick_check.cljs$lang$applyTo \x3d (function (seq43097){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43097));\n}));\n\ncljs.spec.gen.alpha.for_all_STAR__ref \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.properties !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.properties.for_all_STAR_ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.properties.for_all_STAR_;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.properties\x22,\x22for-all*\x22,\x22clojure.test.check.properties/for-all*\x22,67088845,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.properties\x22,\x22for-all*\x22,\x22clojure.test.check.properties/for-all*\x22,67088845,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Dynamically loaded clojure.test.check.properties/for-all*.\n */\ncljs.spec.gen.alpha.for_all_STAR_ \x3d (function cljs$spec$gen$alpha$for_all_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44145 \x3d arguments.length;\nvar i__4772__auto___44146 \x3d (0);\nwhile(true){\nif((i__4772__auto___44146 \x3c len__4771__auto___44145)){\nargs__4777__auto__.push((arguments[i__4772__auto___44146]));\n\nvar G__44148 \x3d (i__4772__auto___44146 + (1));\ni__4772__auto___44146 \x3d G__44148;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.for_all_STAR_.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.for_all_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.spec.gen.alpha.for_all_STAR__ref),args);\n}));\n\n(cljs.spec.gen.alpha.for_all_STAR_.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.for_all_STAR_.cljs$lang$applyTo \x3d (function (seq43133){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43133));\n}));\n\nvar g_QMARK__44153 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.generator_QMARK_ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.generator_QMARK_;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22generator?\x22,\x22clojure.test.check.generators/generator?\x22,-1378210460,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22generator?\x22,\x22clojure.test.check.generators/generator?\x22,-1378210460,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\nvar g_44154 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.generate !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.generate;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22generate\x22,\x22clojure.test.check.generators/generate\x22,-690390711,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22generate\x22,\x22clojure.test.check.generators/generate\x22,-690390711,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\nvar mkg_44155 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.__GT_Generator !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.__GT_Generator;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22-\x3eGenerator\x22,\x22clojure.test.check.generators/-\x3eGenerator\x22,-1179475051,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22-\x3eGenerator\x22,\x22clojure.test.check.generators/-\x3eGenerator\x22,-1179475051,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\ncljs.spec.gen.alpha.generator_QMARK_ \x3d (function cljs$spec$gen$alpha$generator_QMARK_(x){\nvar fexpr__43143 \x3d cljs.core.deref(g_QMARK__44153);\nreturn (fexpr__43143.cljs$core$IFn$_invoke$arity$1 ? fexpr__43143.cljs$core$IFn$_invoke$arity$1(x) : fexpr__43143.call(null,x));\n});\n\ncljs.spec.gen.alpha.generator \x3d (function cljs$spec$gen$alpha$generator(gfn){\nvar fexpr__43148 \x3d cljs.core.deref(mkg_44155);\nreturn (fexpr__43148.cljs$core$IFn$_invoke$arity$1 ? fexpr__43148.cljs$core$IFn$_invoke$arity$1(gfn) : fexpr__43148.call(null,gfn));\n});\n\n/**\n * Generate a single value using generator.\n */\ncljs.spec.gen.alpha.generate \x3d (function cljs$spec$gen$alpha$generate(generator){\nvar fexpr__43152 \x3d cljs.core.deref(g_44154);\nreturn (fexpr__43152.cljs$core$IFn$_invoke$arity$1 ? fexpr__43152.cljs$core$IFn$_invoke$arity$1(generator) : fexpr__43152.call(null,generator));\n});\ncljs.spec.gen.alpha.delay_impl \x3d (function cljs$spec$gen$alpha$delay_impl(gfnd){\nreturn cljs.spec.gen.alpha.generator((function (rnd,size){\nvar fexpr__43157 \x3d new cljs.core.Keyword(null,\x22gen\x22,\x22gen\x22,142575302).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(gfnd));\nreturn (fexpr__43157.cljs$core$IFn$_invoke$arity$2 ? fexpr__43157.cljs$core$IFn$_invoke$arity$2(rnd,size) : fexpr__43157.call(null,rnd,size));\n}));\n});\nvar g__13271__auto___44182 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.hash_map !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.hash_map;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22hash-map\x22,\x22clojure.test.check.generators/hash-map\x22,1961346626,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22hash-map\x22,\x22clojure.test.check.generators/hash-map\x22,1961346626,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/hash-map\n */\ncljs.spec.gen.alpha.hash_map \x3d (function cljs$spec$gen$alpha$hash_map(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44186 \x3d arguments.length;\nvar i__4772__auto___44187 \x3d (0);\nwhile(true){\nif((i__4772__auto___44187 \x3c len__4771__auto___44186)){\nargs__4777__auto__.push((arguments[i__4772__auto___44187]));\n\nvar G__44193 \x3d (i__4772__auto___44187 + (1));\ni__4772__auto___44187 \x3d G__44193;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.hash_map.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.hash_map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44182),args);\n}));\n\n(cljs.spec.gen.alpha.hash_map.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.hash_map.cljs$lang$applyTo \x3d (function (seq43164){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43164));\n}));\n\n\nvar g__13271__auto___44212 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.list !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.list;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22list\x22,\x22clojure.test.check.generators/list\x22,506971058,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22list\x22,\x22clojure.test.check.generators/list\x22,506971058,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/list\n */\ncljs.spec.gen.alpha.list \x3d (function cljs$spec$gen$alpha$list(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44225 \x3d arguments.length;\nvar i__4772__auto___44227 \x3d (0);\nwhile(true){\nif((i__4772__auto___44227 \x3c len__4771__auto___44225)){\nargs__4777__auto__.push((arguments[i__4772__auto___44227]));\n\nvar G__44229 \x3d (i__4772__auto___44227 + (1));\ni__4772__auto___44227 \x3d G__44229;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44212),args);\n}));\n\n(cljs.spec.gen.alpha.list.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.list.cljs$lang$applyTo \x3d (function (seq43174){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43174));\n}));\n\n\nvar g__13271__auto___44231 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.map !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.map;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22map\x22,\x22clojure.test.check.generators/map\x22,45738796,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22map\x22,\x22clojure.test.check.generators/map\x22,45738796,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/map\n */\ncljs.spec.gen.alpha.map \x3d (function cljs$spec$gen$alpha$map(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44235 \x3d arguments.length;\nvar i__4772__auto___44236 \x3d (0);\nwhile(true){\nif((i__4772__auto___44236 \x3c len__4771__auto___44235)){\nargs__4777__auto__.push((arguments[i__4772__auto___44236]));\n\nvar G__44237 \x3d (i__4772__auto___44236 + (1));\ni__4772__auto___44236 \x3d G__44237;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.map.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.map.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44231),args);\n}));\n\n(cljs.spec.gen.alpha.map.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.map.cljs$lang$applyTo \x3d (function (seq43178){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43178));\n}));\n\n\nvar g__13271__auto___44238 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.not_empty !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.not_empty;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22not-empty\x22,\x22clojure.test.check.generators/not-empty\x22,-876211682,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22not-empty\x22,\x22clojure.test.check.generators/not-empty\x22,-876211682,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/not-empty\n */\ncljs.spec.gen.alpha.not_empty \x3d (function cljs$spec$gen$alpha$not_empty(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44242 \x3d arguments.length;\nvar i__4772__auto___44243 \x3d (0);\nwhile(true){\nif((i__4772__auto___44243 \x3c len__4771__auto___44242)){\nargs__4777__auto__.push((arguments[i__4772__auto___44243]));\n\nvar G__44244 \x3d (i__4772__auto___44243 + (1));\ni__4772__auto___44243 \x3d G__44244;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.not_empty.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.not_empty.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44238),args);\n}));\n\n(cljs.spec.gen.alpha.not_empty.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.not_empty.cljs$lang$applyTo \x3d (function (seq43188){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43188));\n}));\n\n\nvar g__13271__auto___44250 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.set !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.set;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22set\x22,\x22clojure.test.check.generators/set\x22,-1027639543,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22set\x22,\x22clojure.test.check.generators/set\x22,-1027639543,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/set\n */\ncljs.spec.gen.alpha.set \x3d (function cljs$spec$gen$alpha$set(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44251 \x3d arguments.length;\nvar i__4772__auto___44252 \x3d (0);\nwhile(true){\nif((i__4772__auto___44252 \x3c len__4771__auto___44251)){\nargs__4777__auto__.push((arguments[i__4772__auto___44252]));\n\nvar G__44253 \x3d (i__4772__auto___44252 + (1));\ni__4772__auto___44252 \x3d G__44253;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.set.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.set.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44250),args);\n}));\n\n(cljs.spec.gen.alpha.set.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.set.cljs$lang$applyTo \x3d (function (seq43190){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43190));\n}));\n\n\nvar g__13271__auto___44256 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.vector !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.vector;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22vector\x22,\x22clojure.test.check.generators/vector\x22,1081775325,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22vector\x22,\x22clojure.test.check.generators/vector\x22,1081775325,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/vector\n */\ncljs.spec.gen.alpha.vector \x3d (function cljs$spec$gen$alpha$vector(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44259 \x3d arguments.length;\nvar i__4772__auto___44260 \x3d (0);\nwhile(true){\nif((i__4772__auto___44260 \x3c len__4771__auto___44259)){\nargs__4777__auto__.push((arguments[i__4772__auto___44260]));\n\nvar G__44262 \x3d (i__4772__auto___44260 + (1));\ni__4772__auto___44260 \x3d G__44262;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44256),args);\n}));\n\n(cljs.spec.gen.alpha.vector.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.vector.cljs$lang$applyTo \x3d (function (seq43196){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43196));\n}));\n\n\nvar g__13271__auto___44263 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.vector_distinct !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.vector_distinct;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22vector-distinct\x22,\x22clojure.test.check.generators/vector-distinct\x22,1656877834,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22vector-distinct\x22,\x22clojure.test.check.generators/vector-distinct\x22,1656877834,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/vector-distinct\n */\ncljs.spec.gen.alpha.vector_distinct \x3d (function cljs$spec$gen$alpha$vector_distinct(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44264 \x3d arguments.length;\nvar i__4772__auto___44265 \x3d (0);\nwhile(true){\nif((i__4772__auto___44265 \x3c len__4771__auto___44264)){\nargs__4777__auto__.push((arguments[i__4772__auto___44265]));\n\nvar G__44266 \x3d (i__4772__auto___44265 + (1));\ni__4772__auto___44265 \x3d G__44266;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.vector_distinct.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.vector_distinct.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44263),args);\n}));\n\n(cljs.spec.gen.alpha.vector_distinct.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.vector_distinct.cljs$lang$applyTo \x3d (function (seq43201){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43201));\n}));\n\n\nvar g__13271__auto___44270 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.fmap !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.fmap;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22fmap\x22,\x22clojure.test.check.generators/fmap\x22,1957997092,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22fmap\x22,\x22clojure.test.check.generators/fmap\x22,1957997092,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/fmap\n */\ncljs.spec.gen.alpha.fmap \x3d (function cljs$spec$gen$alpha$fmap(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44273 \x3d arguments.length;\nvar i__4772__auto___44274 \x3d (0);\nwhile(true){\nif((i__4772__auto___44274 \x3c len__4771__auto___44273)){\nargs__4777__auto__.push((arguments[i__4772__auto___44274]));\n\nvar G__44276 \x3d (i__4772__auto___44274 + (1));\ni__4772__auto___44274 \x3d G__44276;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44270),args);\n}));\n\n(cljs.spec.gen.alpha.fmap.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.fmap.cljs$lang$applyTo \x3d (function (seq43241){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43241));\n}));\n\n\nvar g__13271__auto___44277 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.elements !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.elements;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22elements\x22,\x22clojure.test.check.generators/elements\x22,438991326,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22elements\x22,\x22clojure.test.check.generators/elements\x22,438991326,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/elements\n */\ncljs.spec.gen.alpha.elements \x3d (function cljs$spec$gen$alpha$elements(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44279 \x3d arguments.length;\nvar i__4772__auto___44280 \x3d (0);\nwhile(true){\nif((i__4772__auto___44280 \x3c len__4771__auto___44279)){\nargs__4777__auto__.push((arguments[i__4772__auto___44280]));\n\nvar G__44285 \x3d (i__4772__auto___44280 + (1));\ni__4772__auto___44280 \x3d G__44285;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.elements.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.elements.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44277),args);\n}));\n\n(cljs.spec.gen.alpha.elements.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.elements.cljs$lang$applyTo \x3d (function (seq43256){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43256));\n}));\n\n\nvar g__13271__auto___44297 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.bind !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.bind;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22bind\x22,\x22clojure.test.check.generators/bind\x22,-361313906,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22bind\x22,\x22clojure.test.check.generators/bind\x22,-361313906,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/bind\n */\ncljs.spec.gen.alpha.bind \x3d (function cljs$spec$gen$alpha$bind(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44306 \x3d arguments.length;\nvar i__4772__auto___44307 \x3d (0);\nwhile(true){\nif((i__4772__auto___44307 \x3c len__4771__auto___44306)){\nargs__4777__auto__.push((arguments[i__4772__auto___44307]));\n\nvar G__44309 \x3d (i__4772__auto___44307 + (1));\ni__4772__auto___44307 \x3d G__44309;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44297),args);\n}));\n\n(cljs.spec.gen.alpha.bind.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.bind.cljs$lang$applyTo \x3d (function (seq43260){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43260));\n}));\n\n\nvar g__13271__auto___44310 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.choose !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.choose;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22choose\x22,\x22clojure.test.check.generators/choose\x22,909997832,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22choose\x22,\x22clojure.test.check.generators/choose\x22,909997832,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/choose\n */\ncljs.spec.gen.alpha.choose \x3d (function cljs$spec$gen$alpha$choose(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44312 \x3d arguments.length;\nvar i__4772__auto___44313 \x3d (0);\nwhile(true){\nif((i__4772__auto___44313 \x3c len__4771__auto___44312)){\nargs__4777__auto__.push((arguments[i__4772__auto___44313]));\n\nvar G__44315 \x3d (i__4772__auto___44313 + (1));\ni__4772__auto___44313 \x3d G__44315;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.choose.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.choose.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44310),args);\n}));\n\n(cljs.spec.gen.alpha.choose.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.choose.cljs$lang$applyTo \x3d (function (seq43303){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43303));\n}));\n\n\nvar g__13271__auto___44320 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.one_of !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.one_of;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22one-of\x22,\x22clojure.test.check.generators/one-of\x22,-183339191,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22one-of\x22,\x22clojure.test.check.generators/one-of\x22,-183339191,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/one-of\n */\ncljs.spec.gen.alpha.one_of \x3d (function cljs$spec$gen$alpha$one_of(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44321 \x3d arguments.length;\nvar i__4772__auto___44322 \x3d (0);\nwhile(true){\nif((i__4772__auto___44322 \x3c len__4771__auto___44321)){\nargs__4777__auto__.push((arguments[i__4772__auto___44322]));\n\nvar G__44323 \x3d (i__4772__auto___44322 + (1));\ni__4772__auto___44322 \x3d G__44323;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44320),args);\n}));\n\n(cljs.spec.gen.alpha.one_of.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.one_of.cljs$lang$applyTo \x3d (function (seq43354){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43354));\n}));\n\n\nvar g__13271__auto___44333 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.such_that !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.such_that;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22such-that\x22,\x22clojure.test.check.generators/such-that\x22,-1754178732,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22such-that\x22,\x22clojure.test.check.generators/such-that\x22,-1754178732,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/such-that\n */\ncljs.spec.gen.alpha.such_that \x3d (function cljs$spec$gen$alpha$such_that(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44347 \x3d arguments.length;\nvar i__4772__auto___44349 \x3d (0);\nwhile(true){\nif((i__4772__auto___44349 \x3c len__4771__auto___44347)){\nargs__4777__auto__.push((arguments[i__4772__auto___44349]));\n\nvar G__44352 \x3d (i__4772__auto___44349 + (1));\ni__4772__auto___44349 \x3d G__44352;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44333),args);\n}));\n\n(cljs.spec.gen.alpha.such_that.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.such_that.cljs$lang$applyTo \x3d (function (seq43385){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43385));\n}));\n\n\nvar g__13271__auto___44362 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.tuple !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.tuple;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22tuple\x22,\x22clojure.test.check.generators/tuple\x22,-143711557,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22tuple\x22,\x22clojure.test.check.generators/tuple\x22,-143711557,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/tuple\n */\ncljs.spec.gen.alpha.tuple \x3d (function cljs$spec$gen$alpha$tuple(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44372 \x3d arguments.length;\nvar i__4772__auto___44373 \x3d (0);\nwhile(true){\nif((i__4772__auto___44373 \x3c len__4771__auto___44372)){\nargs__4777__auto__.push((arguments[i__4772__auto___44373]));\n\nvar G__44377 \x3d (i__4772__auto___44373 + (1));\ni__4772__auto___44373 \x3d G__44377;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.tuple.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.tuple.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44362),args);\n}));\n\n(cljs.spec.gen.alpha.tuple.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.tuple.cljs$lang$applyTo \x3d (function (seq43398){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43398));\n}));\n\n\nvar g__13271__auto___44388 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.sample !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.sample;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22sample\x22,\x22clojure.test.check.generators/sample\x22,-382944992,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22sample\x22,\x22clojure.test.check.generators/sample\x22,-382944992,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/sample\n */\ncljs.spec.gen.alpha.sample \x3d (function cljs$spec$gen$alpha$sample(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44397 \x3d arguments.length;\nvar i__4772__auto___44402 \x3d (0);\nwhile(true){\nif((i__4772__auto___44402 \x3c len__4771__auto___44397)){\nargs__4777__auto__.push((arguments[i__4772__auto___44402]));\n\nvar G__44408 \x3d (i__4772__auto___44402 + (1));\ni__4772__auto___44402 \x3d G__44408;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.sample.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.sample.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44388),args);\n}));\n\n(cljs.spec.gen.alpha.sample.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.sample.cljs$lang$applyTo \x3d (function (seq43429){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43429));\n}));\n\n\nvar g__13271__auto___44430 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.return$ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.return$;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22return\x22,\x22clojure.test.check.generators/return\x22,1744522038,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22return\x22,\x22clojure.test.check.generators/return\x22,1744522038,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/return\n */\ncljs.spec.gen.alpha.return$ \x3d (function cljs$spec$gen$alpha$return(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44441 \x3d arguments.length;\nvar i__4772__auto___44443 \x3d (0);\nwhile(true){\nif((i__4772__auto___44443 \x3c len__4771__auto___44441)){\nargs__4777__auto__.push((arguments[i__4772__auto___44443]));\n\nvar G__44444 \x3d (i__4772__auto___44443 + (1));\ni__4772__auto___44443 \x3d G__44444;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44430),args);\n}));\n\n(cljs.spec.gen.alpha.return$.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.return$.cljs$lang$applyTo \x3d (function (seq43447){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43447));\n}));\n\n\nvar g__13271__auto___44454 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.large_integer_STAR_ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.large_integer_STAR_;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22large-integer*\x22,\x22clojure.test.check.generators/large-integer*\x22,-437830670,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22large-integer*\x22,\x22clojure.test.check.generators/large-integer*\x22,-437830670,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/large-integer*\n */\ncljs.spec.gen.alpha.large_integer_STAR_ \x3d (function cljs$spec$gen$alpha$large_integer_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44474 \x3d arguments.length;\nvar i__4772__auto___44475 \x3d (0);\nwhile(true){\nif((i__4772__auto___44475 \x3c len__4771__auto___44474)){\nargs__4777__auto__.push((arguments[i__4772__auto___44475]));\n\nvar G__44485 \x3d (i__4772__auto___44475 + (1));\ni__4772__auto___44475 \x3d G__44485;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.large_integer_STAR_.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.large_integer_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44454),args);\n}));\n\n(cljs.spec.gen.alpha.large_integer_STAR_.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.large_integer_STAR_.cljs$lang$applyTo \x3d (function (seq43483){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43483));\n}));\n\n\nvar g__13271__auto___44489 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.double_STAR_ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.double_STAR_;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22double*\x22,\x22clojure.test.check.generators/double*\x22,841542265,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22double*\x22,\x22clojure.test.check.generators/double*\x22,841542265,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/double*\n */\ncljs.spec.gen.alpha.double_STAR_ \x3d (function cljs$spec$gen$alpha$double_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44492 \x3d arguments.length;\nvar i__4772__auto___44493 \x3d (0);\nwhile(true){\nif((i__4772__auto___44493 \x3c len__4771__auto___44492)){\nargs__4777__auto__.push((arguments[i__4772__auto___44493]));\n\nvar G__44494 \x3d (i__4772__auto___44493 + (1));\ni__4772__auto___44493 \x3d G__44494;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.double_STAR_.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.double_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44489),args);\n}));\n\n(cljs.spec.gen.alpha.double_STAR_.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.double_STAR_.cljs$lang$applyTo \x3d (function (seq43499){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43499));\n}));\n\n\nvar g__13271__auto___44496 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.frequency !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.frequency;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22frequency\x22,\x22clojure.test.check.generators/frequency\x22,2090703177,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22frequency\x22,\x22clojure.test.check.generators/frequency\x22,2090703177,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/frequency\n */\ncljs.spec.gen.alpha.frequency \x3d (function cljs$spec$gen$alpha$frequency(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44503 \x3d arguments.length;\nvar i__4772__auto___44504 \x3d (0);\nwhile(true){\nif((i__4772__auto___44504 \x3c len__4771__auto___44503)){\nargs__4777__auto__.push((arguments[i__4772__auto___44504]));\n\nvar G__44510 \x3d (i__4772__auto___44504 + (1));\ni__4772__auto___44504 \x3d G__44510;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.frequency.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.frequency.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44496),args);\n}));\n\n(cljs.spec.gen.alpha.frequency.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.frequency.cljs$lang$applyTo \x3d (function (seq43513){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43513));\n}));\n\n\nvar g__13271__auto___44518 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.shuffle !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.shuffle;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22shuffle\x22,\x22clojure.test.check.generators/shuffle\x22,1032401055,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22shuffle\x22,\x22clojure.test.check.generators/shuffle\x22,1032401055,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Lazy loaded version of clojure.test.check.generators/shuffle\n */\ncljs.spec.gen.alpha.shuffle \x3d (function cljs$spec$gen$alpha$shuffle(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44519 \x3d arguments.length;\nvar i__4772__auto___44521 \x3d (0);\nwhile(true){\nif((i__4772__auto___44521 \x3c len__4771__auto___44519)){\nargs__4777__auto__.push((arguments[i__4772__auto___44521]));\n\nvar G__44523 \x3d (i__4772__auto___44521 + (1));\ni__4772__auto___44521 \x3d G__44523;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.shuffle.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.shuffle.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(g__13271__auto___44518),args);\n}));\n\n(cljs.spec.gen.alpha.shuffle.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.shuffle.cljs$lang$applyTo \x3d (function (seq43541){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43541));\n}));\n\nvar g__13284__auto___44526 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.any !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.any;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22any\x22,\x22clojure.test.check.generators/any\x22,1883743710,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22any\x22,\x22clojure.test.check.generators/any\x22,1883743710,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/any\n */\ncljs.spec.gen.alpha.any \x3d (function cljs$spec$gen$alpha$any(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44531 \x3d arguments.length;\nvar i__4772__auto___44532 \x3d (0);\nwhile(true){\nif((i__4772__auto___44532 \x3c len__4771__auto___44531)){\nargs__4777__auto__.push((arguments[i__4772__auto___44532]));\n\nvar G__44533 \x3d (i__4772__auto___44532 + (1));\ni__4772__auto___44532 \x3d G__44533;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.any.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.any.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44526);\n}));\n\n(cljs.spec.gen.alpha.any.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.any.cljs$lang$applyTo \x3d (function (seq43564){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43564));\n}));\n\n\nvar g__13284__auto___44540 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.any_printable !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.any_printable;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22any-printable\x22,\x22clojure.test.check.generators/any-printable\x22,-1570493991,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22any-printable\x22,\x22clojure.test.check.generators/any-printable\x22,-1570493991,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/any-printable\n */\ncljs.spec.gen.alpha.any_printable \x3d (function cljs$spec$gen$alpha$any_printable(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44544 \x3d arguments.length;\nvar i__4772__auto___44545 \x3d (0);\nwhile(true){\nif((i__4772__auto___44545 \x3c len__4771__auto___44544)){\nargs__4777__auto__.push((arguments[i__4772__auto___44545]));\n\nvar G__44546 \x3d (i__4772__auto___44545 + (1));\ni__4772__auto___44545 \x3d G__44546;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.any_printable.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.any_printable.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44540);\n}));\n\n(cljs.spec.gen.alpha.any_printable.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.any_printable.cljs$lang$applyTo \x3d (function (seq43593){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43593));\n}));\n\n\nvar g__13284__auto___44548 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.boolean$ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.boolean$;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22boolean\x22,\x22clojure.test.check.generators/boolean\x22,1586992347,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22boolean\x22,\x22clojure.test.check.generators/boolean\x22,1586992347,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/boolean\n */\ncljs.spec.gen.alpha.boolean$ \x3d (function cljs$spec$gen$alpha$boolean(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44556 \x3d arguments.length;\nvar i__4772__auto___44560 \x3d (0);\nwhile(true){\nif((i__4772__auto___44560 \x3c len__4771__auto___44556)){\nargs__4777__auto__.push((arguments[i__4772__auto___44560]));\n\nvar G__44561 \x3d (i__4772__auto___44560 + (1));\ni__4772__auto___44560 \x3d G__44561;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.boolean$.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.boolean$.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44548);\n}));\n\n(cljs.spec.gen.alpha.boolean$.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.boolean$.cljs$lang$applyTo \x3d (function (seq43603){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43603));\n}));\n\n\nvar g__13284__auto___44563 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.char$ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.char$;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char\x22,\x22clojure.test.check.generators/char\x22,-1426343459,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char\x22,\x22clojure.test.check.generators/char\x22,-1426343459,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/char\n */\ncljs.spec.gen.alpha.char$ \x3d (function cljs$spec$gen$alpha$char(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44566 \x3d arguments.length;\nvar i__4772__auto___44567 \x3d (0);\nwhile(true){\nif((i__4772__auto___44567 \x3c len__4771__auto___44566)){\nargs__4777__auto__.push((arguments[i__4772__auto___44567]));\n\nvar G__44568 \x3d (i__4772__auto___44567 + (1));\ni__4772__auto___44567 \x3d G__44568;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.char$.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.char$.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44563);\n}));\n\n(cljs.spec.gen.alpha.char$.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.char$.cljs$lang$applyTo \x3d (function (seq43615){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43615));\n}));\n\n\nvar g__13284__auto___44573 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.char_alpha !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.char_alpha;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char-alpha\x22,\x22clojure.test.check.generators/char-alpha\x22,615785796,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char-alpha\x22,\x22clojure.test.check.generators/char-alpha\x22,615785796,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/char-alpha\n */\ncljs.spec.gen.alpha.char_alpha \x3d (function cljs$spec$gen$alpha$char_alpha(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44576 \x3d arguments.length;\nvar i__4772__auto___44577 \x3d (0);\nwhile(true){\nif((i__4772__auto___44577 \x3c len__4771__auto___44576)){\nargs__4777__auto__.push((arguments[i__4772__auto___44577]));\n\nvar G__44578 \x3d (i__4772__auto___44577 + (1));\ni__4772__auto___44577 \x3d G__44578;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.char_alpha.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.char_alpha.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44573);\n}));\n\n(cljs.spec.gen.alpha.char_alpha.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.char_alpha.cljs$lang$applyTo \x3d (function (seq43649){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43649));\n}));\n\n\nvar g__13284__auto___44579 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.char_alphanumeric !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.char_alphanumeric;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char-alphanumeric\x22,\x22clojure.test.check.generators/char-alphanumeric\x22,1383091431,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char-alphanumeric\x22,\x22clojure.test.check.generators/char-alphanumeric\x22,1383091431,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/char-alphanumeric\n */\ncljs.spec.gen.alpha.char_alphanumeric \x3d (function cljs$spec$gen$alpha$char_alphanumeric(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44583 \x3d arguments.length;\nvar i__4772__auto___44584 \x3d (0);\nwhile(true){\nif((i__4772__auto___44584 \x3c len__4771__auto___44583)){\nargs__4777__auto__.push((arguments[i__4772__auto___44584]));\n\nvar G__44586 \x3d (i__4772__auto___44584 + (1));\ni__4772__auto___44584 \x3d G__44586;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.char_alphanumeric.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.char_alphanumeric.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44579);\n}));\n\n(cljs.spec.gen.alpha.char_alphanumeric.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.char_alphanumeric.cljs$lang$applyTo \x3d (function (seq43667){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43667));\n}));\n\n\nvar g__13284__auto___44588 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.char_ascii !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.char_ascii;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char-ascii\x22,\x22clojure.test.check.generators/char-ascii\x22,-899908538,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22char-ascii\x22,\x22clojure.test.check.generators/char-ascii\x22,-899908538,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/char-ascii\n */\ncljs.spec.gen.alpha.char_ascii \x3d (function cljs$spec$gen$alpha$char_ascii(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44589 \x3d arguments.length;\nvar i__4772__auto___44594 \x3d (0);\nwhile(true){\nif((i__4772__auto___44594 \x3c len__4771__auto___44589)){\nargs__4777__auto__.push((arguments[i__4772__auto___44594]));\n\nvar G__44597 \x3d (i__4772__auto___44594 + (1));\ni__4772__auto___44594 \x3d G__44597;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.char_ascii.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.char_ascii.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44588);\n}));\n\n(cljs.spec.gen.alpha.char_ascii.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.char_ascii.cljs$lang$applyTo \x3d (function (seq43683){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43683));\n}));\n\n\nvar g__13284__auto___44603 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.double$ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.double$;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22double\x22,\x22clojure.test.check.generators/double\x22,668331090,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22double\x22,\x22clojure.test.check.generators/double\x22,668331090,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/double\n */\ncljs.spec.gen.alpha.double$ \x3d (function cljs$spec$gen$alpha$double(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44606 \x3d arguments.length;\nvar i__4772__auto___44607 \x3d (0);\nwhile(true){\nif((i__4772__auto___44607 \x3c len__4771__auto___44606)){\nargs__4777__auto__.push((arguments[i__4772__auto___44607]));\n\nvar G__44609 \x3d (i__4772__auto___44607 + (1));\ni__4772__auto___44607 \x3d G__44609;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.double$.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.double$.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44603);\n}));\n\n(cljs.spec.gen.alpha.double$.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.double$.cljs$lang$applyTo \x3d (function (seq43697){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43697));\n}));\n\n\nvar g__13284__auto___44615 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.int$ !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.int$;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22int\x22,\x22clojure.test.check.generators/int\x22,1756228469,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22int\x22,\x22clojure.test.check.generators/int\x22,1756228469,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/int\n */\ncljs.spec.gen.alpha.int$ \x3d (function cljs$spec$gen$alpha$int(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44622 \x3d arguments.length;\nvar i__4772__auto___44623 \x3d (0);\nwhile(true){\nif((i__4772__auto___44623 \x3c len__4771__auto___44622)){\nargs__4777__auto__.push((arguments[i__4772__auto___44623]));\n\nvar G__44628 \x3d (i__4772__auto___44623 + (1));\ni__4772__auto___44623 \x3d G__44628;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.int$.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.int$.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44615);\n}));\n\n(cljs.spec.gen.alpha.int$.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.int$.cljs$lang$applyTo \x3d (function (seq43740){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43740));\n}));\n\n\nvar g__13284__auto___44633 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.keyword !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.keyword;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22keyword\x22,\x22clojure.test.check.generators/keyword\x22,24530530,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22keyword\x22,\x22clojure.test.check.generators/keyword\x22,24530530,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/keyword\n */\ncljs.spec.gen.alpha.keyword \x3d (function cljs$spec$gen$alpha$keyword(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44636 \x3d arguments.length;\nvar i__4772__auto___44637 \x3d (0);\nwhile(true){\nif((i__4772__auto___44637 \x3c len__4771__auto___44636)){\nargs__4777__auto__.push((arguments[i__4772__auto___44637]));\n\nvar G__44641 \x3d (i__4772__auto___44637 + (1));\ni__4772__auto___44637 \x3d G__44641;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.keyword.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.keyword.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44633);\n}));\n\n(cljs.spec.gen.alpha.keyword.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.keyword.cljs$lang$applyTo \x3d (function (seq43756){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43756));\n}));\n\n\nvar g__13284__auto___44646 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.keyword_ns !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.keyword_ns;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22keyword-ns\x22,\x22clojure.test.check.generators/keyword-ns\x22,-1492628482,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22keyword-ns\x22,\x22clojure.test.check.generators/keyword-ns\x22,-1492628482,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/keyword-ns\n */\ncljs.spec.gen.alpha.keyword_ns \x3d (function cljs$spec$gen$alpha$keyword_ns(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44653 \x3d arguments.length;\nvar i__4772__auto___44654 \x3d (0);\nwhile(true){\nif((i__4772__auto___44654 \x3c len__4771__auto___44653)){\nargs__4777__auto__.push((arguments[i__4772__auto___44654]));\n\nvar G__44655 \x3d (i__4772__auto___44654 + (1));\ni__4772__auto___44654 \x3d G__44655;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.keyword_ns.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.keyword_ns.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44646);\n}));\n\n(cljs.spec.gen.alpha.keyword_ns.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.keyword_ns.cljs$lang$applyTo \x3d (function (seq43774){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43774));\n}));\n\n\nvar g__13284__auto___44663 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.large_integer !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.large_integer;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22large-integer\x22,\x22clojure.test.check.generators/large-integer\x22,-865967138,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22large-integer\x22,\x22clojure.test.check.generators/large-integer\x22,-865967138,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/large-integer\n */\ncljs.spec.gen.alpha.large_integer \x3d (function cljs$spec$gen$alpha$large_integer(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44667 \x3d arguments.length;\nvar i__4772__auto___44669 \x3d (0);\nwhile(true){\nif((i__4772__auto___44669 \x3c len__4771__auto___44667)){\nargs__4777__auto__.push((arguments[i__4772__auto___44669]));\n\nvar G__44670 \x3d (i__4772__auto___44669 + (1));\ni__4772__auto___44669 \x3d G__44670;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.large_integer.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.large_integer.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44663);\n}));\n\n(cljs.spec.gen.alpha.large_integer.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.large_integer.cljs$lang$applyTo \x3d (function (seq43795){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43795));\n}));\n\n\nvar g__13284__auto___44673 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.ratio !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.ratio;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22ratio\x22,\x22clojure.test.check.generators/ratio\x22,1540966915,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22ratio\x22,\x22clojure.test.check.generators/ratio\x22,1540966915,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/ratio\n */\ncljs.spec.gen.alpha.ratio \x3d (function cljs$spec$gen$alpha$ratio(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44676 \x3d arguments.length;\nvar i__4772__auto___44677 \x3d (0);\nwhile(true){\nif((i__4772__auto___44677 \x3c len__4771__auto___44676)){\nargs__4777__auto__.push((arguments[i__4772__auto___44677]));\n\nvar G__44679 \x3d (i__4772__auto___44677 + (1));\ni__4772__auto___44677 \x3d G__44679;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.ratio.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.ratio.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44673);\n}));\n\n(cljs.spec.gen.alpha.ratio.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.ratio.cljs$lang$applyTo \x3d (function (seq43809){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43809));\n}));\n\n\nvar g__13284__auto___44686 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.simple_type !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.simple_type;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22simple-type\x22,\x22clojure.test.check.generators/simple-type\x22,892572284,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22simple-type\x22,\x22clojure.test.check.generators/simple-type\x22,892572284,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/simple-type\n */\ncljs.spec.gen.alpha.simple_type \x3d (function cljs$spec$gen$alpha$simple_type(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44693 \x3d arguments.length;\nvar i__4772__auto___44694 \x3d (0);\nwhile(true){\nif((i__4772__auto___44694 \x3c len__4771__auto___44693)){\nargs__4777__auto__.push((arguments[i__4772__auto___44694]));\n\nvar G__44696 \x3d (i__4772__auto___44694 + (1));\ni__4772__auto___44694 \x3d G__44696;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.simple_type.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.simple_type.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44686);\n}));\n\n(cljs.spec.gen.alpha.simple_type.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.simple_type.cljs$lang$applyTo \x3d (function (seq43817){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43817));\n}));\n\n\nvar g__13284__auto___44700 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.simple_type_printable !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.simple_type_printable;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22simple-type-printable\x22,\x22clojure.test.check.generators/simple-type-printable\x22,-58489962,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22simple-type-printable\x22,\x22clojure.test.check.generators/simple-type-printable\x22,-58489962,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/simple-type-printable\n */\ncljs.spec.gen.alpha.simple_type_printable \x3d (function cljs$spec$gen$alpha$simple_type_printable(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44710 \x3d arguments.length;\nvar i__4772__auto___44712 \x3d (0);\nwhile(true){\nif((i__4772__auto___44712 \x3c len__4771__auto___44710)){\nargs__4777__auto__.push((arguments[i__4772__auto___44712]));\n\nvar G__44713 \x3d (i__4772__auto___44712 + (1));\ni__4772__auto___44712 \x3d G__44713;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.simple_type_printable.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.simple_type_printable.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44700);\n}));\n\n(cljs.spec.gen.alpha.simple_type_printable.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.simple_type_printable.cljs$lang$applyTo \x3d (function (seq43824){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43824));\n}));\n\n\nvar g__13284__auto___44719 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.string !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.string;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22string\x22,\x22clojure.test.check.generators/string\x22,-1704750979,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22string\x22,\x22clojure.test.check.generators/string\x22,-1704750979,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/string\n */\ncljs.spec.gen.alpha.string \x3d (function cljs$spec$gen$alpha$string(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44728 \x3d arguments.length;\nvar i__4772__auto___44729 \x3d (0);\nwhile(true){\nif((i__4772__auto___44729 \x3c len__4771__auto___44728)){\nargs__4777__auto__.push((arguments[i__4772__auto___44729]));\n\nvar G__44732 \x3d (i__4772__auto___44729 + (1));\ni__4772__auto___44729 \x3d G__44732;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.string.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.string.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44719);\n}));\n\n(cljs.spec.gen.alpha.string.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.string.cljs$lang$applyTo \x3d (function (seq43851){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43851));\n}));\n\n\nvar g__13284__auto___44734 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.string_ascii !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.string_ascii;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22string-ascii\x22,\x22clojure.test.check.generators/string-ascii\x22,-2009877640,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22string-ascii\x22,\x22clojure.test.check.generators/string-ascii\x22,-2009877640,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/string-ascii\n */\ncljs.spec.gen.alpha.string_ascii \x3d (function cljs$spec$gen$alpha$string_ascii(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44737 \x3d arguments.length;\nvar i__4772__auto___44738 \x3d (0);\nwhile(true){\nif((i__4772__auto___44738 \x3c len__4771__auto___44737)){\nargs__4777__auto__.push((arguments[i__4772__auto___44738]));\n\nvar G__44740 \x3d (i__4772__auto___44738 + (1));\ni__4772__auto___44738 \x3d G__44740;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.string_ascii.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.string_ascii.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44734);\n}));\n\n(cljs.spec.gen.alpha.string_ascii.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.string_ascii.cljs$lang$applyTo \x3d (function (seq43872){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43872));\n}));\n\n\nvar g__13284__auto___44745 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.string_alphanumeric !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.string_alphanumeric;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22string-alphanumeric\x22,\x22clojure.test.check.generators/string-alphanumeric\x22,836374939,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22string-alphanumeric\x22,\x22clojure.test.check.generators/string-alphanumeric\x22,836374939,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/string-alphanumeric\n */\ncljs.spec.gen.alpha.string_alphanumeric \x3d (function cljs$spec$gen$alpha$string_alphanumeric(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44753 \x3d arguments.length;\nvar i__4772__auto___44755 \x3d (0);\nwhile(true){\nif((i__4772__auto___44755 \x3c len__4771__auto___44753)){\nargs__4777__auto__.push((arguments[i__4772__auto___44755]));\n\nvar G__44757 \x3d (i__4772__auto___44755 + (1));\ni__4772__auto___44755 \x3d G__44757;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.string_alphanumeric.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.string_alphanumeric.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44745);\n}));\n\n(cljs.spec.gen.alpha.string_alphanumeric.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.string_alphanumeric.cljs$lang$applyTo \x3d (function (seq43900){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43900));\n}));\n\n\nvar g__13284__auto___44761 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.symbol !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.symbol;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22symbol\x22,\x22clojure.test.check.generators/symbol\x22,-1305461065,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22symbol\x22,\x22clojure.test.check.generators/symbol\x22,-1305461065,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/symbol\n */\ncljs.spec.gen.alpha.symbol \x3d (function cljs$spec$gen$alpha$symbol(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44767 \x3d arguments.length;\nvar i__4772__auto___44769 \x3d (0);\nwhile(true){\nif((i__4772__auto___44769 \x3c len__4771__auto___44767)){\nargs__4777__auto__.push((arguments[i__4772__auto___44769]));\n\nvar G__44770 \x3d (i__4772__auto___44769 + (1));\ni__4772__auto___44769 \x3d G__44770;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.symbol.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.symbol.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44761);\n}));\n\n(cljs.spec.gen.alpha.symbol.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.symbol.cljs$lang$applyTo \x3d (function (seq43910){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43910));\n}));\n\n\nvar g__13284__auto___44776 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.symbol_ns !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.symbol_ns;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22symbol-ns\x22,\x22clojure.test.check.generators/symbol-ns\x22,-862629490,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22symbol-ns\x22,\x22clojure.test.check.generators/symbol-ns\x22,-862629490,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/symbol-ns\n */\ncljs.spec.gen.alpha.symbol_ns \x3d (function cljs$spec$gen$alpha$symbol_ns(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44783 \x3d arguments.length;\nvar i__4772__auto___44784 \x3d (0);\nwhile(true){\nif((i__4772__auto___44784 \x3c len__4771__auto___44783)){\nargs__4777__auto__.push((arguments[i__4772__auto___44784]));\n\nvar G__44785 \x3d (i__4772__auto___44784 + (1));\ni__4772__auto___44784 \x3d G__44785;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.symbol_ns.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.symbol_ns.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44776);\n}));\n\n(cljs.spec.gen.alpha.symbol_ns.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.symbol_ns.cljs$lang$applyTo \x3d (function (seq43929){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43929));\n}));\n\n\nvar g__13284__auto___44791 \x3d (new cljs.spec.gen.alpha.LazyVar((function (){\nif((typeof clojure !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof clojure.test.check.generators.uuid !\x3d\x3d \x27undefined\x27)){\nreturn clojure.test.check.generators.uuid;\n} else {\nthrow (new Error([\x22Var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22uuid\x22,\x22clojure.test.check.generators/uuid\x22,1589373144,null)),\x22 does not exist, \x22,cljs.core.namespace(new cljs.core.Symbol(\x22clojure.test.check.generators\x22,\x22uuid\x22,\x22clojure.test.check.generators/uuid\x22,1589373144,null)),\x22 never required\x22].join(\x27\x27)));\n}\n}),null));\n/**\n * Fn returning clojure.test.check.generators/uuid\n */\ncljs.spec.gen.alpha.uuid \x3d (function cljs$spec$gen$alpha$uuid(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44795 \x3d arguments.length;\nvar i__4772__auto___44797 \x3d (0);\nwhile(true){\nif((i__4772__auto___44797 \x3c len__4771__auto___44795)){\nargs__4777__auto__.push((arguments[i__4772__auto___44797]));\n\nvar G__44799 \x3d (i__4772__auto___44797 + (1));\ni__4772__auto___44797 \x3d G__44799;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.uuid.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.uuid.cljs$core$IFn$_invoke$arity$variadic \x3d (function (args){\nreturn cljs.core.deref(g__13284__auto___44791);\n}));\n\n(cljs.spec.gen.alpha.uuid.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.uuid.cljs$lang$applyTo \x3d (function (seq43981){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43981));\n}));\n\n/**\n * Returns a generator of a sequence catenated from results of\n * gens, each of which should generate something sequential.\n */\ncljs.spec.gen.alpha.cat \x3d (function cljs$spec$gen$alpha$cat(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___44801 \x3d arguments.length;\nvar i__4772__auto___44802 \x3d (0);\nwhile(true){\nif((i__4772__auto___44802 \x3c len__4771__auto___44801)){\nargs__4777__auto__.push((arguments[i__4772__auto___44802]));\n\nvar G__44804 \x3d (i__4772__auto___44802 + (1));\ni__4772__auto___44802 \x3d G__44804;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.gen.alpha.cat.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.gen.alpha.cat.cljs$core$IFn$_invoke$arity$variadic \x3d (function (gens){\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__43992_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,p1__43992_SHARP_);\n}),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,gens)], 0));\n}));\n\n(cljs.spec.gen.alpha.cat.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.gen.alpha.cat.cljs$lang$applyTo \x3d (function (seq43995){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq43995));\n}));\n\ncljs.spec.gen.alpha.qualified_QMARK_ \x3d (function cljs$spec$gen$alpha$qualified_QMARK_(ident){\nreturn (!((cljs.core.namespace(ident) \x3d\x3d null)));\n});\ncljs.spec.gen.alpha.gen_builtins \x3d (new cljs.core.Delay((function (){\nvar simple \x3d cljs.spec.gen.alpha.simple_type_printable();\nreturn cljs.core.PersistentHashMap.fromArrays([cljs.core.qualified_keyword_QMARK_,cljs.core.seq_QMARK_,cljs.core.vector_QMARK_,cljs.core.any_QMARK_,cljs.core.boolean_QMARK_,cljs.core.char_QMARK_,cljs.core.some_QMARK_,cljs.core.inst_QMARK_,cljs.core.simple_symbol_QMARK_,cljs.core.sequential_QMARK_,cljs.core.float_QMARK_,cljs.core.set_QMARK_,cljs.core.map_QMARK_,cljs.core.empty_QMARK_,cljs.core.string_QMARK_,cljs.core.uri_QMARK_,cljs.core.double_QMARK_,cljs.core.int_QMARK_,cljs.core.associative_QMARK_,cljs.core.keyword_QMARK_,cljs.core.indexed_QMARK_,cljs.core.zero_QMARK_,cljs.core.simple_keyword_QMARK_,cljs.core.neg_int_QMARK_,cljs.core.nil_QMARK_,cljs.core.ident_QMARK_,cljs.core.qualified_ident_QMARK_,cljs.core.true_QMARK_,cljs.core.integer_QMARK_,cljs.core.nat_int_QMARK_,cljs.core.pos_int_QMARK_,cljs.core.uuid_QMARK_,cljs.core.false_QMARK_,cljs.core.list_QMARK_,cljs.core.simple_ident_QMARK_,cljs.core.number_QMARK_,cljs.core.qualified_symbol_QMARK_,cljs.core.seqable_QMARK_,cljs.core.symbol_QMARK_,cljs.core.coll_QMARK_],[cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.qualified_QMARK_,cljs.spec.gen.alpha.keyword_ns()], 0)),cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0)),cljs.spec.gen.alpha.any_printable()], null)], 0)),cljs.spec.gen.alpha.boolean$(),cljs.spec.gen.alpha.char$(),cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.some_QMARK_,cljs.spec.gen.alpha.any_printable()], 0)),cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__44024_SHARP_){\nreturn (new Date(p1__44024_SHARP_));\n}),cljs.spec.gen.alpha.large_integer()], 0)),cljs.spec.gen.alpha.symbol(),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0))], null)], 0)),cljs.spec.gen.alpha.double$(),cljs.spec.gen.alpha.set.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.map.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple,simple], 0)),cljs.spec.gen.alpha.elements.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,cljs.core.List.EMPTY,cljs.core.PersistentVector.EMPTY,cljs.core.PersistentArrayMap.EMPTY,cljs.core.PersistentHashSet.EMPTY], null)], 0)),cljs.spec.gen.alpha.string_alphanumeric(),cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__44022_SHARP_){\nreturn (new goog.Uri([\x22http://\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__44022_SHARP_),\x22.com\x22].join(\x27\x27)));\n}),cljs.spec.gen.alpha.uuid()], 0)),cljs.spec.gen.alpha.double$(),cljs.spec.gen.alpha.large_integer(),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.map.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple,simple], 0)),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0))], null)], 0)),cljs.spec.gen.alpha.keyword_ns(),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(0)], 0)),cljs.spec.gen.alpha.keyword(),cljs.spec.gen.alpha.large_integer_STAR_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22max\x22,\x22max\x22,61366548),(-1)], null)], 0)),cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0)),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.keyword_ns(),cljs.spec.gen.alpha.symbol_ns()], null)], 0)),cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.qualified_QMARK_,cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.keyword_ns(),cljs.spec.gen.alpha.symbol_ns()], null)], 0))], 0)),cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([true], 0)),cljs.spec.gen.alpha.large_integer(),cljs.spec.gen.alpha.large_integer_STAR_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22min\x22,\x22min\x22,444991522),(0)], null)], 0)),cljs.spec.gen.alpha.large_integer_STAR_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22min\x22,\x22min\x22,444991522),(1)], null)], 0)),cljs.spec.gen.alpha.uuid(),cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([false], 0)),cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.keyword(),cljs.spec.gen.alpha.symbol()], null)], 0)),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.large_integer(),cljs.spec.gen.alpha.double$()], null)], 0)),cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.qualified_QMARK_,cljs.spec.gen.alpha.symbol_ns()], 0)),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0)),cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.map.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple,simple], 0)),cljs.spec.gen.alpha.set.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.string_alphanumeric()], null)], 0)),cljs.spec.gen.alpha.symbol_ns(),cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.gen.alpha.map.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple,simple], 0)),cljs.spec.gen.alpha.list.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0)),cljs.spec.gen.alpha.set.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([simple], 0))], null)], 0))]);\n}),null));\n/**\n * Given a predicate, returns a built-in generator if one exists.\n */\ncljs.spec.gen.alpha.gen_for_pred \x3d (function cljs$spec$gen$alpha$gen_for_pred(pred){\nif(cljs.core.set_QMARK_(pred)){\nreturn cljs.spec.gen.alpha.elements.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pred], 0));\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.spec.gen.alpha.gen_builtins),pred);\n}\n});\n");
SHADOW_ENV.evalLoad("cljs.spec.alpha.js", true , "goog.provide(\x27cljs.spec.alpha\x27);\ncljs.spec.alpha.MAX_INT \x3d (9007199254740991);\n/**\n * A soft limit on how many times a branching spec (or/alt/* /opt-keys/multi-spec)\n *   can be recursed through during generation. After this a\n *   non-recursive branch will be chosen.\n */\ncljs.spec.alpha._STAR_recursion_limit_STAR_ \x3d (4);\n/**\n * The number of times an anonymous fn specified by fspec will be (generatively) tested during conform\n */\ncljs.spec.alpha._STAR_fspec_iterations_STAR_ \x3d (21);\n/**\n * The number of items validated in a collection spec\x27ed with \x27every\x27\n */\ncljs.spec.alpha._STAR_coll_check_limit_STAR_ \x3d (101);\n/**\n * The number of errors reported by explain in a collection spec\x27ed with \x27every\x27\n */\ncljs.spec.alpha._STAR_coll_error_limit_STAR_ \x3d (20);\n\n/**\n * @interface\n */\ncljs.spec.alpha.Spec \x3d function(){};\n\nvar cljs$spec$alpha$Spec$conform_STAR_$dyn_46873 \x3d (function (spec,x){\nvar x__4463__auto__ \x3d (((spec \x3d\x3d null))?null:spec);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.conform_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(spec,x) : m__4464__auto__.call(null,spec,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.conform_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(spec,x) : m__4461__auto__.call(null,spec,x));\n} else {\nthrow cljs.core.missing_protocol(\x22Spec.conform*\x22,spec);\n}\n}\n});\ncljs.spec.alpha.conform_STAR_ \x3d (function cljs$spec$alpha$conform_STAR_(spec,x){\nif((((!((spec \x3d\x3d null)))) \x26\x26 ((!((spec.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d\x3d null)))))){\nreturn spec.cljs$spec$alpha$Spec$conform_STAR_$arity$2(spec,x);\n} else {\nreturn cljs$spec$alpha$Spec$conform_STAR_$dyn_46873(spec,x);\n}\n});\n\nvar cljs$spec$alpha$Spec$unform_STAR_$dyn_46887 \x3d (function (spec,y){\nvar x__4463__auto__ \x3d (((spec \x3d\x3d null))?null:spec);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.unform_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(spec,y) : m__4464__auto__.call(null,spec,y));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.unform_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(spec,y) : m__4461__auto__.call(null,spec,y));\n} else {\nthrow cljs.core.missing_protocol(\x22Spec.unform*\x22,spec);\n}\n}\n});\ncljs.spec.alpha.unform_STAR_ \x3d (function cljs$spec$alpha$unform_STAR_(spec,y){\nif((((!((spec \x3d\x3d null)))) \x26\x26 ((!((spec.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d\x3d null)))))){\nreturn spec.cljs$spec$alpha$Spec$unform_STAR_$arity$2(spec,y);\n} else {\nreturn cljs$spec$alpha$Spec$unform_STAR_$dyn_46887(spec,y);\n}\n});\n\nvar cljs$spec$alpha$Spec$explain_STAR_$dyn_46890 \x3d (function (spec,path,via,in$,x){\nvar x__4463__auto__ \x3d (((spec \x3d\x3d null))?null:spec);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.explain_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$5(spec,path,via,in$,x) : m__4464__auto__.call(null,spec,path,via,in$,x));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.explain_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$5(spec,path,via,in$,x) : m__4461__auto__.call(null,spec,path,via,in$,x));\n} else {\nthrow cljs.core.missing_protocol(\x22Spec.explain*\x22,spec);\n}\n}\n});\ncljs.spec.alpha.explain_STAR_ \x3d (function cljs$spec$alpha$explain_STAR_(spec,path,via,in$,x){\nif((((!((spec \x3d\x3d null)))) \x26\x26 ((!((spec.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d\x3d null)))))){\nreturn spec.cljs$spec$alpha$Spec$explain_STAR_$arity$5(spec,path,via,in$,x);\n} else {\nreturn cljs$spec$alpha$Spec$explain_STAR_$dyn_46890(spec,path,via,in$,x);\n}\n});\n\nvar cljs$spec$alpha$Spec$gen_STAR_$dyn_46901 \x3d (function (spec,overrides,path,rmap){\nvar x__4463__auto__ \x3d (((spec \x3d\x3d null))?null:spec);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.gen_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$4(spec,overrides,path,rmap) : m__4464__auto__.call(null,spec,overrides,path,rmap));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.gen_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$4(spec,overrides,path,rmap) : m__4461__auto__.call(null,spec,overrides,path,rmap));\n} else {\nthrow cljs.core.missing_protocol(\x22Spec.gen*\x22,spec);\n}\n}\n});\ncljs.spec.alpha.gen_STAR_ \x3d (function cljs$spec$alpha$gen_STAR_(spec,overrides,path,rmap){\nif((((!((spec \x3d\x3d null)))) \x26\x26 ((!((spec.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d\x3d null)))))){\nreturn spec.cljs$spec$alpha$Spec$gen_STAR_$arity$4(spec,overrides,path,rmap);\n} else {\nreturn cljs$spec$alpha$Spec$gen_STAR_$dyn_46901(spec,overrides,path,rmap);\n}\n});\n\nvar cljs$spec$alpha$Spec$with_gen_STAR_$dyn_46914 \x3d (function (spec,gfn){\nvar x__4463__auto__ \x3d (((spec \x3d\x3d null))?null:spec);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.with_gen_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(spec,gfn) : m__4464__auto__.call(null,spec,gfn));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.with_gen_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(spec,gfn) : m__4461__auto__.call(null,spec,gfn));\n} else {\nthrow cljs.core.missing_protocol(\x22Spec.with-gen*\x22,spec);\n}\n}\n});\ncljs.spec.alpha.with_gen_STAR_ \x3d (function cljs$spec$alpha$with_gen_STAR_(spec,gfn){\nif((((!((spec \x3d\x3d null)))) \x26\x26 ((!((spec.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d\x3d null)))))){\nreturn spec.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2(spec,gfn);\n} else {\nreturn cljs$spec$alpha$Spec$with_gen_STAR_$dyn_46914(spec,gfn);\n}\n});\n\nvar cljs$spec$alpha$Spec$describe_STAR_$dyn_46920 \x3d (function (spec){\nvar x__4463__auto__ \x3d (((spec \x3d\x3d null))?null:spec);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.describe_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(spec) : m__4464__auto__.call(null,spec));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.describe_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(spec) : m__4461__auto__.call(null,spec));\n} else {\nthrow cljs.core.missing_protocol(\x22Spec.describe*\x22,spec);\n}\n}\n});\ncljs.spec.alpha.describe_STAR_ \x3d (function cljs$spec$alpha$describe_STAR_(spec){\nif((((!((spec \x3d\x3d null)))) \x26\x26 ((!((spec.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d\x3d null)))))){\nreturn spec.cljs$spec$alpha$Spec$describe_STAR_$arity$1(spec);\n} else {\nreturn cljs$spec$alpha$Spec$describe_STAR_$dyn_46920(spec);\n}\n});\n\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.registry_ref !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.spec.alpha.registry_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\n}\ncljs.spec.alpha.deep_resolve \x3d (function cljs$spec$alpha$deep_resolve(reg,k){\nvar spec \x3d k;\nwhile(true){\nif(cljs.core.ident_QMARK_(spec)){\nvar G__46935 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,spec);\nspec \x3d G__46935;\ncontinue;\n} else {\nreturn spec;\n}\nbreak;\n}\n});\n/**\n * returns the spec/regex at end of alias chain starting with k, nil if not found, k if k not ident\n */\ncljs.spec.alpha.reg_resolve \x3d (function cljs$spec$alpha$reg_resolve(k){\nif(cljs.core.ident_QMARK_(k)){\nvar reg \x3d cljs.core.deref(cljs.spec.alpha.registry_ref);\nvar spec \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,k);\nif((!(cljs.core.ident_QMARK_(spec)))){\nreturn spec;\n} else {\nreturn cljs.spec.alpha.deep_resolve(reg,spec);\n}\n} else {\nreturn k;\n}\n});\n/**\n * returns the spec/regex at end of alias chain starting with k, throws if not found, k if k not ident\n */\ncljs.spec.alpha.reg_resolve_BANG_ \x3d (function cljs$spec$alpha$reg_resolve_BANG_(k){\nif(cljs.core.ident_QMARK_(k)){\nvar or__4160__auto__ \x3d cljs.spec.alpha.reg_resolve(k);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nthrow (new Error([\x22Unable to resolve spec: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(k)].join(\x27\x27)));\n}\n} else {\nreturn k;\n}\n});\n/**\n * returns x if x is a spec object, else logical false\n */\ncljs.spec.alpha.spec_QMARK_ \x3d (function cljs$spec$alpha$spec_QMARK_(x){\nif((((!((x \x3d\x3d null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d x.cljs$spec$alpha$Spec$))))?true:false):false)){\nreturn x;\n} else {\nreturn null;\n}\n});\n/**\n * returns x if x is a (cljs.spec.alpha) regex op, else logical false\n */\ncljs.spec.alpha.regex_QMARK_ \x3d (function cljs$spec$alpha$regex_QMARK_(x){\nvar and__4149__auto__ \x3d new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252).cljs$core$IFn$_invoke$arity$1(x);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn x;\n} else {\nreturn and__4149__auto__;\n}\n});\ncljs.spec.alpha.with_name \x3d (function cljs$spec$alpha$with_name(spec,name){\nif(cljs.core.ident_QMARK_(spec)){\nreturn spec;\n} else {\nif(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22name\x22,\x22cljs.spec.alpha/name\x22,205233570),name);\n} else {\nif((((!((spec \x3d\x3d null))))?(((((spec.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d spec.cljs$core$IMeta$))))?true:false):false)){\nreturn cljs.core.with_meta(spec,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.meta(spec),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22name\x22,\x22cljs.spec.alpha/name\x22,205233570),name));\n} else {\nreturn null;\n}\n}\n}\n});\ncljs.spec.alpha.spec_name \x3d (function cljs$spec$alpha$spec_name(spec){\nif(cljs.core.ident_QMARK_(spec)){\nreturn spec;\n} else {\nif(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec))){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22name\x22,\x22cljs.spec.alpha/name\x22,205233570).cljs$core$IFn$_invoke$arity$1(spec);\n} else {\nif((((!((spec \x3d\x3d null))))?(((((spec.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d spec.cljs$core$IMeta$))))?true:false):false)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22name\x22,\x22cljs.spec.alpha/name\x22,205233570).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(spec));\n} else {\nreturn null;\n}\n}\n}\n});\n/**\n * spec-or-k must be a spec, regex or resolvable kw/sym, else returns nil.\n */\ncljs.spec.alpha.maybe_spec \x3d (function cljs$spec$alpha$maybe_spec(spec_or_k){\nvar s \x3d (function (){var or__4160__auto__ \x3d ((cljs.core.ident_QMARK_(spec_or_k))?cljs.spec.alpha.reg_resolve(spec_or_k):false);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.spec.alpha.spec_QMARK_(spec_or_k);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d cljs.spec.alpha.regex_QMARK_(spec_or_k);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nreturn null;\n}\n}\n}\n})();\nif(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(s))){\nreturn cljs.spec.alpha.with_name(cljs.spec.alpha.regex_spec_impl(s,null),cljs.spec.alpha.spec_name(s));\n} else {\nreturn s;\n}\n});\n/**\n * spec-or-k must be a spec, regex or kw/sym, else returns nil. Throws if unresolvable kw/sym\n */\ncljs.spec.alpha.the_spec \x3d (function cljs$spec$alpha$the_spec(spec_or_k){\nvar or__4160__auto__ \x3d cljs.spec.alpha.maybe_spec(spec_or_k);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nif(cljs.core.ident_QMARK_(spec_or_k)){\nthrow (new Error([\x22Unable to resolve spec: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(spec_or_k)].join(\x27\x27)));\n} else {\nreturn null;\n}\n}\n});\ncljs.spec.alpha.fn_sym \x3d (function cljs$spec$alpha$fn_sym(f_n){\nif(clojure.string.blank_QMARK_(f_n)){\nreturn null;\n} else {\nvar xs \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.demunge,clojure.string.split.cljs$core$IFn$_invoke$arity$2(f_n,\x22$\x22));\nif(((((2) \x3c\x3d cljs.core.count(xs))) \x26\x26 (cljs.core.every_QMARK_((function (p1__44311_SHARP_){\nreturn (!(clojure.string.blank_QMARK_(p1__44311_SHARP_)));\n}),xs)))){\nvar vec__44317 \x3d cljs.core.juxt.cljs$core$IFn$_invoke$arity$2(cljs.core.butlast,cljs.core.last)(xs);\nvar xs__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44317,(0),null);\nvar y \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44317,(1),null);\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22.\x22,xs__$1),\x22/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join(\x27\x27));\n} else {\nreturn null;\n}\n}\n});\n\n/**\n * @interface\n */\ncljs.spec.alpha.Specize \x3d function(){};\n\nvar cljs$spec$alpha$Specize$specize_STAR_$dyn_46991 \x3d (function() {\nvar G__46992 \x3d null;\nvar G__46992__1 \x3d (function (_){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.specize_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4464__auto__.call(null,_));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.specize_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4461__auto__.call(null,_));\n} else {\nthrow cljs.core.missing_protocol(\x22Specize.specize*\x22,_);\n}\n}\n});\nvar G__46992__2 \x3d (function (_,form){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (cljs.spec.alpha.specize_STAR_[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(_,form) : m__4464__auto__.call(null,_,form));\n} else {\nvar m__4461__auto__ \x3d (cljs.spec.alpha.specize_STAR_[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(_,form) : m__4461__auto__.call(null,_,form));\n} else {\nthrow cljs.core.missing_protocol(\x22Specize.specize*\x22,_);\n}\n}\n});\nG__46992 \x3d function(_,form){\nswitch(arguments.length){\ncase 1:\nreturn G__46992__1.call(this,_);\ncase 2:\nreturn G__46992__2.call(this,_,form);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__46992.cljs$core$IFn$_invoke$arity$1 \x3d G__46992__1;\nG__46992.cljs$core$IFn$_invoke$arity$2 \x3d G__46992__2;\nreturn G__46992;\n})()\n;\ncljs.spec.alpha.specize_STAR_ \x3d (function cljs$spec$alpha$specize_STAR_(var_args){\nvar G__44364 \x3d arguments.length;\nswitch (G__44364) {\ncase 1:\nreturn cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$1 \x3d (function (_){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d\x3d null)))))){\nreturn _.cljs$spec$alpha$Specize$specize_STAR_$arity$1(_);\n} else {\nreturn cljs$spec$alpha$Specize$specize_STAR_$dyn_46991(_);\n}\n}));\n\n(cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (_,form){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d\x3d null)))))){\nreturn _.cljs$spec$alpha$Specize$specize_STAR_$arity$2(_,form);\n} else {\nreturn cljs$spec$alpha$Specize$specize_STAR_$dyn_46991(_,form);\n}\n}));\n\n(cljs.spec.alpha.specize_STAR_.cljs$lang$maxFixedArity \x3d 2);\n\n\n(cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (k){\nvar k__$1 \x3d this;\nreturn cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(k__$1));\n}));\n\n(cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (k,_){\nvar k__$1 \x3d this;\nreturn cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(k__$1));\n}));\n\n(cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar s__$1 \x3d this;\nreturn cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(s__$1));\n}));\n\n(cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar s__$1 \x3d this;\nreturn cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(s__$1));\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar s__$1 \x3d this;\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(s__$1,s__$1,null,null);\n}));\n\n(cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,form){\nvar s__$1 \x3d this;\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,s__$1,null,null);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar s__$1 \x3d this;\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(s__$1,s__$1,null,null);\n}));\n\n(cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,form){\nvar s__$1 \x3d this;\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,s__$1,null,null);\n}));\n\ngoog.object.set(cljs.spec.alpha.Specize,\x22_\x22,true);\n\ngoog.object.set(cljs.spec.alpha.specize_STAR_,\x22_\x22,(function() {\nvar G__47040 \x3d null;\nvar G__47040__1 \x3d (function (o){\nvar temp__5751__auto__ \x3d ((cljs.core.fn_QMARK_(o))?cljs.spec.alpha.fn_sym(o.name):false);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar f_n \x3d temp__5751__auto__;\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(f_n,o,null,null);\n} else {\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22unknown\x22,\x22cljs.spec.alpha/unknown\x22,651034818),o,null,null);\n}\n});\nvar G__47040__2 \x3d (function (o,form){\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,o,null,null);\n});\nG__47040 \x3d function(o,form){\nswitch(arguments.length){\ncase 1:\nreturn G__47040__1.call(this,o);\ncase 2:\nreturn G__47040__2.call(this,o,form);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__47040.cljs$core$IFn$_invoke$arity$1 \x3d G__47040__1;\nG__47040.cljs$core$IFn$_invoke$arity$2 \x3d G__47040__2;\nreturn G__47040;\n})()\n);\ncljs.spec.alpha.specize \x3d (function cljs$spec$alpha$specize(var_args){\nvar G__44517 \x3d arguments.length;\nswitch (G__44517) {\ncase 1:\nreturn cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nvar or__4160__auto__ \x3d cljs.spec.alpha.spec_QMARK_(s);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.spec.alpha.specize_STAR_(s);\n}\n}));\n\n(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,form){\nvar or__4160__auto__ \x3d cljs.spec.alpha.spec_QMARK_(s);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.spec.alpha.specize_STAR_(s,form);\n}\n}));\n\n(cljs.spec.alpha.specize.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * tests the validity of a conform return value\n */\ncljs.spec.alpha.invalid_QMARK_ \x3d (function cljs$spec$alpha$invalid_QMARK_(ret){\nreturn cljs.core.keyword_identical_QMARK_(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119),ret);\n});\n/**\n * Given a spec and a value, returns :cljs.spec.alpha/invalid if value does\n *   not match spec, else the (possibly destructured) value.\n */\ncljs.spec.alpha.conform \x3d (function cljs$spec$alpha$conform(spec,x){\nreturn cljs.spec.alpha.conform_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),x);\n});\n/**\n * Given a spec and a value created by or compliant with a call to\n *   \x27conform\x27 with the same spec, returns a value with all conform\n * destructuring undone.\n */\ncljs.spec.alpha.unform \x3d (function cljs$spec$alpha$unform(spec,x){\nreturn cljs.spec.alpha.unform_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),x);\n});\n/**\n * returns the spec as data\n */\ncljs.spec.alpha.form \x3d (function cljs$spec$alpha$form(spec){\nreturn cljs.spec.alpha.describe_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec));\n});\ncljs.spec.alpha.abbrev \x3d (function cljs$spec$alpha$abbrev(form){\nif(cljs.core.seq_QMARK_(form)){\nreturn clojure.walk.postwalk((function (form__$1){\nif(cljs.core.truth_((((form__$1 instanceof cljs.core.Symbol))?cljs.core.namespace(form__$1):false))){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(form__$1));\n} else {\nif(((cljs.core.seq_QMARK_(form__$1)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),cljs.core.first(form__$1))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null)], null),cljs.core.second(form__$1))))){\nreturn cljs.core.last(form__$1);\n} else {\nreturn form__$1;\n\n}\n}\n}),form);\n} else {\nif(cljs.core.truth_((((form instanceof cljs.core.Symbol))?cljs.core.namespace(form):false))){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(form));\n} else {\nreturn form;\n\n}\n}\n});\n/**\n * returns an abbreviated description of the spec as data\n */\ncljs.spec.alpha.describe \x3d (function cljs$spec$alpha$describe(spec){\nreturn cljs.spec.alpha.abbrev(cljs.spec.alpha.form(spec));\n});\n/**\n * Takes a spec and a no-arg, generator-returning fn and returns a version of that spec that uses that generator\n */\ncljs.spec.alpha.with_gen \x3d (function cljs$spec$alpha$with_gen(spec,gen_fn){\nvar spec__$1 \x3d cljs.spec.alpha.reg_resolve(spec);\nif(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec__$1))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(spec__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22gfn\x22,\x22cljs.spec.alpha/gfn\x22,-593120375),gen_fn);\n} else {\nreturn cljs.spec.alpha.with_gen_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec__$1),gen_fn);\n}\n});\ncljs.spec.alpha.explain_data_STAR_ \x3d (function cljs$spec$alpha$explain_data_STAR_(spec,path,via,in$,x){\nvar temp__5753__auto__ \x3d cljs.spec.alpha.explain_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),path,via,in$,x);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar probs \x3d temp__5753__auto__;\nif(cljs.core.empty_QMARK_(probs)){\nreturn null;\n} else {\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22problems\x22,\x22cljs.spec.alpha/problems\x22,447400814),probs,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22spec\x22,\x22cljs.spec.alpha/spec\x22,1947137578),spec,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22value\x22,\x22cljs.spec.alpha/value\x22,1974786274),x], null);\n}\n} else {\nreturn null;\n}\n});\n/**\n * Given a spec and a value x which ought to conform, returns nil if x\n *   conforms, else a map with at least the key ::problems whose value is\n *   a collection of problem-maps, where problem-map has at least :path :pred and :val\n *   keys describing the predicate and the value that failed at that\n *   path.\n */\ncljs.spec.alpha.explain_data \x3d (function cljs$spec$alpha$explain_data(spec,x){\nreturn cljs.spec.alpha.explain_data_STAR_(spec,cljs.core.PersistentVector.EMPTY,(function (){var temp__5751__auto__ \x3d cljs.spec.alpha.spec_name(spec);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar name \x3d temp__5751__auto__;\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [name], null);\n} else {\nreturn cljs.core.PersistentVector.EMPTY;\n}\n})(),cljs.core.PersistentVector.EMPTY,x);\n});\n/**\n * Default printer for explain-data. nil indicates a successful validation.\n */\ncljs.spec.alpha.explain_printer \x3d (function cljs$spec$alpha$explain_printer(ed){\nif(cljs.core.truth_(ed)){\nvar problems \x3d cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__44582_SHARP_){\nreturn (- cljs.core.count(new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168).cljs$core$IFn$_invoke$arity$1(p1__44582_SHARP_)));\n}),cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__44580_SHARP_){\nreturn (- cljs.core.count(new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865).cljs$core$IFn$_invoke$arity$1(p1__44580_SHARP_)));\n}),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22problems\x22,\x22cljs.spec.alpha/problems\x22,447400814).cljs$core$IFn$_invoke$arity$1(ed)));\nreturn cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var sb__4702__auto__ \x3d (new goog.string.StringBuffer());\nvar _STAR_print_newline_STAR__orig_val__44590_47112 \x3d cljs.core._STAR_print_newline_STAR_;\nvar _STAR_print_fn_STAR__orig_val__44591_47113 \x3d cljs.core._STAR_print_fn_STAR_;\nvar _STAR_print_newline_STAR__temp_val__44592_47114 \x3d true;\nvar _STAR_print_fn_STAR__temp_val__44593_47115 \x3d (function (x__4703__auto__){\nreturn sb__4702__auto__.append(x__4703__auto__);\n});\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__temp_val__44592_47114);\n\n(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__temp_val__44593_47115);\n\ntry{var seq__44599_47119 \x3d cljs.core.seq(problems);\nvar chunk__44600_47120 \x3d null;\nvar count__44601_47121 \x3d (0);\nvar i__44602_47122 \x3d (0);\nwhile(true){\nif((i__44602_47122 \x3c count__44601_47121)){\nvar map__44735_47123 \x3d chunk__44600_47120.cljs$core$IIndexed$_nth$arity$2(null,i__44602_47122);\nvar map__44735_47124__$1 \x3d cljs.core.__destructure_map(map__44735_47123);\nvar prob_47125 \x3d map__44735_47124__$1;\nvar path_47126 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44735_47124__$1,new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168));\nvar pred_47127 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44735_47124__$1,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397));\nvar val_47128 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44735_47124__$1,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612));\nvar reason_47129 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44735_47124__$1,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759));\nvar via_47130 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44735_47124__$1,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336));\nvar in_47131 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44735_47124__$1,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865));\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val_47128], 0));\n\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 - failed: \x22], 0));\n\nif(cljs.core.truth_(reason_47129)){\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([reason_47129], 0));\n} else {\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.abbrev(pred_47127)], 0));\n}\n\nif(cljs.core.empty_QMARK_(in_47131)){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22 in: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([in_47131], 0))].join(\x27\x27)], 0));\n}\n\nif(cljs.core.empty_QMARK_(path_47126)){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22 at: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_47126], 0))].join(\x27\x27)], 0));\n}\n\nif(cljs.core.empty_QMARK_(via_47130)){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22 spec: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.last(via_47130)], 0))].join(\x27\x27)], 0));\n}\n\nvar seq__44746_47142 \x3d cljs.core.seq(prob_47125);\nvar chunk__44747_47143 \x3d null;\nvar count__44748_47144 \x3d (0);\nvar i__44749_47145 \x3d (0);\nwhile(true){\nif((i__44749_47145 \x3c count__44748_47144)){\nvar vec__44771_47151 \x3d chunk__44747_47143.cljs$core$IIndexed$_nth$arity$2(null,i__44749_47145);\nvar k_47152 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44771_47151,(0),null);\nvar v_47153 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44771_47151,(1),null);\nif(cljs.core.truth_((function (){var fexpr__44775 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),null,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),null,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),null,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),null,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),null,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),null], null), null);\nreturn (fexpr__44775.cljs$core$IFn$_invoke$arity$1 ? fexpr__44775.cljs$core$IFn$_invoke$arity$1(k_47152) : fexpr__44775.call(null,k_47152));\n})())){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\n\\t\x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_47152], 0)),\x22 \x22], 0));\n\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_47153], 0));\n}\n\n\nvar G__47165 \x3d seq__44746_47142;\nvar G__47166 \x3d chunk__44747_47143;\nvar G__47167 \x3d count__44748_47144;\nvar G__47168 \x3d (i__44749_47145 + (1));\nseq__44746_47142 \x3d G__47165;\nchunk__44747_47143 \x3d G__47166;\ncount__44748_47144 \x3d G__47167;\ni__44749_47145 \x3d G__47168;\ncontinue;\n} else {\nvar temp__5753__auto___47177 \x3d cljs.core.seq(seq__44746_47142);\nif(temp__5753__auto___47177){\nvar seq__44746_47178__$1 \x3d temp__5753__auto___47177;\nif(cljs.core.chunked_seq_QMARK_(seq__44746_47178__$1)){\nvar c__4591__auto___47179 \x3d cljs.core.chunk_first(seq__44746_47178__$1);\nvar G__47180 \x3d cljs.core.chunk_rest(seq__44746_47178__$1);\nvar G__47182 \x3d c__4591__auto___47179;\nvar G__47183 \x3d cljs.core.count(c__4591__auto___47179);\nvar G__47184 \x3d (0);\nseq__44746_47142 \x3d G__47180;\nchunk__44747_47143 \x3d G__47182;\ncount__44748_47144 \x3d G__47183;\ni__44749_47145 \x3d G__47184;\ncontinue;\n} else {\nvar vec__44787_47187 \x3d cljs.core.first(seq__44746_47178__$1);\nvar k_47188 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44787_47187,(0),null);\nvar v_47189 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44787_47187,(1),null);\nif(cljs.core.truth_((function (){var fexpr__44792 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),null,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),null,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),null,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),null,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),null,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),null], null), null);\nreturn (fexpr__44792.cljs$core$IFn$_invoke$arity$1 ? fexpr__44792.cljs$core$IFn$_invoke$arity$1(k_47188) : fexpr__44792.call(null,k_47188));\n})())){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\n\\t\x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_47188], 0)),\x22 \x22], 0));\n\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_47189], 0));\n}\n\n\nvar G__47204 \x3d cljs.core.next(seq__44746_47178__$1);\nvar G__47206 \x3d null;\nvar G__47207 \x3d (0);\nvar G__47208 \x3d (0);\nseq__44746_47142 \x3d G__47204;\nchunk__44747_47143 \x3d G__47206;\ncount__44748_47144 \x3d G__47207;\ni__44749_47145 \x3d G__47208;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\ncljs.core.newline.cljs$core$IFn$_invoke$arity$0();\n\n\nvar G__47213 \x3d seq__44599_47119;\nvar G__47214 \x3d chunk__44600_47120;\nvar G__47215 \x3d count__44601_47121;\nvar G__47216 \x3d (i__44602_47122 + (1));\nseq__44599_47119 \x3d G__47213;\nchunk__44600_47120 \x3d G__47214;\ncount__44601_47121 \x3d G__47215;\ni__44602_47122 \x3d G__47216;\ncontinue;\n} else {\nvar temp__5753__auto___47219 \x3d cljs.core.seq(seq__44599_47119);\nif(temp__5753__auto___47219){\nvar seq__44599_47222__$1 \x3d temp__5753__auto___47219;\nif(cljs.core.chunked_seq_QMARK_(seq__44599_47222__$1)){\nvar c__4591__auto___47224 \x3d cljs.core.chunk_first(seq__44599_47222__$1);\nvar G__47225 \x3d cljs.core.chunk_rest(seq__44599_47222__$1);\nvar G__47226 \x3d c__4591__auto___47224;\nvar G__47227 \x3d cljs.core.count(c__4591__auto___47224);\nvar G__47228 \x3d (0);\nseq__44599_47119 \x3d G__47225;\nchunk__44600_47120 \x3d G__47226;\ncount__44601_47121 \x3d G__47227;\ni__44602_47122 \x3d G__47228;\ncontinue;\n} else {\nvar map__44803_47233 \x3d cljs.core.first(seq__44599_47222__$1);\nvar map__44803_47234__$1 \x3d cljs.core.__destructure_map(map__44803_47233);\nvar prob_47235 \x3d map__44803_47234__$1;\nvar path_47236 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44803_47234__$1,new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168));\nvar pred_47237 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44803_47234__$1,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397));\nvar val_47238 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44803_47234__$1,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612));\nvar reason_47239 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44803_47234__$1,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759));\nvar via_47240 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44803_47234__$1,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336));\nvar in_47241 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__44803_47234__$1,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865));\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val_47238], 0));\n\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 - failed: \x22], 0));\n\nif(cljs.core.truth_(reason_47239)){\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([reason_47239], 0));\n} else {\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.abbrev(pred_47237)], 0));\n}\n\nif(cljs.core.empty_QMARK_(in_47241)){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22 in: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([in_47241], 0))].join(\x27\x27)], 0));\n}\n\nif(cljs.core.empty_QMARK_(path_47236)){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22 at: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_47236], 0))].join(\x27\x27)], 0));\n}\n\nif(cljs.core.empty_QMARK_(via_47240)){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22 spec: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.last(via_47240)], 0))].join(\x27\x27)], 0));\n}\n\nvar seq__44806_47251 \x3d cljs.core.seq(prob_47235);\nvar chunk__44807_47252 \x3d null;\nvar count__44808_47253 \x3d (0);\nvar i__44809_47254 \x3d (0);\nwhile(true){\nif((i__44809_47254 \x3c count__44808_47253)){\nvar vec__44818_47256 \x3d chunk__44807_47252.cljs$core$IIndexed$_nth$arity$2(null,i__44809_47254);\nvar k_47258 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44818_47256,(0),null);\nvar v_47259 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44818_47256,(1),null);\nif(cljs.core.truth_((function (){var fexpr__44821 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),null,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),null,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),null,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),null,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),null,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),null], null), null);\nreturn (fexpr__44821.cljs$core$IFn$_invoke$arity$1 ? fexpr__44821.cljs$core$IFn$_invoke$arity$1(k_47258) : fexpr__44821.call(null,k_47258));\n})())){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\n\\t\x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_47258], 0)),\x22 \x22], 0));\n\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_47259], 0));\n}\n\n\nvar G__47270 \x3d seq__44806_47251;\nvar G__47271 \x3d chunk__44807_47252;\nvar G__47272 \x3d count__44808_47253;\nvar G__47273 \x3d (i__44809_47254 + (1));\nseq__44806_47251 \x3d G__47270;\nchunk__44807_47252 \x3d G__47271;\ncount__44808_47253 \x3d G__47272;\ni__44809_47254 \x3d G__47273;\ncontinue;\n} else {\nvar temp__5753__auto___47274__$1 \x3d cljs.core.seq(seq__44806_47251);\nif(temp__5753__auto___47274__$1){\nvar seq__44806_47275__$1 \x3d temp__5753__auto___47274__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__44806_47275__$1)){\nvar c__4591__auto___47280 \x3d cljs.core.chunk_first(seq__44806_47275__$1);\nvar G__47281 \x3d cljs.core.chunk_rest(seq__44806_47275__$1);\nvar G__47282 \x3d c__4591__auto___47280;\nvar G__47283 \x3d cljs.core.count(c__4591__auto___47280);\nvar G__47284 \x3d (0);\nseq__44806_47251 \x3d G__47281;\nchunk__44807_47252 \x3d G__47282;\ncount__44808_47253 \x3d G__47283;\ni__44809_47254 \x3d G__47284;\ncontinue;\n} else {\nvar vec__44824_47289 \x3d cljs.core.first(seq__44806_47275__$1);\nvar k_47290 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44824_47289,(0),null);\nvar v_47291 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44824_47289,(1),null);\nif(cljs.core.truth_((function (){var fexpr__44829 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),null,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),null,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),null,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),null,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),null,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),null], null), null);\nreturn (fexpr__44829.cljs$core$IFn$_invoke$arity$1 ? fexpr__44829.cljs$core$IFn$_invoke$arity$1(k_47290) : fexpr__44829.call(null,k_47290));\n})())){\n} else {\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\n\\t\x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_47290], 0)),\x22 \x22], 0));\n\ncljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_47291], 0));\n}\n\n\nvar G__47305 \x3d cljs.core.next(seq__44806_47275__$1);\nvar G__47306 \x3d null;\nvar G__47307 \x3d (0);\nvar G__47308 \x3d (0);\nseq__44806_47251 \x3d G__47305;\nchunk__44807_47252 \x3d G__47306;\ncount__44808_47253 \x3d G__47307;\ni__44809_47254 \x3d G__47308;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\ncljs.core.newline.cljs$core$IFn$_invoke$arity$0();\n\n\nvar G__47311 \x3d cljs.core.next(seq__44599_47222__$1);\nvar G__47312 \x3d null;\nvar G__47313 \x3d (0);\nvar G__47314 \x3d (0);\nseq__44599_47119 \x3d G__47311;\nchunk__44600_47120 \x3d G__47312;\ncount__44601_47121 \x3d G__47313;\ni__44602_47122 \x3d G__47314;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n}finally {(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__orig_val__44591_47113);\n\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__orig_val__44590_47112);\n}\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4702__auto__);\n})()], 0));\n} else {\nreturn cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Success!\x22], 0));\n}\n});\ncljs.spec.alpha._STAR_explain_out_STAR_ \x3d cljs.spec.alpha.explain_printer;\n/**\n * Prints explanation data (per \x27explain-data\x27) to *out* using the printer in *explain-out*,\n *  by default explain-printer.\n */\ncljs.spec.alpha.explain_out \x3d (function cljs$spec$alpha$explain_out(ed){\nreturn cljs.spec.alpha._STAR_explain_out_STAR_.call(null,ed);\n});\n/**\n * Given a spec and a value that fails to conform, prints an explanation to *out*.\n */\ncljs.spec.alpha.explain \x3d (function cljs$spec$alpha$explain(spec,x){\nreturn cljs.spec.alpha.explain_out(cljs.spec.alpha.explain_data(spec,x));\n});\n/**\n * Given a spec and a value that fails to conform, returns an explanation as a string.\n */\ncljs.spec.alpha.explain_str \x3d (function cljs$spec$alpha$explain_str(spec,x){\nvar sb__4702__auto__ \x3d (new goog.string.StringBuffer());\nvar _STAR_print_newline_STAR__orig_val__44830_47320 \x3d cljs.core._STAR_print_newline_STAR_;\nvar _STAR_print_fn_STAR__orig_val__44831_47321 \x3d cljs.core._STAR_print_fn_STAR_;\nvar _STAR_print_newline_STAR__temp_val__44832_47322 \x3d true;\nvar _STAR_print_fn_STAR__temp_val__44833_47323 \x3d (function (x__4703__auto__){\nreturn sb__4702__auto__.append(x__4703__auto__);\n});\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__temp_val__44832_47322);\n\n(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__temp_val__44833_47323);\n\ntry{cljs.spec.alpha.explain(spec,x);\n}finally {(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__orig_val__44831_47321);\n\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__orig_val__44830_47320);\n}\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4702__auto__);\n});\ncljs.spec.alpha.gensub \x3d (function cljs$spec$alpha$gensub(spec,overrides,path,rmap,form){\nvar spec__$1 \x3d cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec);\nvar temp__5751__auto__ \x3d (function (){var or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d (function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,(function (){var or__4160__auto__ \x3d cljs.spec.alpha.spec_name(spec__$1);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn spec__$1;\n}\n})());\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,path);\n}\n})();\nif(cljs.core.truth_(temp__5753__auto__)){\nvar gfn \x3d temp__5753__auto__;\nreturn (gfn.cljs$core$IFn$_invoke$arity$0 ? gfn.cljs$core$IFn$_invoke$arity$0() : gfn.call(null));\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.spec.alpha.gen_STAR_(spec__$1,overrides,path,rmap);\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar g \x3d temp__5751__auto__;\nreturn cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__44834_SHARP_){\nreturn cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,p1__44834_SHARP_);\n}),g,(100)], 0));\n} else {\nthrow (new Error([\x22Unable to construct gen at: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(path),\x22 for: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.abbrev(form))].join(\x27\x27)));\n}\n});\n/**\n * Given a spec, returns the generator for it, or throws if none can\n *   be constructed. Optionally an overrides map can be provided which\n *   should map spec names or paths (vectors of keywords) to no-arg\n *   generator-creating fns. These will be used instead of the generators at those\n *   names/paths. Note that parent generator (in the spec or overrides\n *   map) will supersede those of any subtrees. A generator for a regex\n *   op must always return a sequential collection (i.e. a generator for\n *   s/? should return either an empty sequence/vector or a\n *   sequence/vector with one item in it)\n */\ncljs.spec.alpha.gen \x3d (function cljs$spec$alpha$gen(var_args){\nvar G__44847 \x3d arguments.length;\nswitch (G__44847) {\ncase 1:\nreturn cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1 \x3d (function (spec){\nreturn cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(spec,null);\n}));\n\n(cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2 \x3d (function (spec,overrides){\nreturn cljs.spec.alpha.gensub(spec,overrides,cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22recursion-limit\x22,\x22cljs.spec.alpha/recursion-limit\x22,601284994),cljs.spec.alpha._STAR_recursion_limit_STAR_], null),spec);\n}));\n\n(cljs.spec.alpha.gen.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Do not call this directly, use \x27def\x27\n */\ncljs.spec.alpha.def_impl \x3d (function cljs$spec$alpha$def_impl(k,form,spec){\nif(cljs.core.truth_(((cljs.core.ident_QMARK_(k))?cljs.core.namespace(k):false))){\n} else {\nthrow (new Error([\x22Assert failed: \x22,\x22k must be namespaced keyword or resolveable symbol\x22,\x22\\n\x22,\x22(c/and (ident? k) (namespace k))\x22].join(\x27\x27)));\n}\n\nif((spec \x3d\x3d null)){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.registry_ref,cljs.core.dissoc,k);\n} else {\nvar spec_47340__$1 \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.spec.alpha.spec_QMARK_(spec);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.spec.alpha.regex_QMARK_(spec);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.spec.alpha.registry_ref),spec);\n}\n}\n})())?spec:cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,spec,null,null));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.spec.alpha.registry_ref,cljs.core.assoc,k,cljs.spec.alpha.with_name(spec_47340__$1,k));\n}\n\nreturn k;\n});\n/**\n * returns the registry map, prefer \x27get-spec\x27 to lookup a spec by name\n */\ncljs.spec.alpha.registry \x3d (function cljs$spec$alpha$registry(){\nreturn cljs.core.deref(cljs.spec.alpha.registry_ref);\n});\n/**\n * Returns a symbol from a symbol or var\n */\ncljs.spec.alpha.__GT_sym \x3d (function cljs$spec$alpha$__GT_sym(x){\nif(cljs.core.var_QMARK_(x)){\nreturn x.sym;\n} else {\nreturn x;\n}\n});\n/**\n * Returns spec registered for keyword/symbol/var k, or nil.\n */\ncljs.spec.alpha.get_spec \x3d (function cljs$spec$alpha$get_spec(k){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.registry(),(((k instanceof cljs.core.Keyword))?k:cljs.spec.alpha.__GT_sym(k)));\n});\ncljs.spec.alpha.macroexpand_check \x3d (function cljs$spec$alpha$macroexpand_check(v,args){\nvar specs \x3d cljs.spec.alpha.get_spec(v);\nvar temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576).cljs$core$IFn$_invoke$arity$1(specs);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar arg_spec \x3d temp__5753__auto__;\nif(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform(arg_spec,args))){\nvar ed \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.explain_data_STAR_(arg_spec,cljs.core.PersistentVector.EMPTY,(function (){var temp__5751__auto__ \x3d cljs.spec.alpha.spec_name(arg_spec);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar name \x3d temp__5751__auto__;\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [name], null);\n} else {\nreturn cljs.core.PersistentVector.EMPTY;\n}\n})(),cljs.core.PersistentVector.EMPTY,args),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22args\x22,\x22cljs.spec.alpha/args\x22,1870769783),args);\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2([\x22Call to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.__GT_sym(v)),\x22 did not conform to spec.\x22].join(\x27\x27),ed);\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\ncljs.spec.alpha.recur_limit_QMARK_ \x3d (function cljs$spec$alpha$recur_limit_QMARK_(rmap,id,path,k){\nreturn (((cljs.core.get.cljs$core$IFn$_invoke$arity$2(rmap,id) \x3e new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22recursion-limit\x22,\x22cljs.spec.alpha/recursion-limit\x22,601284994).cljs$core$IFn$_invoke$arity$1(rmap))) \x26\x26 (cljs.core.contains_QMARK_(cljs.core.set(path),k)));\n});\ncljs.spec.alpha.inck \x3d (function cljs$spec$alpha$inck(m,k){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,((function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})() + (1)));\n});\ncljs.spec.alpha.dt \x3d (function cljs$spec$alpha$dt(var_args){\nvar G__44869 \x3d arguments.length;\nswitch (G__44869) {\ncase 3:\nreturn cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3 \x3d (function (pred,x,form){\nreturn cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4(pred,x,form,null);\n}));\n\n(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4 \x3d (function (pred,x,form,cpred_QMARK_){\nif(cljs.core.truth_(pred)){\nvar temp__5751__auto__ \x3d cljs.spec.alpha.the_spec(pred);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar spec \x3d temp__5751__auto__;\nreturn cljs.spec.alpha.conform(spec,x);\n} else {\nif(cljs.core.ifn_QMARK_(pred)){\nif(cljs.core.truth_(cpred_QMARK_)){\nreturn (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x));\n} else {\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)))){\nreturn x;\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}\n} else {\nthrow (new Error([cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([form], 0)),\x22 is not a fn, expected predicate fn\x22].join(\x27\x27)));\n}\n}\n} else {\nreturn x;\n}\n}));\n\n(cljs.spec.alpha.dt.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Helper function that returns true when x is valid for spec.\n */\ncljs.spec.alpha.valid_QMARK_ \x3d (function cljs$spec$alpha$valid_QMARK_(var_args){\nvar G__44903 \x3d arguments.length;\nswitch (G__44903) {\ncase 2:\nreturn cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2 \x3d (function (spec,x){\nvar spec__$1 \x3d cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec);\nreturn (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform_STAR_(spec__$1,x))));\n}));\n\n(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$3 \x3d (function (spec,x,form){\nvar spec__$1 \x3d cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2(spec,form);\nreturn (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform_STAR_(spec__$1,x))));\n}));\n\n(cljs.spec.alpha.valid_QMARK_.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * internal helper function that returns true when x is valid for spec.\n */\ncljs.spec.alpha.pvalid_QMARK_ \x3d (function cljs$spec$alpha$pvalid_QMARK_(var_args){\nvar G__44955 \x3d arguments.length;\nswitch (G__44955) {\ncase 2:\nreturn cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2 \x3d (function (pred,x){\nreturn (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred,x,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22unknown\x22,\x22cljs.spec.alpha/unknown\x22,651034818)))));\n}));\n\n(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$3 \x3d (function (pred,x,form){\nreturn (!(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred,x,form))));\n}));\n\n(cljs.spec.alpha.pvalid_QMARK_.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.spec.alpha.explain_1 \x3d (function cljs$spec$alpha$explain_1(form,pred,path,via,in$,v){\nvar pred__$1 \x3d cljs.spec.alpha.maybe_spec(pred);\nif(cljs.core.truth_(cljs.spec.alpha.spec_QMARK_(pred__$1))){\nreturn cljs.spec.alpha.explain_STAR_(pred__$1,path,(function (){var temp__5751__auto__ \x3d cljs.spec.alpha.spec_name(pred__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar name \x3d temp__5751__auto__;\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(via,name);\n} else {\nreturn via;\n}\n})(),in$,v);\n} else {\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),form,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),v,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n}\n});\n\n/**\n * returns a generator for form f, which can be a keyword or a list\n *   starting with \x27or or \x27and.\n */\ncljs.spec.alpha.k_gen \x3d (function cljs$spec$alpha$k_gen(f){\nif((f instanceof cljs.core.Keyword)){\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([f], 0));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22or\x22,\x22or\x22,1876275696,null),cljs.core.first(f))){\nreturn cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2((1),cljs.core.rest(f));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22and\x22,\x22and\x22,668631710,null),cljs.core.first(f))){\nreturn cljs.spec.alpha.and_k_gen(cljs.core.rest(f));\n} else {\nreturn null;\n}\n}\n}\n});\n/**\n * returns a tuple generator made up of generators for a random subset\n *   of min-count (default 0) to all elements in s.\n */\ncljs.spec.alpha.or_k_gen \x3d (function cljs$spec$alpha$or_k_gen(var_args){\nvar G__44980 \x3d arguments.length;\nswitch (G__44980) {\ncase 1:\nreturn cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2((0),s);\n}));\n\n(cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$2 \x3d (function (min_count,s){\nreturn cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.tuple.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.choose.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([min_count,cljs.core.count(s)], 0)),cljs.spec.gen.alpha.shuffle.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.k_gen,s)], 0))], 0)),(function (p__44987){\nvar vec__44988 \x3d p__44987;\nvar n \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44988,(0),null);\nvar gens \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__44988,(1),null);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,cljs.core.take.cljs$core$IFn$_invoke$arity$2(n,gens));\n})], 0));\n}));\n\n(cljs.spec.alpha.or_k_gen.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * returns a tuple generator made up of generators for every element\n *   in s.\n */\ncljs.spec.alpha.and_k_gen \x3d (function cljs$spec$alpha$and_k_gen(s){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.k_gen,s));\n});\n/**\n * Do not call this directly, use \x27spec\x27 with a map argument\n */\ncljs.spec.alpha.map_spec_impl \x3d (function cljs$spec$alpha$map_spec_impl(p__45004){\nvar map__45005 \x3d p__45004;\nvar map__45005__$1 \x3d cljs.core.__destructure_map(map__45005);\nvar argm \x3d map__45005__$1;\nvar opt \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22opt\x22,\x22opt\x22,-794706369));\nvar req_un \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22req-un\x22,\x22req-un\x22,1074571008));\nvar opt_un \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22opt-un\x22,\x22opt-un\x22,883442496));\nvar gfn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22gfn\x22,\x22gfn\x22,791517474));\nvar pred_exprs \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22pred-exprs\x22,\x22pred-exprs\x22,1792271395));\nvar keys_pred \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22keys-pred\x22,\x22keys-pred\x22,858984739));\nvar opt_keys \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22opt-keys\x22,\x22opt-keys\x22,1262688261));\nvar req_specs \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22req-specs\x22,\x22req-specs\x22,553962313));\nvar req \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22req\x22,\x22req\x22,-326448303));\nvar req_keys \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22req-keys\x22,\x22req-keys\x22,514319221));\nvar opt_specs \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22opt-specs\x22,\x22opt-specs\x22,-384905450));\nvar pred_forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45005__$1,new cljs.core.Keyword(null,\x22pred-forms\x22,\x22pred-forms\x22,172611832));\nvar k__GT_s \x3d cljs.core.zipmap(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_keys,opt_keys),cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_specs,opt_specs));\nvar keys__GT_specnames \x3d (function (p1__44995_SHARP_){\nvar or__4160__auto__ \x3d (k__GT_s.cljs$core$IFn$_invoke$arity$1 ? k__GT_s.cljs$core$IFn$_invoke$arity$1(p1__44995_SHARP_) : k__GT_s.call(null,p1__44995_SHARP_));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn p1__44995_SHARP_;\n}\n});\nvar id \x3d cljs.core.random_uuid();\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45010 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45010 \x3d (function (keys__GT_specnames,opt,req_un,opt_un,gfn,pred_exprs,keys_pred,argm,map__45005,opt_keys,req_specs,p__45004,req,id,req_keys,opt_specs,k__GT_s,pred_forms,meta45011){\nthis.keys__GT_specnames \x3d keys__GT_specnames;\nthis.opt \x3d opt;\nthis.req_un \x3d req_un;\nthis.opt_un \x3d opt_un;\nthis.gfn \x3d gfn;\nthis.pred_exprs \x3d pred_exprs;\nthis.keys_pred \x3d keys_pred;\nthis.argm \x3d argm;\nthis.map__45005 \x3d map__45005;\nthis.opt_keys \x3d opt_keys;\nthis.req_specs \x3d req_specs;\nthis.p__45004 \x3d p__45004;\nthis.req \x3d req;\nthis.id \x3d id;\nthis.req_keys \x3d req_keys;\nthis.opt_specs \x3d opt_specs;\nthis.k__GT_s \x3d k__GT_s;\nthis.pred_forms \x3d pred_forms;\nthis.meta45011 \x3d meta45011;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45012,meta45011__$1){\nvar self__ \x3d this;\nvar _45012__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45010(self__.keys__GT_specnames,self__.opt,self__.req_un,self__.opt_un,self__.gfn,self__.pred_exprs,self__.keys_pred,self__.argm,self__.map__45005,self__.opt_keys,self__.req_specs,self__.p__45004,self__.req,self__.id,self__.req_keys,self__.opt_specs,self__.k__GT_s,self__.pred_forms,meta45011__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45012){\nvar self__ \x3d this;\nvar _45012__$1 \x3d this;\nreturn self__.meta45011;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,m){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_((self__.keys_pred.cljs$core$IFn$_invoke$arity$1 ? self__.keys_pred.cljs$core$IFn$_invoke$arity$1(m) : self__.keys_pred.call(null,m)))){\nvar reg \x3d cljs.spec.alpha.registry();\nvar ret \x3d m;\nvar G__45031 \x3d m;\nvar vec__45034 \x3d G__45031;\nvar seq__45035 \x3d cljs.core.seq(vec__45034);\nvar first__45036 \x3d cljs.core.first(seq__45035);\nvar seq__45035__$1 \x3d cljs.core.next(seq__45035);\nvar vec__45037 \x3d first__45036;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45037,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45037,(1),null);\nvar ks \x3d seq__45035__$1;\nvar keys \x3d vec__45034;\nvar ret__$1 \x3d ret;\nvar G__45031__$1 \x3d G__45031;\nwhile(true){\nvar ret__$2 \x3d ret__$1;\nvar vec__45040 \x3d G__45031__$1;\nvar seq__45041 \x3d cljs.core.seq(vec__45040);\nvar first__45042 \x3d cljs.core.first(seq__45041);\nvar seq__45041__$1 \x3d cljs.core.next(seq__45041);\nvar vec__45043 \x3d first__45042;\nvar k__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45043,(0),null);\nvar v__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45043,(1),null);\nvar ks__$1 \x3d seq__45041__$1;\nvar keys__$1 \x3d vec__45040;\nif(cljs.core.truth_(keys__$1)){\nvar sname \x3d (self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k__$1) : self__.keys__GT_specnames.call(null,k__$1));\nvar temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,sname);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar s \x3d temp__5751__auto__;\nvar cv \x3d cljs.spec.alpha.conform(s,v__$1);\nif(cljs.spec.alpha.invalid_QMARK_(cv)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar G__47559 \x3d (((cv \x3d\x3d\x3d v__$1))?ret__$2:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret__$2,k__$1,cv));\nvar G__47560 \x3d ks__$1;\nret__$1 \x3d G__47559;\nG__45031__$1 \x3d G__47560;\ncontinue;\n}\n} else {\nvar G__47561 \x3d ret__$2;\nvar G__47562 \x3d ks__$1;\nret__$1 \x3d G__47561;\nG__45031__$1 \x3d G__47562;\ncontinue;\n}\n} else {\nreturn ret__$2;\n}\nbreak;\n}\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,m){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar reg \x3d cljs.spec.alpha.registry();\nvar ret \x3d m;\nvar G__45068 \x3d cljs.core.keys(m);\nvar vec__45069 \x3d G__45068;\nvar seq__45070 \x3d cljs.core.seq(vec__45069);\nvar first__45071 \x3d cljs.core.first(seq__45070);\nvar seq__45070__$1 \x3d cljs.core.next(seq__45070);\nvar k \x3d first__45071;\nvar ks \x3d seq__45070__$1;\nvar keys \x3d vec__45069;\nvar ret__$1 \x3d ret;\nvar G__45068__$1 \x3d G__45068;\nwhile(true){\nvar ret__$2 \x3d ret__$1;\nvar vec__45079 \x3d G__45068__$1;\nvar seq__45080 \x3d cljs.core.seq(vec__45079);\nvar first__45081 \x3d cljs.core.first(seq__45080);\nvar seq__45080__$1 \x3d cljs.core.next(seq__45080);\nvar k__$1 \x3d first__45081;\nvar ks__$1 \x3d seq__45080__$1;\nvar keys__$1 \x3d vec__45079;\nif(cljs.core.truth_(keys__$1)){\nif(cljs.core.contains_QMARK_(reg,(self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k__$1) : self__.keys__GT_specnames.call(null,k__$1)))){\nvar cv \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k__$1);\nvar v \x3d cljs.spec.alpha.unform((self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k__$1) : self__.keys__GT_specnames.call(null,k__$1)),cv);\nvar G__47575 \x3d (((cv \x3d\x3d\x3d v))?ret__$2:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret__$2,k__$1,v));\nvar G__47576 \x3d ks__$1;\nret__$1 \x3d G__47575;\nG__45068__$1 \x3d G__47576;\ncontinue;\n} else {\nvar G__47578 \x3d ret__$2;\nvar G__47579 \x3d ks__$1;\nret__$1 \x3d G__47578;\nG__45068__$1 \x3d G__47579;\ncontinue;\n}\n} else {\nreturn ret__$2;\n}\nbreak;\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((!(cljs.core.map_QMARK_(x)))){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),new cljs.core.Symbol(\x22cljs.core\x22,\x22map?\x22,\x22cljs.core/map?\x22,-1390345523,null),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nvar reg \x3d cljs.spec.alpha.registry();\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.concat,(function (){var temp__5753__auto__ \x3d cljs.core.seq(cljs.core.keep.cljs$core$IFn$_invoke$arity$2(cljs.core.identity,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (pred,form){\nif(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)))){\nreturn null;\n} else {\nreturn form;\n}\n}),self__.pred_exprs,self__.pred_forms)));\nif(temp__5753__auto__){\nvar probs \x3d temp__5753__auto__;\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__44999_SHARP_){\nreturn cljs.core.identity(new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),p1__44999_SHARP_,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null));\n}),probs);\n} else {\nreturn null;\n}\n})(),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__45082){\nvar vec__45083 \x3d p__45082;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45083,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45083,(1),null);\nif((((!(cljs.core.contains_QMARK_(reg,(self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)))))) || (cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$3((self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)),v,k)))){\nreturn null;\n} else {\nreturn cljs.spec.alpha.explain_1((self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)),(self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1 ? self__.keys__GT_specnames.cljs$core$IFn$_invoke$arity$1(k) : self__.keys__GT_specnames.call(null,k)),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,k),v);\n}\n}),cljs.core.seq(x)));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nvar rmap__$1 \x3d cljs.spec.alpha.inck(rmap,self__.id);\nvar rgen \x3d (function (k,s){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.spec.alpha.gensub(s,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,k)], null);\n});\nvar ogen \x3d (function (k,s){\nif(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,self__.id,path,k)){\nreturn null;\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){\nreturn cljs.spec.alpha.gensub(s,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,k);\n}),null)))], null);\n}\n});\nvar reqs \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$3(rgen,self__.req_keys,self__.req_specs);\nvar opts \x3d cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$3(ogen,self__.opt_keys,self__.opt_specs));\nif(cljs.core.every_QMARK_(cljs.core.identity,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.second,reqs),cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.second,opts)))){\nreturn cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.gen.alpha.tuple.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.and_k_gen(self__.req),cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1(self__.opt),cljs.spec.alpha.and_k_gen(self__.req_un),cljs.spec.alpha.or_k_gen.cljs$core$IFn$_invoke$arity$1(self__.opt_un)], 0)),(function (p__45087){\nvar vec__45088 \x3d p__45087;\nvar req_ks \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45088,(0),null);\nvar opt_ks \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45088,(1),null);\nvar req_un_ks \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45088,(2),null);\nvar opt_un_ks \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45088,(3),null);\nvar qks \x3d cljs.core.flatten(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_ks,opt_ks));\nvar unqks \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.comp.cljs$core$IFn$_invoke$arity$2(cljs.core.keyword,cljs.core.name),cljs.core.flatten(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(req_un_ks,opt_un_ks)));\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.hash_map,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__45002_SHARP_){\nvar G__45094 \x3d cljs.core.first(p1__45002_SHARP_);\nvar fexpr__45093 \x3d cljs.core.set(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(qks,unqks));\nreturn (fexpr__45093.cljs$core$IFn$_invoke$arity$1 ? fexpr__45093.cljs$core$IFn$_invoke$arity$1(G__45094) : fexpr__45093.call(null,G__45094));\n}),cljs.core.into.cljs$core$IFn$_invoke$arity$2(reqs,opts))));\n})], 0));\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar G__45099 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.argm,new cljs.core.Keyword(null,\x22gfn\x22,\x22gfn\x22,791517474),gfn__$1);\nreturn (cljs.spec.alpha.map_spec_impl.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.map_spec_impl.cljs$core$IFn$_invoke$arity$1(G__45099) : cljs.spec.alpha.map_spec_impl.call(null,G__45099));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.cons(new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22keys\x22,\x22cljs.spec.alpha/keys\x22,1109346032,null),(function (){var G__45100 \x3d cljs.core.PersistentVector.EMPTY;\nvar G__45100__$1 \x3d (cljs.core.truth_(self__.req)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__45100,new cljs.core.Keyword(null,\x22req\x22,\x22req\x22,-326448303),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.req], 0)):G__45100);\nvar G__45100__$2 \x3d (cljs.core.truth_(self__.opt)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__45100__$1,new cljs.core.Keyword(null,\x22opt\x22,\x22opt\x22,-794706369),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.opt], 0)):G__45100__$1);\nvar G__45100__$3 \x3d (cljs.core.truth_(self__.req_un)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__45100__$2,new cljs.core.Keyword(null,\x22req-un\x22,\x22req-un\x22,1074571008),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.req_un], 0)):G__45100__$2);\nif(cljs.core.truth_(self__.opt_un)){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(G__45100__$3,new cljs.core.Keyword(null,\x22opt-un\x22,\x22opt-un\x22,883442496),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.opt_un], 0));\n} else {\nreturn G__45100__$3;\n}\n})());\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 19, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keys-\x3especnames\x22,\x22keys-\x3especnames\x22,1791294693,null),new cljs.core.Symbol(null,\x22opt\x22,\x22opt\x22,845825158,null),new cljs.core.Symbol(null,\x22req-un\x22,\x22req-un\x22,-1579864761,null),new cljs.core.Symbol(null,\x22opt-un\x22,\x22opt-un\x22,-1770993273,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22pred-exprs\x22,\x22pred-exprs\x22,-862164374,null),new cljs.core.Symbol(null,\x22keys-pred\x22,\x22keys-pred\x22,-1795451030,null),new cljs.core.Symbol(null,\x22argm\x22,\x22argm\x22,-181546357,null),new cljs.core.Symbol(null,\x22map__45005\x22,\x22map__45005\x22,-526817012,null),new cljs.core.Symbol(null,\x22opt-keys\x22,\x22opt-keys\x22,-1391747508,null),new cljs.core.Symbol(null,\x22req-specs\x22,\x22req-specs\x22,-2100473456,null),new cljs.core.Symbol(null,\x22p__45004\x22,\x22p__45004\x22,846596630,null),new cljs.core.Symbol(null,\x22req\x22,\x22req\x22,1314083224,null),new cljs.core.Symbol(null,\x22id\x22,\x22id\x22,252129435,null),new cljs.core.Symbol(null,\x22req-keys\x22,\x22req-keys\x22,-2140116548,null),new cljs.core.Symbol(null,\x22opt-specs\x22,\x22opt-specs\x22,1255626077,null),new cljs.core.Symbol(null,\x22k-\x3es\x22,\x22k-\x3es\x22,-1685112801,null),new cljs.core.Symbol(null,\x22pred-forms\x22,\x22pred-forms\x22,1813143359,null),new cljs.core.Symbol(null,\x22meta45011\x22,\x22meta45011\x22,-1433770135,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45010\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45010.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45010\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45010.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45010 \x3d (function cljs$spec$alpha$map_spec_impl_$___GT_t_cljs$spec$alpha45010(keys__GT_specnames__$1,opt__$1,req_un__$1,opt_un__$1,gfn__$1,pred_exprs__$1,keys_pred__$1,argm__$1,map__45005__$2,opt_keys__$1,req_specs__$1,p__45004__$1,req__$1,id__$1,req_keys__$1,opt_specs__$1,k__GT_s__$1,pred_forms__$1,meta45011){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45010(keys__GT_specnames__$1,opt__$1,req_un__$1,opt_un__$1,gfn__$1,pred_exprs__$1,keys_pred__$1,argm__$1,map__45005__$2,opt_keys__$1,req_specs__$1,p__45004__$1,req__$1,id__$1,req_keys__$1,opt_specs__$1,k__GT_s__$1,pred_forms__$1,meta45011));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45010(keys__GT_specnames,opt,req_un,opt_un,gfn,pred_exprs,keys_pred,argm,map__45005__$1,opt_keys,req_specs,p__45004,req,id,req_keys,opt_specs,k__GT_s,pred_forms,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Do not call this directly, use \x27spec\x27\n */\ncljs.spec.alpha.spec_impl \x3d (function cljs$spec$alpha$spec_impl(var_args){\nvar G__45115 \x3d arguments.length;\nswitch (G__45115) {\ncase 4:\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4 \x3d (function (form,pred,gfn,cpred_QMARK_){\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5(form,pred,gfn,cpred_QMARK_,null);\n}));\n\n(cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5 \x3d (function (form,pred,gfn,cpred_QMARK_,unc){\nif(cljs.core.truth_(cljs.spec.alpha.spec_QMARK_(pred))){\nvar G__45116 \x3d pred;\nif(cljs.core.truth_(gfn)){\nreturn cljs.spec.alpha.with_gen(G__45116,gfn);\n} else {\nreturn G__45116;\n}\n} else {\nif(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(pred))){\nreturn cljs.spec.alpha.regex_spec_impl(pred,gfn);\n} else {\nif(cljs.core.ident_QMARK_(pred)){\nvar G__45117 \x3d cljs.spec.alpha.the_spec(pred);\nif(cljs.core.truth_(gfn)){\nreturn cljs.spec.alpha.with_gen(G__45117,gfn);\n} else {\nreturn G__45117;\n}\n} else {\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45118 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45118 \x3d (function (form,pred,gfn,cpred_QMARK_,unc,meta45119){\nthis.form \x3d form;\nthis.pred \x3d pred;\nthis.gfn \x3d gfn;\nthis.cpred_QMARK_ \x3d cpred_QMARK_;\nthis.unc \x3d unc;\nthis.meta45119 \x3d meta45119;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45120,meta45119__$1){\nvar self__ \x3d this;\nvar _45120__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45118(self__.form,self__.pred,self__.gfn,self__.cpred_QMARK_,self__.unc,meta45119__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45120){\nvar self__ \x3d this;\nvar _45120__$1 \x3d this;\nreturn self__.meta45119;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar ret \x3d (self__.pred.cljs$core$IFn$_invoke$arity$1 ? self__.pred.cljs$core$IFn$_invoke$arity$1(x) : self__.pred.call(null,x));\nif(cljs.core.truth_(self__.cpred_QMARK_)){\nreturn ret;\n} else {\nif(cljs.core.truth_(ret)){\nreturn x;\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.cpred_QMARK_)){\nif(cljs.core.truth_(self__.unc)){\nreturn (self__.unc.cljs$core$IFn$_invoke$arity$1 ? self__.unc.cljs$core$IFn$_invoke$arity$1(x) : self__.unc.call(null,x));\n} else {\nthrow (new Error(\x22no unform fn for conformer\x22));\n}\n} else {\nreturn x;\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4(self__.pred,x,self__.form,self__.cpred_QMARK_))){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),self__.form,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nreturn null;\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,___$1,___$2,___$3){\nvar self__ \x3d this;\nvar ___$4 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nreturn cljs.spec.gen.alpha.gen_for_pred(self__.pred);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5(self__.form,self__.pred,gfn__$1,self__.cpred_QMARK_,self__.unc);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.form;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null),new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22cpred?\x22,\x22cpred?\x22,35589515,null),new cljs.core.Symbol(null,\x22unc\x22,\x22unc\x22,-465250751,null),new cljs.core.Symbol(null,\x22meta45119\x22,\x22meta45119\x22,533733085,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45118\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45118.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45118\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45118.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45118 \x3d (function cljs$spec$alpha$__GT_t_cljs$spec$alpha45118(form__$1,pred__$1,gfn__$1,cpred_QMARK___$1,unc__$1,meta45119){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45118(form__$1,pred__$1,gfn__$1,cpred_QMARK___$1,unc__$1,meta45119));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45118(form,pred,gfn,cpred_QMARK_,unc,cljs.core.PersistentArrayMap.EMPTY));\n\n}\n}\n}\n}));\n\n(cljs.spec.alpha.spec_impl.cljs$lang$maxFixedArity \x3d 5);\n\n/**\n * Do not call this directly, use \x27multi-spec\x27\n */\ncljs.spec.alpha.multi_spec_impl \x3d (function cljs$spec$alpha$multi_spec_impl(var_args){\nvar G__45196 \x3d arguments.length;\nswitch (G__45196) {\ncase 3:\nreturn cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$3 \x3d (function (form,mmvar,retag){\nreturn cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4(form,mmvar,retag,null);\n}));\n\n(cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4 \x3d (function (form,mmvar,retag,gfn){\nvar id \x3d cljs.core.random_uuid();\nvar predx \x3d (function (p1__45161_SHARP_){\nvar mm \x3d cljs.core.deref(mmvar);\nvar and__4149__auto__ \x3d cljs.core._get_method(mm,(function (){var fexpr__45220 \x3d cljs.core._dispatch_fn(mm);\nreturn (fexpr__45220.cljs$core$IFn$_invoke$arity$1 ? fexpr__45220.cljs$core$IFn$_invoke$arity$1(p1__45161_SHARP_) : fexpr__45220.call(null,p1__45161_SHARP_));\n})());\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (mm.cljs$core$IFn$_invoke$arity$1 ? mm.cljs$core$IFn$_invoke$arity$1(p1__45161_SHARP_) : mm.call(null,p1__45161_SHARP_));\n} else {\nreturn and__4149__auto__;\n}\n});\nvar dval \x3d (function (p1__45162_SHARP_){\nvar fexpr__45225 \x3d cljs.core._dispatch_fn(cljs.core.deref(mmvar));\nreturn (fexpr__45225.cljs$core$IFn$_invoke$arity$1 ? fexpr__45225.cljs$core$IFn$_invoke$arity$1(p1__45162_SHARP_) : fexpr__45225.call(null,p1__45162_SHARP_));\n});\nvar tag \x3d (((retag instanceof cljs.core.Keyword))?(function (p1__45163_SHARP_,p2__45164_SHARP_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__45163_SHARP_,retag,p2__45164_SHARP_);\n}):retag);\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45227 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45227 \x3d (function (form,mmvar,retag,gfn,id,predx,dval,tag,meta45228){\nthis.form \x3d form;\nthis.mmvar \x3d mmvar;\nthis.retag \x3d retag;\nthis.gfn \x3d gfn;\nthis.id \x3d id;\nthis.predx \x3d predx;\nthis.dval \x3d dval;\nthis.tag \x3d tag;\nthis.meta45228 \x3d meta45228;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45229,meta45228__$1){\nvar self__ \x3d this;\nvar _45229__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45227(self__.form,self__.mmvar,self__.retag,self__.gfn,self__.id,self__.predx,self__.dval,self__.tag,meta45228__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45229){\nvar self__ \x3d this;\nvar _45229__$1 \x3d this;\nreturn self__.meta45228;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar temp__5751__auto__ \x3d (self__.predx.cljs$core$IFn$_invoke$arity$1 ? self__.predx.cljs$core$IFn$_invoke$arity$1(x) : self__.predx.call(null,x));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar pred \x3d temp__5751__auto__;\nreturn cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred,x,self__.form);\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar temp__5751__auto__ \x3d (self__.predx.cljs$core$IFn$_invoke$arity$1 ? self__.predx.cljs$core$IFn$_invoke$arity$1(x) : self__.predx.call(null,x));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar pred \x3d temp__5751__auto__;\nreturn cljs.spec.alpha.unform(pred,x);\n} else {\nthrow (new Error([\x22No method of: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.form),\x22 for dispatch value: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((self__.dval.cljs$core$IFn$_invoke$arity$1 ? self__.dval.cljs$core$IFn$_invoke$arity$1(x) : self__.dval.call(null,x)))].join(\x27\x27)));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar dv \x3d (self__.dval.cljs$core$IFn$_invoke$arity$1 ? self__.dval.cljs$core$IFn$_invoke$arity$1(x) : self__.dval.call(null,x));\nvar path__$1 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,dv);\nvar temp__5751__auto__ \x3d (self__.predx.cljs$core$IFn$_invoke$arity$1 ? self__.predx.cljs$core$IFn$_invoke$arity$1(x) : self__.predx.call(null,x));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar pred \x3d temp__5751__auto__;\nreturn cljs.spec.alpha.explain_1(self__.form,pred,path__$1,via,in$,x);\n} else {\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path__$1,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),self__.form,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),\x22no method\x22,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nvar gen \x3d (function (p__45246){\nvar vec__45247 \x3d p__45246;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45247,(0),null);\nvar f \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45247,(1),null);\nvar p \x3d (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(null) : f.call(null,null));\nvar rmap__$1 \x3d cljs.spec.alpha.inck(rmap,self__.id);\nif(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,self__.id,path,k)){\nreturn null;\n} else {\nreturn cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__45174_SHARP_){\nreturn (self__.tag.cljs$core$IFn$_invoke$arity$2 ? self__.tag.cljs$core$IFn$_invoke$arity$2(p1__45174_SHARP_,k) : self__.tag.call(null,p1__45174_SHARP_,k));\n}),cljs.spec.alpha.gensub(p,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method\x22,\x22method\x22,1696235119,null),(new cljs.core.List(null,self__.form,(new cljs.core.List(null,k,null,(1),null)),(2),null)),(3),null)))], 0));\n}),null)));\n}\n});\nvar gs \x3d cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$2(gen,cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p__45254){\nvar vec__45255 \x3d p__45254;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45255,(0),null);\nreturn cljs.spec.alpha.invalid_QMARK_(k);\n}),cljs.core.methods$(cljs.core.deref(self__.mmvar)))));\nif(cljs.core.every_QMARK_(cljs.core.identity,gs)){\nreturn cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gs], 0));\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.multi_spec_impl.cljs$core$IFn$_invoke$arity$4(self__.form,self__.mmvar,self__.retag,gfn__$1);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22multi-spec\x22,\x22cljs.spec.alpha/multi-spec\x22,175821274,null),null,(1),null)),(new cljs.core.List(null,self__.form,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,self__.retag,null,(1),null))], 0))));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null),new cljs.core.Symbol(null,\x22mmvar\x22,\x22mmvar\x22,-1714325675,null),new cljs.core.Symbol(null,\x22retag\x22,\x22retag\x22,528972725,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22id\x22,\x22id\x22,252129435,null),new cljs.core.Symbol(null,\x22predx\x22,\x22predx\x22,2063470948,null),new cljs.core.Symbol(null,\x22dval\x22,\x22dval\x22,835211877,null),new cljs.core.Symbol(null,\x22tag\x22,\x22tag\x22,350170304,null),new cljs.core.Symbol(null,\x22meta45228\x22,\x22meta45228\x22,-1259681023,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45227\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45227.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45227\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45227.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45227 \x3d (function cljs$spec$alpha$__GT_t_cljs$spec$alpha45227(form__$1,mmvar__$1,retag__$1,gfn__$1,id__$1,predx__$1,dval__$1,tag__$1,meta45228){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45227(form__$1,mmvar__$1,retag__$1,gfn__$1,id__$1,predx__$1,dval__$1,tag__$1,meta45228));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45227(form,mmvar,retag,gfn,id,predx,dval,tag,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(cljs.spec.alpha.multi_spec_impl.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Do not call this directly, use \x27tuple\x27\n */\ncljs.spec.alpha.tuple_impl \x3d (function cljs$spec$alpha$tuple_impl(var_args){\nvar G__45274 \x3d arguments.length;\nswitch (G__45274) {\ncase 2:\nreturn cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$2 \x3d (function (forms,preds){\nreturn cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3(forms,preds,null);\n}));\n\n(cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3 \x3d (function (forms,preds,gfn){\nvar specs \x3d (new cljs.core.Delay((function (){\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.specize,preds,forms);\n}),null));\nvar cnt \x3d cljs.core.count(preds);\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45278 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45278 \x3d (function (forms,preds,gfn,specs,cnt,meta45279){\nthis.forms \x3d forms;\nthis.preds \x3d preds;\nthis.gfn \x3d gfn;\nthis.specs \x3d specs;\nthis.cnt \x3d cnt;\nthis.meta45279 \x3d meta45279;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45280,meta45279__$1){\nvar self__ \x3d this;\nvar _45280__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45278(self__.forms,self__.preds,self__.gfn,self__.specs,self__.cnt,meta45279__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45280){\nvar self__ \x3d this;\nvar _45280__$1 \x3d this;\nreturn self__.meta45279;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar specs__$1 \x3d cljs.core.deref(self__.specs);\nif((!(((cljs.core.vector_QMARK_(x)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(x),self__.cnt)))))){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar ret \x3d x;\nvar i \x3d (0);\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(i,self__.cnt)){\nreturn ret;\n} else {\nvar v \x3d (x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(i) : x.call(null,i));\nvar cv \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1(i) : specs__$1.call(null,i)),v);\nif(cljs.spec.alpha.invalid_QMARK_(cv)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar G__47798 \x3d (((cv \x3d\x3d\x3d v))?ret:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,i,cv));\nvar G__47799 \x3d (i + (1));\nret \x3d G__47798;\ni \x3d G__47799;\ncontinue;\n}\n}\nbreak;\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(((cljs.core.vector_QMARK_(x)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(x),cljs.core.count(self__.preds))))){\n} else {\nthrow (new Error(\x22Assert failed: (c/and (vector? x) (\x3d (count x) (count preds)))\x22));\n}\n\nvar ret \x3d x;\nvar i \x3d (0);\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(i,cljs.core.count(x))){\nreturn ret;\n} else {\nvar cv \x3d (x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(i) : x.call(null,i));\nvar v \x3d cljs.spec.alpha.unform((self__.preds.cljs$core$IFn$_invoke$arity$1 ? self__.preds.cljs$core$IFn$_invoke$arity$1(i) : self__.preds.call(null,i)),cv);\nvar G__47803 \x3d (((cv \x3d\x3d\x3d v))?ret:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,i,v));\nvar G__47804 \x3d (i + (1));\nret \x3d G__47803;\ni \x3d G__47804;\ncontinue;\n}\nbreak;\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((!(cljs.core.vector_QMARK_(x)))){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),new cljs.core.Symbol(\x22cljs.core\x22,\x22vector?\x22,\x22cljs.core/vector?\x22,-1550392028,null),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(x),cljs.core.count(self__.preds))){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3d\x22,\x22cljs.core/\x3d\x22,-1891498332,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22count\x22,\x22cljs.core/count\x22,-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.count(self__.preds),null,(1),null))], 0)))),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$4((function (i,form,pred){\nvar v \x3d (x.cljs$core$IFn$_invoke$arity$1 ? x.cljs$core$IFn$_invoke$arity$1(i) : x.call(null,i));\nif(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(pred,v)){\nreturn null;\n} else {\nreturn cljs.spec.alpha.explain_1(form,pred,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,i),via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i),v);\n}\n}),cljs.core.range.cljs$core$IFn$_invoke$arity$1(cljs.core.count(self__.preds)),self__.forms,self__.preds));\n\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nvar gen \x3d (function (i,p,f){\nreturn cljs.spec.alpha.gensub(p,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,i),rmap,f);\n});\nvar gs \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$4(gen,cljs.core.range.cljs$core$IFn$_invoke$arity$1(cljs.core.count(self__.preds)),self__.preds,self__.forms);\nif(cljs.core.every_QMARK_(cljs.core.identity,gs)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,gs);\n} else {\nreturn null;\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.tuple_impl.cljs$core$IFn$_invoke$arity$3(self__.forms,self__.preds,gfn__$1);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22tuple\x22,\x22cljs.spec.alpha/tuple\x22,-415901908,null),null,(1),null)),self__.forms)));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22forms\x22,\x22forms\x22,-608443419,null),new cljs.core.Symbol(null,\x22preds\x22,\x22preds\x22,150921777,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22specs\x22,\x22specs\x22,-1227865028,null),new cljs.core.Symbol(null,\x22cnt\x22,\x22cnt\x22,1924510325,null),new cljs.core.Symbol(null,\x22meta45279\x22,\x22meta45279\x22,-25856386,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45278\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45278.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45278\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45278.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45278 \x3d (function cljs$spec$alpha$__GT_t_cljs$spec$alpha45278(forms__$1,preds__$1,gfn__$1,specs__$1,cnt__$1,meta45279){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45278(forms__$1,preds__$1,gfn__$1,specs__$1,cnt__$1,meta45279));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45278(forms,preds,gfn,specs,cnt,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(cljs.spec.alpha.tuple_impl.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.spec.alpha.tagged_ret \x3d (function cljs$spec$alpha$tagged_ret(tag,ret){\nreturn (new cljs.core.MapEntry(tag,ret,null));\n});\n/**\n * Do not call this directly, use \x27or\x27\n */\ncljs.spec.alpha.or_spec_impl \x3d (function cljs$spec$alpha$or_spec_impl(keys,forms,preds,gfn){\nvar id \x3d cljs.core.random_uuid();\nvar kps \x3d cljs.core.zipmap(keys,preds);\nvar specs \x3d (new cljs.core.Delay((function (){\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.specize,preds,forms);\n}),null));\nvar cform \x3d (function (){var G__45304 \x3d cljs.core.count(preds);\nswitch (G__45304) {\ncase (2):\nreturn (function (x){\nvar specs__$1 \x3d cljs.core.deref(specs);\nvar ret \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret)){\nvar ret__$1 \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret__$1)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nreturn cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((1)) : keys.call(null,(1))),ret__$1);\n}\n} else {\nreturn cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((0)) : keys.call(null,(0))),ret);\n}\n});\n\nbreak;\ncase (3):\nreturn (function (x){\nvar specs__$1 \x3d cljs.core.deref(specs);\nvar ret \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret)){\nvar ret__$1 \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret__$1)){\nvar ret__$2 \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((2)) : specs__$1.call(null,(2))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret__$2)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nreturn cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((2)) : keys.call(null,(2))),ret__$2);\n}\n} else {\nreturn cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((1)) : keys.call(null,(1))),ret__$1);\n}\n} else {\nreturn cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1((0)) : keys.call(null,(0))),ret);\n}\n});\n\nbreak;\ndefault:\nreturn (function (x){\nvar specs__$1 \x3d cljs.core.deref(specs);\nvar i \x3d (0);\nwhile(true){\nif((i \x3c cljs.core.count(specs__$1))){\nvar spec \x3d (specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1(i) : specs__$1.call(null,i));\nvar ret \x3d cljs.spec.alpha.conform_STAR_(spec,x);\nif(cljs.spec.alpha.invalid_QMARK_(ret)){\nvar G__47869 \x3d (i + (1));\ni \x3d G__47869;\ncontinue;\n} else {\nreturn cljs.spec.alpha.tagged_ret((keys.cljs$core$IFn$_invoke$arity$1 ? keys.cljs$core$IFn$_invoke$arity$1(i) : keys.call(null,i)),ret);\n}\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\nbreak;\n}\n});\n\n}\n})();\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45336 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45336 \x3d (function (keys,forms,preds,gfn,id,kps,specs,cform,meta45337){\nthis.keys \x3d keys;\nthis.forms \x3d forms;\nthis.preds \x3d preds;\nthis.gfn \x3d gfn;\nthis.id \x3d id;\nthis.kps \x3d kps;\nthis.specs \x3d specs;\nthis.cform \x3d cform;\nthis.meta45337 \x3d meta45337;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45338,meta45337__$1){\nvar self__ \x3d this;\nvar _45338__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45336(self__.keys,self__.forms,self__.preds,self__.gfn,self__.id,self__.kps,self__.specs,self__.cform,meta45337__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45338){\nvar self__ \x3d this;\nvar _45338__$1 \x3d this;\nreturn self__.meta45337;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (self__.cform.cljs$core$IFn$_invoke$arity$1 ? self__.cform.cljs$core$IFn$_invoke$arity$1(x) : self__.cform.call(null,x));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,p__45355){\nvar self__ \x3d this;\nvar vec__45356 \x3d p__45355;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45356,(0),null);\nvar x \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45356,(1),null);\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.unform((self__.kps.cljs$core$IFn$_invoke$arity$1 ? self__.kps.cljs$core$IFn$_invoke$arity$1(k) : self__.kps.call(null,k)),x);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (this$,path,via,in$,x){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(this$__$1,x)){\nreturn null;\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$4((function (k,form,pred){\nif(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(pred,x)){\nreturn null;\n} else {\nreturn cljs.spec.alpha.explain_1(form,pred,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),via,in$,x);\n}\n}),self__.keys,self__.forms,self__.preds));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nvar gen \x3d (function (k,p,f){\nvar rmap__$1 \x3d cljs.spec.alpha.inck(rmap,self__.id);\nif(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,self__.id,path,k)){\nreturn null;\n} else {\nreturn cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){\nreturn cljs.spec.alpha.gensub(p,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k),rmap__$1,f);\n}),null)));\n}\n});\nvar gs \x3d cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$4(gen,self__.keys,self__.preds,self__.forms));\nif(cljs.core.empty_QMARK_(gs)){\nreturn null;\n} else {\nreturn cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gs], 0));\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (cljs.spec.alpha.or_spec_impl.cljs$core$IFn$_invoke$arity$4 ? cljs.spec.alpha.or_spec_impl.cljs$core$IFn$_invoke$arity$4(self__.keys,self__.forms,self__.preds,gfn__$1) : cljs.spec.alpha.or_spec_impl.call(null,self__.keys,self__.forms,self__.preds,gfn__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22or\x22,\x22cljs.spec.alpha/or\x22,-831679639,null),null,(1),null)),cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.vector,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.keys,self__.forms], 0)))));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null),new cljs.core.Symbol(null,\x22forms\x22,\x22forms\x22,-608443419,null),new cljs.core.Symbol(null,\x22preds\x22,\x22preds\x22,150921777,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22id\x22,\x22id\x22,252129435,null),new cljs.core.Symbol(null,\x22kps\x22,\x22kps\x22,-1157342767,null),new cljs.core.Symbol(null,\x22specs\x22,\x22specs\x22,-1227865028,null),new cljs.core.Symbol(null,\x22cform\x22,\x22cform\x22,1319506748,null),new cljs.core.Symbol(null,\x22meta45337\x22,\x22meta45337\x22,958857471,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45336\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45336.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45336\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45336.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45336 \x3d (function cljs$spec$alpha$or_spec_impl_$___GT_t_cljs$spec$alpha45336(keys__$1,forms__$1,preds__$1,gfn__$1,id__$1,kps__$1,specs__$1,cform__$1,meta45337){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45336(keys__$1,forms__$1,preds__$1,gfn__$1,id__$1,kps__$1,specs__$1,cform__$1,meta45337));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45336(keys,forms,preds,gfn,id,kps,specs,cform,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.spec.alpha.and_preds \x3d (function cljs$spec$alpha$and_preds(x,preds,forms){\nvar ret \x3d x;\nvar G__45384 \x3d preds;\nvar vec__45387 \x3d G__45384;\nvar seq__45388 \x3d cljs.core.seq(vec__45387);\nvar first__45389 \x3d cljs.core.first(seq__45388);\nvar seq__45388__$1 \x3d cljs.core.next(seq__45388);\nvar pred \x3d first__45389;\nvar preds__$1 \x3d seq__45388__$1;\nvar G__45385 \x3d forms;\nvar vec__45390 \x3d G__45385;\nvar seq__45391 \x3d cljs.core.seq(vec__45390);\nvar first__45392 \x3d cljs.core.first(seq__45391);\nvar seq__45391__$1 \x3d cljs.core.next(seq__45391);\nvar form \x3d first__45392;\nvar forms__$1 \x3d seq__45391__$1;\nvar ret__$1 \x3d ret;\nvar G__45384__$1 \x3d G__45384;\nvar G__45385__$1 \x3d G__45385;\nwhile(true){\nvar ret__$2 \x3d ret__$1;\nvar vec__45400 \x3d G__45384__$1;\nvar seq__45401 \x3d cljs.core.seq(vec__45400);\nvar first__45402 \x3d cljs.core.first(seq__45401);\nvar seq__45401__$1 \x3d cljs.core.next(seq__45401);\nvar pred__$1 \x3d first__45402;\nvar preds__$2 \x3d seq__45401__$1;\nvar vec__45404 \x3d G__45385__$1;\nvar seq__45405 \x3d cljs.core.seq(vec__45404);\nvar first__45406 \x3d cljs.core.first(seq__45405);\nvar seq__45405__$1 \x3d cljs.core.next(seq__45405);\nvar form__$1 \x3d first__45406;\nvar forms__$2 \x3d seq__45405__$1;\nif(cljs.core.truth_(pred__$1)){\nvar nret \x3d cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred__$1,ret__$2,form__$1);\nif(cljs.spec.alpha.invalid_QMARK_(nret)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar G__47953 \x3d nret;\nvar G__47954 \x3d preds__$2;\nvar G__47955 \x3d forms__$2;\nret__$1 \x3d G__47953;\nG__45384__$1 \x3d G__47954;\nG__45385__$1 \x3d G__47955;\ncontinue;\n}\n} else {\nreturn ret__$2;\n}\nbreak;\n}\n});\ncljs.spec.alpha.explain_pred_list \x3d (function cljs$spec$alpha$explain_pred_list(forms,preds,path,via,in$,x){\nvar ret \x3d x;\nvar G__45417 \x3d forms;\nvar vec__45419 \x3d G__45417;\nvar seq__45420 \x3d cljs.core.seq(vec__45419);\nvar first__45421 \x3d cljs.core.first(seq__45420);\nvar seq__45420__$1 \x3d cljs.core.next(seq__45420);\nvar form \x3d first__45421;\nvar forms__$1 \x3d seq__45420__$1;\nvar G__45418 \x3d preds;\nvar vec__45422 \x3d G__45418;\nvar seq__45423 \x3d cljs.core.seq(vec__45422);\nvar first__45424 \x3d cljs.core.first(seq__45423);\nvar seq__45423__$1 \x3d cljs.core.next(seq__45423);\nvar pred \x3d first__45424;\nvar preds__$1 \x3d seq__45423__$1;\nvar ret__$1 \x3d ret;\nvar G__45417__$1 \x3d G__45417;\nvar G__45418__$1 \x3d G__45418;\nwhile(true){\nvar ret__$2 \x3d ret__$1;\nvar vec__45427 \x3d G__45417__$1;\nvar seq__45428 \x3d cljs.core.seq(vec__45427);\nvar first__45429 \x3d cljs.core.first(seq__45428);\nvar seq__45428__$1 \x3d cljs.core.next(seq__45428);\nvar form__$1 \x3d first__45429;\nvar forms__$2 \x3d seq__45428__$1;\nvar vec__45430 \x3d G__45418__$1;\nvar seq__45431 \x3d cljs.core.seq(vec__45430);\nvar first__45432 \x3d cljs.core.first(seq__45431);\nvar seq__45431__$1 \x3d cljs.core.next(seq__45431);\nvar pred__$1 \x3d first__45432;\nvar preds__$2 \x3d seq__45431__$1;\nif(cljs.core.truth_(pred__$1)){\nvar nret \x3d cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(pred__$1,ret__$2,form__$1);\nif(cljs.spec.alpha.invalid_QMARK_(nret)){\nreturn cljs.spec.alpha.explain_1(form__$1,pred__$1,path,via,in$,ret__$2);\n} else {\nvar G__47969 \x3d nret;\nvar G__47970 \x3d forms__$2;\nvar G__47971 \x3d preds__$2;\nret__$1 \x3d G__47969;\nG__45417__$1 \x3d G__47970;\nG__45418__$1 \x3d G__47971;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\n/**\n * Do not call this directly, use \x27and\x27\n */\ncljs.spec.alpha.and_spec_impl \x3d (function cljs$spec$alpha$and_spec_impl(forms,preds,gfn){\nvar specs \x3d (new cljs.core.Delay((function (){\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.specize,preds,forms);\n}),null));\nvar cform \x3d (function (){var G__45442 \x3d cljs.core.count(preds);\nswitch (G__45442) {\ncase (2):\nreturn (function (x){\nvar specs__$1 \x3d cljs.core.deref(specs);\nvar ret \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nreturn cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),ret);\n}\n});\n\nbreak;\ncase (3):\nreturn (function (x){\nvar specs__$1 \x3d cljs.core.deref(specs);\nvar ret \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((0)) : specs__$1.call(null,(0))),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar ret__$1 \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((1)) : specs__$1.call(null,(1))),ret);\nif(cljs.spec.alpha.invalid_QMARK_(ret__$1)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nreturn cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1((2)) : specs__$1.call(null,(2))),ret__$1);\n}\n}\n});\n\nbreak;\ndefault:\nreturn (function (x){\nvar specs__$1 \x3d cljs.core.deref(specs);\nvar ret \x3d x;\nvar i \x3d (0);\nwhile(true){\nif((i \x3c cljs.core.count(specs__$1))){\nvar nret \x3d cljs.spec.alpha.conform_STAR_((specs__$1.cljs$core$IFn$_invoke$arity$1 ? specs__$1.cljs$core$IFn$_invoke$arity$1(i) : specs__$1.call(null,i)),ret);\nif(cljs.spec.alpha.invalid_QMARK_(nret)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar G__47985 \x3d nret;\nvar G__47986 \x3d (i + (1));\nret \x3d G__47985;\ni \x3d G__47986;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n});\n\n}\n})();\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45453 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45453 \x3d (function (forms,preds,gfn,specs,cform,meta45454){\nthis.forms \x3d forms;\nthis.preds \x3d preds;\nthis.gfn \x3d gfn;\nthis.specs \x3d specs;\nthis.cform \x3d cform;\nthis.meta45454 \x3d meta45454;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45455,meta45454__$1){\nvar self__ \x3d this;\nvar _45455__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45453(self__.forms,self__.preds,self__.gfn,self__.specs,self__.cform,meta45454__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45455){\nvar self__ \x3d this;\nvar _45455__$1 \x3d this;\nreturn self__.meta45454;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (self__.cform.cljs$core$IFn$_invoke$arity$1 ? self__.cform.cljs$core$IFn$_invoke$arity$1(x) : self__.cform.call(null,x));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__45437_SHARP_,p2__45436_SHARP_){\nreturn cljs.spec.alpha.unform(p2__45436_SHARP_,p1__45437_SHARP_);\n}),x,cljs.core.reverse(self__.preds));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.explain_pred_list(self__.forms,self__.preds,path,via,in$,x);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nreturn cljs.spec.alpha.gensub(cljs.core.first(self__.preds),overrides,path,rmap,cljs.core.first(self__.forms));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (cljs.spec.alpha.and_spec_impl.cljs$core$IFn$_invoke$arity$3 ? cljs.spec.alpha.and_spec_impl.cljs$core$IFn$_invoke$arity$3(self__.forms,self__.preds,gfn__$1) : cljs.spec.alpha.and_spec_impl.call(null,self__.forms,self__.preds,gfn__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22and\x22,\x22cljs.spec.alpha/and\x22,-2060279705,null),null,(1),null)),self__.forms)));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22forms\x22,\x22forms\x22,-608443419,null),new cljs.core.Symbol(null,\x22preds\x22,\x22preds\x22,150921777,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22specs\x22,\x22specs\x22,-1227865028,null),new cljs.core.Symbol(null,\x22cform\x22,\x22cform\x22,1319506748,null),new cljs.core.Symbol(null,\x22meta45454\x22,\x22meta45454\x22,-472167919,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45453\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45453.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45453\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45453.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45453 \x3d (function cljs$spec$alpha$and_spec_impl_$___GT_t_cljs$spec$alpha45453(forms__$1,preds__$1,gfn__$1,specs__$1,cform__$1,meta45454){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45453(forms__$1,preds__$1,gfn__$1,specs__$1,cform__$1,meta45454));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45453(forms,preds,gfn,specs,cform,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.spec.alpha.coll_prob \x3d (function cljs$spec$alpha$coll_prob(x,kfn,kform,distinct,count,min_count,max_count,path,via,in$){\nvar pred \x3d (function (){var or__4160__auto__ \x3d kfn;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.coll_QMARK_;\n}\n})();\nvar kform__$1 \x3d (function (){var or__4160__auto__ \x3d kform;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Symbol(\x22cljs.core\x22,\x22coll?\x22,\x22cljs.core/coll?\x22,1208130522,null);\n}\n})();\nif((!(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(pred,x)))){\nreturn cljs.spec.alpha.explain_1(kform__$1,pred,path,via,in$,x);\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d count;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(count,cljs.core.bounded_count(count,x));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3d\x22,\x22cljs.core/\x3d\x22,-1891498332,null),null,(1),null)),(new cljs.core.List(null,count,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22count\x22,\x22cljs.core/count\x22,-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null))))),null,(1),null))], 0)))),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d (function (){var or__4160__auto__ \x3d min_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn max_count;\n}\n})();\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (!(((((function (){var or__4160__auto__ \x3d min_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})() \x3c\x3d cljs.core.bounded_count((cljs.core.truth_(max_count)?(max_count + (1)):min_count),x))) \x26\x26 ((cljs.core.bounded_count((cljs.core.truth_(max_count)?(max_count + (1)):min_count),x) \x3c\x3d (function (){var or__4160__auto__ \x3d max_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (9007199254740991);\n}\n})())))));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3c\x3d\x22,\x22cljs.core/\x3c\x3d\x22,1677001748,null),null,(1),null)),(new cljs.core.List(null,(function (){var or__4160__auto__ \x3d min_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})(),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22count\x22,\x22cljs.core/count\x22,-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,(function (){var or__4160__auto__ \x3d max_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (9007199254740991);\n}\n})(),null,(1),null))], 0)))),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d distinct;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (((!(cljs.core.empty_QMARK_(x)))) \x26\x26 (cljs.core.not(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.distinct_QMARK_,x))));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),new cljs.core.Symbol(null,\x22distinct?\x22,\x22distinct?\x22,-1684357959,null),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nreturn null;\n}\n}\n}\n}\n});\n/**\n * Do not call this directly, use \x27merge\x27\n */\ncljs.spec.alpha.merge_spec_impl \x3d (function cljs$spec$alpha$merge_spec_impl(forms,preds,gfn){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45552 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45552 \x3d (function (forms,preds,gfn,meta45553){\nthis.forms \x3d forms;\nthis.preds \x3d preds;\nthis.gfn \x3d gfn;\nthis.meta45553 \x3d meta45553;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45554,meta45553__$1){\nvar self__ \x3d this;\nvar _45554__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45552(self__.forms,self__.preds,self__.gfn,meta45553__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45554){\nvar self__ \x3d this;\nvar _45554__$1 \x3d this;\nreturn self__.meta45553;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar ms \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__45539_SHARP_,p2__45540_SHARP_){\nreturn cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(p1__45539_SHARP_,x,p2__45540_SHARP_);\n}),self__.preds,self__.forms);\nif(cljs.core.truth_(cljs.core.some(cljs.spec.alpha.invalid_QMARK_,ms))){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.merge,ms);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.merge,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__45542_SHARP_){\nreturn cljs.spec.alpha.unform(p1__45542_SHARP_,x);\n}),cljs.core.reverse(self__.preds)));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__45543_SHARP_,p2__45544_SHARP_){\nreturn cljs.spec.alpha.explain_1(p1__45543_SHARP_,p2__45544_SHARP_,path,via,in$,x);\n}),self__.forms,self__.preds));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__45545_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.merge,p1__45545_SHARP_);\n}),cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.tuple,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (p1__45546_SHARP_,p2__45547_SHARP_){\nreturn cljs.spec.alpha.gensub(p1__45546_SHARP_,overrides,path,rmap,p2__45547_SHARP_);\n}),self__.preds,self__.forms))], 0));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (cljs.spec.alpha.merge_spec_impl.cljs$core$IFn$_invoke$arity$3 ? cljs.spec.alpha.merge_spec_impl.cljs$core$IFn$_invoke$arity$3(self__.forms,self__.preds,gfn__$1) : cljs.spec.alpha.merge_spec_impl.call(null,self__.forms,self__.preds,gfn__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22merge\x22,\x22cljs.spec.alpha/merge\x22,1420080689,null),null,(1),null)),self__.forms)));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22forms\x22,\x22forms\x22,-608443419,null),new cljs.core.Symbol(null,\x22preds\x22,\x22preds\x22,150921777,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22meta45553\x22,\x22meta45553\x22,328758023,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45552\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45552.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45552\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45552.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45552 \x3d (function cljs$spec$alpha$merge_spec_impl_$___GT_t_cljs$spec$alpha45552(forms__$1,preds__$1,gfn__$1,meta45553){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45552(forms__$1,preds__$1,gfn__$1,meta45553));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45552(forms,preds,gfn,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.spec.alpha.empty_coll \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Symbol(\x22cljs.core\x22,\x22vector?\x22,\x22cljs.core/vector?\x22,-1550392028,null),cljs.core.PersistentVector.EMPTY,new cljs.core.Symbol(\x22cljs.core\x22,\x22set?\x22,\x22cljs.core/set?\x22,-1176684971,null),cljs.core.PersistentHashSet.EMPTY,new cljs.core.Symbol(\x22cljs.core\x22,\x22list?\x22,\x22cljs.core/list?\x22,-684796618,null),cljs.core.List.EMPTY,new cljs.core.Symbol(\x22cljs.core\x22,\x22map?\x22,\x22cljs.core/map?\x22,-1390345523,null),cljs.core.PersistentArrayMap.EMPTY], null);\n/**\n * Do not call this directly, use \x27every\x27, \x27every-kv\x27, \x27coll-of\x27 or \x27map-of\x27\n */\ncljs.spec.alpha.every_impl \x3d (function cljs$spec$alpha$every_impl(var_args){\nvar G__45609 \x3d arguments.length;\nswitch (G__45609) {\ncase 3:\nreturn cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$3 \x3d (function (form,pred,opts){\nreturn cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4(form,pred,opts,null);\n}));\n\n(cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4 \x3d (function (form,pred,p__45612,gfn){\nvar map__45618 \x3d p__45612;\nvar map__45618__$1 \x3d cljs.core.__destructure_map(map__45618);\nvar opts \x3d map__45618__$1;\nvar max_count \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22max-count\x22,\x22max-count\x22,1539185305));\nvar kind_form \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22kind-form\x22,\x22cljs.spec.alpha/kind-form\x22,-1047104697));\nvar gen_max \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__45618__$1,new cljs.core.Keyword(null,\x22gen-max\x22,\x22gen-max\x22,-793680445),(20));\nvar cpred \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22cpred\x22,\x22cljs.spec.alpha/cpred\x22,-693471218));\nvar conform_keys \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22conform-keys\x22,\x22conform-keys\x22,-1800041814));\nvar describe_form \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22describe\x22,\x22cljs.spec.alpha/describe\x22,1883026911));\nvar distinct \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22distinct\x22,\x22distinct\x22,-1788879121));\nvar kfn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22kfn\x22,\x22cljs.spec.alpha/kfn\x22,672643897));\nvar count \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22count\x22,\x22count\x22,2139924085));\nvar min_count \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22min-count\x22,\x22min-count\x22,1594709013));\nvar kind \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22kind\x22,\x22kind\x22,-717265803));\nvar conform_all \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22conform-all\x22,\x22cljs.spec.alpha/conform-all\x22,45201917));\nvar conform_into \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45618__$1,new cljs.core.Keyword(null,\x22into\x22,\x22into\x22,-150836029));\nvar gen_into \x3d (cljs.core.truth_(conform_into)?cljs.core.empty(conform_into):cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.empty_coll,kind_form));\nvar spec \x3d (new cljs.core.Delay((function (){\nreturn cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(pred);\n}),null));\nvar check_QMARK_ \x3d (function (p1__45598_SHARP_){\nreturn cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(spec),p1__45598_SHARP_);\n});\nvar kfn__$1 \x3d (function (){var or__4160__auto__ \x3d kfn;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (function (i,v){\nreturn i;\n});\n}\n})();\nvar addcv \x3d (function (ret,i,v,cv){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,cv);\n});\nvar cfns \x3d (function (x){\nif(((cljs.core.vector_QMARK_(x)) \x26\x26 (((cljs.core.not(conform_into)) || (cljs.core.vector_QMARK_(conform_into)))))){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.identity,(function (ret,i,v,cv){\nif((v \x3d\x3d\x3d cv)){\nreturn ret;\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,i,cv);\n}\n}),cljs.core.identity], null);\n} else {\nif(cljs.core.truth_(((cljs.core.map_QMARK_(x))?(function (){var or__4160__auto__ \x3d (function (){var and__4149__auto__ \x3d kind;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not(conform_into);\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.map_QMARK_(conform_into);\n}\n})():false))){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(cljs.core.truth_(conform_keys)?cljs.core.empty:cljs.core.identity),(function (ret,i,v,cv){\nif((((v \x3d\x3d\x3d cv)) \x26\x26 (cljs.core.not(conform_keys)))){\nreturn ret;\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,cljs.core.nth.cljs$core$IFn$_invoke$arity$2((cljs.core.truth_(conform_keys)?cv:v),(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(cv,(1)));\n}\n}),cljs.core.identity], null);\n} else {\nif(((cljs.core.list_QMARK_(conform_into)) || (cljs.core.seq_QMARK_(conform_into)) || (((cljs.core.not(conform_into)) \x26\x26 (((cljs.core.list_QMARK_(x)) || (cljs.core.seq_QMARK_(x)))))))){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.empty,addcv,cljs.core.reverse], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [(function (p1__45599_SHARP_){\nreturn cljs.core.empty((function (){var or__4160__auto__ \x3d conform_into;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn p1__45599_SHARP_;\n}\n})());\n}),addcv,cljs.core.identity], null);\n\n}\n}\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha45686 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha45686 \x3d (function (form,max_count,p__45612,check_QMARK_,gfn,gen_max,pred,cpred,conform_keys,map__45618,kind_form,addcv,cfns,describe_form,distinct,spec,kfn,gen_into,count,min_count,opts,kind,conform_all,conform_into,meta45687){\nthis.form \x3d form;\nthis.max_count \x3d max_count;\nthis.p__45612 \x3d p__45612;\nthis.check_QMARK_ \x3d check_QMARK_;\nthis.gfn \x3d gfn;\nthis.gen_max \x3d gen_max;\nthis.pred \x3d pred;\nthis.cpred \x3d cpred;\nthis.conform_keys \x3d conform_keys;\nthis.map__45618 \x3d map__45618;\nthis.kind_form \x3d kind_form;\nthis.addcv \x3d addcv;\nthis.cfns \x3d cfns;\nthis.describe_form \x3d describe_form;\nthis.distinct \x3d distinct;\nthis.spec \x3d spec;\nthis.kfn \x3d kfn;\nthis.gen_into \x3d gen_into;\nthis.count \x3d count;\nthis.min_count \x3d min_count;\nthis.opts \x3d opts;\nthis.kind \x3d kind;\nthis.conform_all \x3d conform_all;\nthis.conform_into \x3d conform_into;\nthis.meta45687 \x3d meta45687;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_45688,meta45687__$1){\nvar self__ \x3d this;\nvar _45688__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45686(self__.form,self__.max_count,self__.p__45612,self__.check_QMARK_,self__.gfn,self__.gen_max,self__.pred,self__.cpred,self__.conform_keys,self__.map__45618,self__.kind_form,self__.addcv,self__.cfns,self__.describe_form,self__.distinct,self__.spec,self__.kfn,self__.gen_into,self__.count,self__.min_count,self__.opts,self__.kind,self__.conform_all,self__.conform_into,meta45687__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_45688){\nvar self__ \x3d this;\nvar _45688__$1 \x3d this;\nreturn self__.meta45687;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar spec__$1 \x3d cljs.core.deref(self__.spec);\nif(cljs.core.not((self__.cpred.cljs$core$IFn$_invoke$arity$1 ? self__.cpred.cljs$core$IFn$_invoke$arity$1(x) : self__.cpred.call(null,x)))){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nif(cljs.core.truth_(self__.conform_all)){\nvar vec__45696 \x3d (self__.cfns.cljs$core$IFn$_invoke$arity$1 ? self__.cfns.cljs$core$IFn$_invoke$arity$1(x) : self__.cfns.call(null,x));\nvar init \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45696,(0),null);\nvar add \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45696,(1),null);\nvar complete \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45696,(2),null);\nvar ret \x3d (init.cljs$core$IFn$_invoke$arity$1 ? init.cljs$core$IFn$_invoke$arity$1(x) : init.call(null,x));\nvar i \x3d (0);\nvar G__45702 \x3d cljs.core.seq(x);\nvar vec__45703 \x3d G__45702;\nvar seq__45704 \x3d cljs.core.seq(vec__45703);\nvar first__45705 \x3d cljs.core.first(seq__45704);\nvar seq__45704__$1 \x3d cljs.core.next(seq__45704);\nvar v \x3d first__45705;\nvar vs \x3d seq__45704__$1;\nvar vseq \x3d vec__45703;\nvar ret__$1 \x3d ret;\nvar i__$1 \x3d i;\nvar G__45702__$1 \x3d G__45702;\nwhile(true){\nvar ret__$2 \x3d ret__$1;\nvar i__$2 \x3d i__$1;\nvar vec__45706 \x3d G__45702__$1;\nvar seq__45707 \x3d cljs.core.seq(vec__45706);\nvar first__45708 \x3d cljs.core.first(seq__45707);\nvar seq__45707__$1 \x3d cljs.core.next(seq__45707);\nvar v__$1 \x3d first__45708;\nvar vs__$1 \x3d seq__45707__$1;\nvar vseq__$1 \x3d vec__45706;\nif(vseq__$1){\nvar cv \x3d cljs.spec.alpha.conform_STAR_(spec__$1,v__$1);\nif(cljs.spec.alpha.invalid_QMARK_(cv)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nvar G__48143 \x3d (add.cljs$core$IFn$_invoke$arity$4 ? add.cljs$core$IFn$_invoke$arity$4(ret__$2,i__$2,v__$1,cv) : add.call(null,ret__$2,i__$2,v__$1,cv));\nvar G__48144 \x3d (i__$2 + (1));\nvar G__48145 \x3d vs__$1;\nret__$1 \x3d G__48143;\ni__$1 \x3d G__48144;\nG__45702__$1 \x3d G__48145;\ncontinue;\n}\n} else {\nreturn (complete.cljs$core$IFn$_invoke$arity$1 ? complete.cljs$core$IFn$_invoke$arity$1(ret__$2) : complete.call(null,ret__$2));\n}\nbreak;\n}\n} else {\nif(cljs.core.indexed_QMARK_(x)){\nvar step \x3d (function (){var x__4249__auto__ \x3d (1);\nvar y__4250__auto__ \x3d cljs.core.long$((cljs.core.count(x) / cljs.spec.alpha._STAR_coll_check_limit_STAR_));\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})();\nvar i \x3d (0);\nwhile(true){\nif((i \x3e\x3d cljs.core.count(x))){\nreturn x;\n} else {\nif(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(x,i))){\nvar G__48152 \x3d (i + step);\ni \x3d G__48152;\ncontinue;\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}\nbreak;\n}\n} else {\nvar limit \x3d cljs.spec.alpha._STAR_coll_check_limit_STAR_;\nvar i \x3d (0);\nvar G__45713 \x3d cljs.core.seq(x);\nvar vec__45716 \x3d G__45713;\nvar seq__45717 \x3d cljs.core.seq(vec__45716);\nvar first__45718 \x3d cljs.core.first(seq__45717);\nvar seq__45717__$1 \x3d cljs.core.next(seq__45717);\nvar v \x3d first__45718;\nvar vs \x3d seq__45717__$1;\nvar vseq \x3d vec__45716;\nvar i__$1 \x3d i;\nvar G__45713__$1 \x3d G__45713;\nwhile(true){\nvar i__$2 \x3d i__$1;\nvar vec__45719 \x3d G__45713__$1;\nvar seq__45720 \x3d cljs.core.seq(vec__45719);\nvar first__45721 \x3d cljs.core.first(seq__45720);\nvar seq__45720__$1 \x3d cljs.core.next(seq__45720);\nvar v__$1 \x3d first__45721;\nvar vs__$1 \x3d seq__45720__$1;\nvar vseq__$1 \x3d vec__45719;\nif((((vseq__$1 \x3d\x3d null)) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(i__$2,limit)))){\nreturn x;\n} else {\nif(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,v__$1)){\nvar G__48160 \x3d (i__$2 + (1));\nvar G__48161 \x3d vs__$1;\ni__$1 \x3d G__48160;\nG__45713__$1 \x3d G__48161;\ncontinue;\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n\n}\n}\nbreak;\n}\n}\n\n}\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.conform_all)){\nvar spec__$1 \x3d cljs.core.deref(self__.spec);\nvar vec__45725 \x3d (self__.cfns.cljs$core$IFn$_invoke$arity$1 ? self__.cfns.cljs$core$IFn$_invoke$arity$1(x) : self__.cfns.call(null,x));\nvar init \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45725,(0),null);\nvar add \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45725,(1),null);\nvar complete \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45725,(2),null);\nvar ret \x3d (init.cljs$core$IFn$_invoke$arity$1 ? init.cljs$core$IFn$_invoke$arity$1(x) : init.call(null,x));\nvar i \x3d (0);\nvar G__45731 \x3d cljs.core.seq(x);\nvar vec__45735 \x3d G__45731;\nvar seq__45736 \x3d cljs.core.seq(vec__45735);\nvar first__45737 \x3d cljs.core.first(seq__45736);\nvar seq__45736__$1 \x3d cljs.core.next(seq__45736);\nvar v \x3d first__45737;\nvar vs \x3d seq__45736__$1;\nvar vseq \x3d vec__45735;\nvar ret__$1 \x3d ret;\nvar i__$1 \x3d i;\nvar G__45731__$1 \x3d G__45731;\nwhile(true){\nvar ret__$2 \x3d ret__$1;\nvar i__$2 \x3d i__$1;\nvar vec__45738 \x3d G__45731__$1;\nvar seq__45739 \x3d cljs.core.seq(vec__45738);\nvar first__45740 \x3d cljs.core.first(seq__45739);\nvar seq__45739__$1 \x3d cljs.core.next(seq__45739);\nvar v__$1 \x3d first__45740;\nvar vs__$1 \x3d seq__45739__$1;\nvar vseq__$1 \x3d vec__45738;\nif((i__$2 \x3e\x3d cljs.core.count(x))){\nreturn (complete.cljs$core$IFn$_invoke$arity$1 ? complete.cljs$core$IFn$_invoke$arity$1(ret__$2) : complete.call(null,ret__$2));\n} else {\nvar G__48179 \x3d (function (){var G__45741 \x3d ret__$2;\nvar G__45742 \x3d i__$2;\nvar G__45743 \x3d v__$1;\nvar G__45744 \x3d cljs.spec.alpha.unform_STAR_(spec__$1,v__$1);\nreturn (add.cljs$core$IFn$_invoke$arity$4 ? add.cljs$core$IFn$_invoke$arity$4(G__45741,G__45742,G__45743,G__45744) : add.call(null,G__45741,G__45742,G__45743,G__45744));\n})();\nvar G__48180 \x3d (i__$2 + (1));\nvar G__48181 \x3d vs__$1;\nret__$1 \x3d G__48179;\ni__$1 \x3d G__48180;\nG__45731__$1 \x3d G__48181;\ncontinue;\n}\nbreak;\n}\n} else {\nreturn x;\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar or__4160__auto__ \x3d cljs.spec.alpha.coll_prob(x,self__.kind,self__.kind_form,self__.distinct,self__.count,self__.min_count,self__.max_count,path,via,in$);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,(function (){var G__45751 \x3d cljs.core.keep.cljs$core$IFn$_invoke$arity$2(cljs.core.identity,cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (i,v){\nvar k \x3d (self__.kfn.cljs$core$IFn$_invoke$arity$2 ? self__.kfn.cljs$core$IFn$_invoke$arity$2(i,v) : self__.kfn.call(null,i,v));\nif(cljs.core.truth_((self__.check_QMARK_.cljs$core$IFn$_invoke$arity$1 ? self__.check_QMARK_.cljs$core$IFn$_invoke$arity$1(v) : self__.check_QMARK_.call(null,v)))){\nreturn null;\n} else {\nvar prob \x3d cljs.spec.alpha.explain_1(self__.form,self__.pred,path,via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,k),v);\nreturn prob;\n}\n}),cljs.core.range.cljs$core$IFn$_invoke$arity$0(),x));\nvar fexpr__45750 \x3d (cljs.core.truth_(self__.conform_all)?cljs.core.identity:cljs.core.partial.cljs$core$IFn$_invoke$arity$2(cljs.core.take,cljs.spec.alpha._STAR_coll_error_limit_STAR_));\nreturn (fexpr__45750.cljs$core$IFn$_invoke$arity$1 ? fexpr__45750.cljs$core$IFn$_invoke$arity$1(G__45751) : fexpr__45750.call(null,G__45751));\n})());\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nvar pgen \x3d cljs.spec.alpha.gensub(self__.pred,overrides,path,rmap,self__.form);\nreturn cljs.spec.gen.alpha.bind.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(cljs.core.truth_(self__.gen_into)?cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.gen_into], 0)):(cljs.core.truth_(self__.kind)?cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__45603_SHARP_){\nif(cljs.core.empty_QMARK_(p1__45603_SHARP_)){\nreturn p1__45603_SHARP_;\n} else {\nreturn cljs.core.empty(p1__45603_SHARP_);\n}\n}),cljs.spec.alpha.gensub(self__.kind,overrides,path,rmap,self__.form)], 0)):cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentVector.EMPTY], 0))\n)),(function (init){\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__45604_SHARP_){\nif(cljs.core.vector_QMARK_(init)){\nreturn p1__45604_SHARP_;\n} else {\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(init,p1__45604_SHARP_);\n}\n}),(cljs.core.truth_(self__.distinct)?(cljs.core.truth_(self__.count)?cljs.spec.gen.alpha.vector_distinct.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22num-elements\x22,\x22num-elements\x22,1960422107),self__.count,new cljs.core.Keyword(null,\x22max-tries\x22,\x22max-tries\x22,-1824441792),(100)], null)], 0)):cljs.spec.gen.alpha.vector_distinct.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22min-elements\x22,\x22min-elements\x22,949370780),(function (){var or__4160__auto__ \x3d self__.min_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})(),new cljs.core.Keyword(null,\x22max-elements\x22,\x22max-elements\x22,433034073),(function (){var or__4160__auto__ \x3d self__.max_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar x__4249__auto__ \x3d self__.gen_max;\nvar y__4250__auto__ \x3d ((2) * (function (){var or__4160__auto____$1 \x3d self__.min_count;\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (0);\n}\n})());\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n}\n})(),new cljs.core.Keyword(null,\x22max-tries\x22,\x22max-tries\x22,-1824441792),(100)], null)], 0))):(cljs.core.truth_(self__.count)?cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,self__.count], 0)):(cljs.core.truth_((function (){var or__4160__auto__ \x3d self__.min_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn self__.max_count;\n}\n})())?cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,(function (){var or__4160__auto__ \x3d self__.min_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})(),(function (){var or__4160__auto__ \x3d self__.max_count;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar x__4249__auto__ \x3d self__.gen_max;\nvar y__4250__auto__ \x3d ((2) * (function (){var or__4160__auto____$1 \x3d self__.min_count;\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (0);\n}\n})());\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n}\n})()], 0)):cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([pgen,(0),self__.gen_max], 0))\n)))], 0));\n})], 0));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.every_impl.cljs$core$IFn$_invoke$arity$4(self__.form,self__.pred,self__.opts,gfn__$1);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar or__4160__auto__ \x3d self__.describe_form;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22every\x22,\x22cljs.spec.alpha/every\x22,123912744,null),null,(1),null)),(new cljs.core.List(null,self__.form,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.identity,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([self__.opts], 0))], 0))));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 25, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null),new cljs.core.Symbol(null,\x22max-count\x22,\x22max-count\x22,-1115250464,null),new cljs.core.Symbol(null,\x22p__45612\x22,\x22p__45612\x22,-1254770429,null),new cljs.core.Symbol(null,\x22check?\x22,\x22check?\x22,409539557,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22gen-max\x22,\x22gen-max\x22,846851082,null),new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22cpred\x22,\x22cpred\x22,-540353554,null),new cljs.core.Symbol(null,\x22conform-keys\x22,\x22conform-keys\x22,-159510287,null),new cljs.core.Symbol(null,\x22map__45618\x22,\x22map__45618\x22,-1634679087,null),new cljs.core.Symbol(null,\x22kind-form\x22,\x22kind-form\x22,1155997457,null),new cljs.core.Symbol(null,\x22addcv\x22,\x22addcv\x22,-1552991247,null),new cljs.core.Symbol(null,\x22cfns\x22,\x22cfns\x22,1335482066,null),new cljs.core.Symbol(null,\x22describe-form\x22,\x22describe-form\x22,-1410156588,null),new cljs.core.Symbol(null,\x22distinct\x22,\x22distinct\x22,-148347594,null),new cljs.core.Symbol(null,\x22spec\x22,\x22spec\x22,1988051928,null),new cljs.core.Symbol(null,\x22kfn\x22,\x22kfn\x22,729311001,null),new cljs.core.Symbol(null,\x22gen-into\x22,\x22gen-into\x22,592640985,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),new cljs.core.Symbol(null,\x22min-count\x22,\x22min-count\x22,-1059726756,null),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22conform-all\x22,\x22conform-all\x22,-980179459,null),new cljs.core.Symbol(null,\x22conform-into\x22,\x22conform-into\x22,-1039113729,null),new cljs.core.Symbol(null,\x22meta45687\x22,\x22meta45687\x22,-700156159,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha45686\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha45686.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha45686\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha45686.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha45686 \x3d (function cljs$spec$alpha$__GT_t_cljs$spec$alpha45686(form__$1,max_count__$1,p__45612__$1,check_QMARK___$1,gfn__$1,gen_max__$1,pred__$1,cpred__$1,conform_keys__$1,map__45618__$2,kind_form__$1,addcv__$1,cfns__$1,describe_form__$1,distinct__$1,spec__$1,kfn__$2,gen_into__$1,count__$1,min_count__$1,opts__$1,kind__$1,conform_all__$1,conform_into__$1,meta45687){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45686(form__$1,max_count__$1,p__45612__$1,check_QMARK___$1,gfn__$1,gen_max__$1,pred__$1,cpred__$1,conform_keys__$1,map__45618__$2,kind_form__$1,addcv__$1,cfns__$1,describe_form__$1,distinct__$1,spec__$1,kfn__$2,gen_into__$1,count__$1,min_count__$1,opts__$1,kind__$1,conform_all__$1,conform_into__$1,meta45687));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha45686(form,max_count,p__45612,check_QMARK_,gfn,gen_max,pred,cpred,conform_keys,map__45618__$1,kind_form,addcv,cfns,describe_form,distinct,spec,kfn__$1,gen_into,count,min_count,opts,kind,conform_all,conform_into,cljs.core.PersistentArrayMap.EMPTY));\n}));\n\n(cljs.spec.alpha.every_impl.cljs$lang$maxFixedArity \x3d 4);\n\ncljs.spec.alpha.accept \x3d (function cljs$spec$alpha$accept(x){\nreturn new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),x], null);\n});\ncljs.spec.alpha.accept_QMARK_ \x3d (function cljs$spec$alpha$accept_QMARK_(p__45783){\nvar map__45784 \x3d p__45783;\nvar map__45784__$1 \x3d cljs.core.__destructure_map(map__45784);\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45784__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),op);\n});\ncljs.spec.alpha.pcat_STAR_ \x3d (function cljs$spec$alpha$pcat_STAR_(p__45810){\nvar map__45813 \x3d p__45810;\nvar map__45813__$1 \x3d cljs.core.__destructure_map(map__45813);\nvar vec__45814 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45813__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar seq__45815 \x3d cljs.core.seq(vec__45814);\nvar first__45816 \x3d cljs.core.first(seq__45815);\nvar seq__45815__$1 \x3d cljs.core.next(seq__45815);\nvar p1 \x3d first__45816;\nvar pr \x3d seq__45815__$1;\nvar ps \x3d vec__45814;\nvar vec__45817 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45813__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar seq__45818 \x3d cljs.core.seq(vec__45817);\nvar first__45819 \x3d cljs.core.first(seq__45818);\nvar seq__45818__$1 \x3d cljs.core.next(seq__45818);\nvar k1 \x3d first__45819;\nvar kr \x3d seq__45818__$1;\nvar ks \x3d vec__45817;\nvar vec__45820 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45813__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar seq__45821 \x3d cljs.core.seq(vec__45820);\nvar first__45822 \x3d cljs.core.first(seq__45821);\nvar seq__45821__$1 \x3d cljs.core.next(seq__45821);\nvar f1 \x3d first__45822;\nvar fr \x3d seq__45821__$1;\nvar forms \x3d vec__45820;\nvar ret \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45813__$1,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814));\nvar rep_PLUS_ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__45813__$1,new cljs.core.Keyword(null,\x22rep+\x22,\x22rep+\x22,-281382396));\nif(cljs.core.every_QMARK_(cljs.core.identity,ps)){\nif(cljs.spec.alpha.accept_QMARK_(p1)){\nvar rp \x3d new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814).cljs$core$IFn$_invoke$arity$1(p1);\nvar ret__$1 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,(cljs.core.truth_(ks)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k1,rp]):rp));\nif(pr){\nvar G__45825 \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),pr,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942),kr,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),fr,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),ret__$1], null);\nreturn (cljs.spec.alpha.pcat_STAR_.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.pcat_STAR_.cljs$core$IFn$_invoke$arity$1(G__45825) : cljs.spec.alpha.pcat_STAR_.call(null,G__45825));\n} else {\nreturn cljs.spec.alpha.accept(ret__$1);\n}\n} else {\nreturn new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),ps,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),ret,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942),ks,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),forms,new cljs.core.Keyword(null,\x22rep+\x22,\x22rep+\x22,-281382396),rep_PLUS_], null);\n}\n} else {\nreturn null;\n}\n});\ncljs.spec.alpha.pcat \x3d (function cljs$spec$alpha$pcat(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48266 \x3d arguments.length;\nvar i__4772__auto___48267 \x3d (0);\nwhile(true){\nif((i__4772__auto___48267 \x3c len__4771__auto___48266)){\nargs__4777__auto__.push((arguments[i__4772__auto___48267]));\n\nvar G__48272 \x3d (i__4772__auto___48267 + (1));\ni__4772__auto___48267 \x3d G__48272;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.alpha.pcat.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.alpha.pcat.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ps){\nreturn cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),ps,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cljs.core.PersistentVector.EMPTY], null));\n}));\n\n(cljs.spec.alpha.pcat.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.alpha.pcat.cljs$lang$applyTo \x3d (function (seq45829){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq45829));\n}));\n\n/**\n * Do not call this directly, use \x27cat\x27\n */\ncljs.spec.alpha.cat_impl \x3d (function cljs$spec$alpha$cat_impl(ks,ps,forms){\nreturn cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942),ks,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),ps,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),forms,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cljs.core.PersistentArrayMap.EMPTY], null));\n});\ncljs.spec.alpha.rep_STAR_ \x3d (function cljs$spec$alpha$rep_STAR_(p1,p2,ret,splice,form){\nif(cljs.core.truth_(p1)){\nvar r \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),new cljs.core.Keyword(null,\x22p2\x22,\x22p2\x22,905500641),p2,new cljs.core.Keyword(null,\x22splice\x22,\x22splice\x22,449588165),splice,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),form,new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),cljs.core.random_uuid()], null);\nif(cljs.spec.alpha.accept_QMARK_(p1)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(r,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954),p2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814).cljs$core$IFn$_invoke$arity$1(p1))], 0));\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(r,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954),p1,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),ret], 0));\n}\n} else {\nreturn null;\n}\n});\n/**\n * Do not call this directly, use \x27*\x27\n */\ncljs.spec.alpha.rep_impl \x3d (function cljs$spec$alpha$rep_impl(form,p){\nreturn cljs.spec.alpha.rep_STAR_(p,p,cljs.core.PersistentVector.EMPTY,false,form);\n});\n/**\n * Do not call this directly, use \x27+\x27\n */\ncljs.spec.alpha.rep_PLUS_impl \x3d (function cljs$spec$alpha$rep_PLUS_impl(form,p){\nreturn cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p,cljs.spec.alpha.rep_STAR_(p,p,cljs.core.PersistentVector.EMPTY,true,form)], null),new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,form,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22*\x22,\x22cljs.spec.alpha/*\x22,-1238084288,null),null,(1),null)),(new cljs.core.List(null,form,null,(1),null))))),null,(1),null)))))),new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cljs.core.PersistentVector.EMPTY,new cljs.core.Keyword(null,\x22rep+\x22,\x22rep+\x22,-281382396),form], null));\n});\n/**\n * Do not call this directly, use \x27\x26\x27\n */\ncljs.spec.alpha.amp_impl \x3d (function cljs$spec$alpha$amp_impl(re,re_form,preds,pred_forms){\nreturn new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954),re,new cljs.core.Keyword(null,\x22amp\x22,\x22amp\x22,271690571),re_form,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),preds,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),pred_forms], null);\n});\ncljs.spec.alpha.filter_alt \x3d (function cljs$spec$alpha$filter_alt(ps,ks,forms,f){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d ks;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn forms;\n}\n})())){\nvar pks \x3d cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__45856_SHARP_){\nvar G__45858 \x3d cljs.core.first(p1__45856_SHARP_);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__45858) : f.call(null,G__45858));\n}),cljs.core.map.cljs$core$IFn$_invoke$arity$4(cljs.core.vector,ps,(function (){var or__4160__auto__ \x3d cljs.core.seq(ks);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})(),(function (){var or__4160__auto__ \x3d cljs.core.seq(forms);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})()));\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,pks)),(cljs.core.truth_(ks)?cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.second,pks)):null),(cljs.core.truth_(forms)?cljs.core.seq(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__45857_SHARP_){\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(p1__45857_SHARP_,(2));\n}),pks)):null)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.seq(cljs.core.filter.cljs$core$IFn$_invoke$arity$2(f,ps)),ks,forms], null);\n}\n});\ncljs.spec.alpha.alt_STAR_ \x3d (function cljs$spec$alpha$alt_STAR_(ps,ks,forms){\nvar vec__45910 \x3d cljs.spec.alpha.filter_alt(ps,ks,forms,cljs.core.identity);\nvar vec__45913 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45910,(0),null);\nvar seq__45914 \x3d cljs.core.seq(vec__45913);\nvar first__45915 \x3d cljs.core.first(seq__45914);\nvar seq__45914__$1 \x3d cljs.core.next(seq__45914);\nvar p1 \x3d first__45915;\nvar pr \x3d seq__45914__$1;\nvar ps__$1 \x3d vec__45913;\nvar vec__45916 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45910,(1),null);\nvar k1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45916,(0),null);\nvar ks__$1 \x3d vec__45916;\nvar forms__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__45910,(2),null);\nif(cljs.core.truth_(ps__$1)){\nvar ret \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),ps__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942),ks__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),forms__$1], null);\nif((pr \x3d\x3d null)){\nif(cljs.core.truth_(k1)){\nif(cljs.spec.alpha.accept_QMARK_(p1)){\nreturn cljs.spec.alpha.accept(cljs.spec.alpha.tagged_ret(k1,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814).cljs$core$IFn$_invoke$arity$1(p1)));\n} else {\nreturn ret;\n}\n} else {\nreturn p1;\n}\n} else {\nreturn ret;\n}\n} else {\nreturn null;\n}\n});\ncljs.spec.alpha.alts \x3d (function cljs$spec$alpha$alts(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___48313 \x3d arguments.length;\nvar i__4772__auto___48314 \x3d (0);\nwhile(true){\nif((i__4772__auto___48314 \x3c len__4771__auto___48313)){\nargs__4777__auto__.push((arguments[i__4772__auto___48314]));\n\nvar G__48315 \x3d (i__4772__auto___48314 + (1));\ni__4772__auto___48314 \x3d G__48315;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn cljs.spec.alpha.alts.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(cljs.spec.alpha.alts.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ps){\nreturn cljs.spec.alpha.alt_STAR_(ps,null,null);\n}));\n\n(cljs.spec.alpha.alts.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(cljs.spec.alpha.alts.cljs$lang$applyTo \x3d (function (seq45931){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq45931));\n}));\n\ncljs.spec.alpha.alt2 \x3d (function cljs$spec$alpha$alt2(p1,p2){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d p1;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn p2;\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.spec.alpha.alts.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([p1,p2], 0));\n} else {\nvar or__4160__auto__ \x3d p1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn p2;\n}\n}\n});\n/**\n * Do not call this directly, use \x27alt\x27\n */\ncljs.spec.alpha.alt_impl \x3d (function cljs$spec$alpha$alt_impl(ks,ps,forms){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.alt_STAR_(ps,ks,forms),new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),cljs.core.random_uuid());\n});\n/**\n * Do not call this directly, use \x27?\x27\n */\ncljs.spec.alpha.maybe_impl \x3d (function cljs$spec$alpha$maybe_impl(p,form){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.alt_STAR_(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p,cljs.spec.alpha.accept(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950))], null),null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [form,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950)], null)),new cljs.core.Keyword(null,\x22maybe\x22,\x22maybe\x22,-314397560),form);\n});\ncljs.spec.alpha.noret_QMARK_ \x3d (function cljs$spec$alpha$noret_QMARK_(p1,pret){\nvar or__4160__auto__ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(pret,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (function (){var and__4149__auto__ \x3d (function (){var G__45995 \x3d new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252).cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.reg_resolve_BANG_(p1));\nvar fexpr__45994 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),null,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),null], null), null);\nreturn (fexpr__45994.cljs$core$IFn$_invoke$arity$1 ? fexpr__45994.cljs$core$IFn$_invoke$arity$1(G__45995) : fexpr__45994.call(null,G__45995));\n})();\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.empty_QMARK_(pret);\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn null;\n}\n}\n});\ncljs.spec.alpha.accept_nil_QMARK_ \x3d (function cljs$spec$alpha$accept_nil_QMARK_(p){\nvar map__46000 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46000__$1 \x3d cljs.core.__destructure_map(map__46000);\nvar p__$1 \x3d map__46000__$1;\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46000__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar ps \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46000__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46000__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nvar p2 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46000__$1,new cljs.core.Keyword(null,\x22p2\x22,\x22p2\x22,905500641));\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46000__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar G__46003 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46003)){\nreturn true;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46003)){\nreturn null;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46003)){\nvar and__4149__auto__ \x3d (cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1(p1) : cljs.spec.alpha.accept_nil_QMARK_.call(null,p1));\nif(cljs.core.truth_(and__4149__auto__)){\nvar ret \x3d cljs.spec.alpha.and_preds(cljs.spec.alpha.preturn(p1),ps,cljs.core.next(forms));\nreturn (!(cljs.spec.alpha.invalid_QMARK_(ret)));\n} else {\nreturn and__4149__auto__;\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46003)){\nvar or__4160__auto__ \x3d (p1 \x3d\x3d\x3d p2);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn (cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.accept_nil_QMARK_.cljs$core$IFn$_invoke$arity$1(p1) : cljs.spec.alpha.accept_nil_QMARK_.call(null,p1));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46003)){\nreturn cljs.core.every_QMARK_(cljs.spec.alpha.accept_nil_QMARK_,ps);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46003)){\nreturn cljs.core.some(cljs.spec.alpha.accept_nil_QMARK_,ps);\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46003)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n});\ncljs.spec.alpha.preturn \x3d (function cljs$spec$alpha$preturn(p){\nvar map__46017 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46017__$1 \x3d cljs.core.__destructure_map(map__46017);\nvar p__$1 \x3d map__46017__$1;\nvar vec__46018 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46017__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar seq__46019 \x3d cljs.core.seq(vec__46018);\nvar first__46020 \x3d cljs.core.first(seq__46019);\nvar seq__46019__$1 \x3d cljs.core.next(seq__46019);\nvar p0 \x3d first__46020;\nvar pr \x3d seq__46019__$1;\nvar ps \x3d vec__46018;\nvar vec__46021 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46017__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46021,(0),null);\nvar ks \x3d vec__46021;\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46017__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46017__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nvar ret \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46017__$1,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814));\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46017__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar G__46025 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46025)){\nreturn ret;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46025)){\nreturn null;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46025)){\nvar pret \x3d (cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1(p1) : cljs.spec.alpha.preturn.call(null,p1));\nif(cljs.core.truth_(cljs.spec.alpha.noret_QMARK_(p1,pret))){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950);\n} else {\nreturn cljs.spec.alpha.and_preds(pret,ps,forms);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46025)){\nreturn cljs.spec.alpha.add_ret(p1,ret,k);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46025)){\nreturn cljs.spec.alpha.add_ret(p0,ret,k);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46025)){\nvar vec__46030 \x3d cljs.spec.alpha.filter_alt(ps,ks,forms,cljs.spec.alpha.accept_nil_QMARK_);\nvar vec__46033 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46030,(0),null);\nvar p0__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46033,(0),null);\nvar vec__46036 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46030,(1),null);\nvar k0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46036,(0),null);\nvar r \x3d (((p0__$1 \x3d\x3d null))?new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950):(cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.preturn.cljs$core$IFn$_invoke$arity$1(p0__$1) : cljs.spec.alpha.preturn.call(null,p0__$1)));\nif(cljs.core.truth_(k0)){\nreturn cljs.spec.alpha.tagged_ret(k0,r);\n} else {\nreturn r;\n}\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46025)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n});\ncljs.spec.alpha.op_unform \x3d (function cljs$spec$alpha$op_unform(p,x){\nvar map__46049 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46049__$1 \x3d cljs.core.__destructure_map(map__46049);\nvar p__$1 \x3d map__46049__$1;\nvar vec__46050 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar seq__46051 \x3d cljs.core.seq(vec__46050);\nvar first__46052 \x3d cljs.core.first(seq__46051);\nvar seq__46051__$1 \x3d cljs.core.next(seq__46051);\nvar p0 \x3d first__46052;\nvar pr \x3d seq__46051__$1;\nvar ps \x3d vec__46050;\nvar vec__46053 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46053,(0),null);\nvar ks \x3d vec__46053;\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nvar ret \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814));\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar rep_PLUS_ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22rep+\x22,\x22rep+\x22,-281382396));\nvar maybe \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46049__$1,new cljs.core.Keyword(null,\x22maybe\x22,\x22maybe\x22,-314397560));\nvar kps \x3d cljs.core.zipmap(ks,ps);\nvar G__46056 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46056)){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [ret], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46056)){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.alpha.unform(p__$1,x)], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46056)){\nvar px \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__46046_SHARP_,p2__46045_SHARP_){\nreturn cljs.spec.alpha.unform(p2__46045_SHARP_,p1__46046_SHARP_);\n}),x,cljs.core.reverse(ps));\nreturn (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(p1,px) : cljs.spec.alpha.op_unform.call(null,p1,px));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46056)){\nreturn cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__46047_SHARP_){\nreturn (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(p1,p1__46047_SHARP_) : cljs.spec.alpha.op_unform.call(null,p1,p1__46047_SHARP_));\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46056)){\nif(cljs.core.truth_(rep_PLUS_)){\nreturn cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__46048_SHARP_){\nreturn (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(p0,p1__46048_SHARP_) : cljs.spec.alpha.op_unform.call(null,p0,p1__46048_SHARP_));\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([x], 0));\n} else {\nreturn cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (k__$1){\nif(cljs.core.contains_QMARK_(x,k__$1)){\nvar G__46061 \x3d (kps.cljs$core$IFn$_invoke$arity$1 ? kps.cljs$core$IFn$_invoke$arity$1(k__$1) : kps.call(null,k__$1));\nvar G__46062 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(x,k__$1);\nreturn (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(G__46061,G__46062) : cljs.spec.alpha.op_unform.call(null,G__46061,G__46062));\n} else {\nreturn null;\n}\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ks], 0));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46056)){\nif(cljs.core.truth_(maybe)){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.spec.alpha.unform(p0,x)], null);\n} else {\nvar vec__46064 \x3d x;\nvar k__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46064,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46064,(1),null);\nvar G__46068 \x3d (kps.cljs$core$IFn$_invoke$arity$1 ? kps.cljs$core$IFn$_invoke$arity$1(k__$1) : kps.call(null,k__$1));\nvar G__46069 \x3d v;\nreturn (cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.op_unform.cljs$core$IFn$_invoke$arity$2(G__46068,G__46069) : cljs.spec.alpha.op_unform.call(null,G__46068,G__46069));\n}\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46056)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n});\ncljs.spec.alpha.add_ret \x3d (function cljs$spec$alpha$add_ret(p,r,k){\nvar map__46073 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46073__$1 \x3d cljs.core.__destructure_map(map__46073);\nvar p__$1 \x3d map__46073__$1;\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46073__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar ps \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46073__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar splice \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46073__$1,new cljs.core.Keyword(null,\x22splice\x22,\x22splice\x22,449588165));\nvar prop \x3d (function (){\nvar ret \x3d cljs.spec.alpha.preturn(p__$1);\nif(cljs.core.empty_QMARK_(ret)){\nreturn r;\n} else {\nvar G__46075 \x3d r;\nvar G__46076 \x3d (cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret);\nvar fexpr__46074 \x3d (cljs.core.truth_(splice)?cljs.core.into:cljs.core.conj);\nreturn (fexpr__46074.cljs$core$IFn$_invoke$arity$2 ? fexpr__46074.cljs$core$IFn$_invoke$arity$2(G__46075,G__46076) : fexpr__46074.call(null,G__46075,G__46076));\n}\n});\nvar G__46077 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46077)){\nreturn r;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46077)){\nvar ret \x3d cljs.spec.alpha.preturn(p__$1);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950))){\nreturn r;\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46077)){\nvar ret \x3d cljs.spec.alpha.preturn(p__$1);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950))){\nreturn r;\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46077)){\nvar ret \x3d cljs.spec.alpha.preturn(p__$1);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950))){\nreturn r;\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(cljs.core.truth_(k)?cljs.core.PersistentArrayMap.createAsIfByAssoc([k,ret]):ret));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46077)){\nreturn prop();\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46077)){\nreturn prop();\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46077)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n});\ncljs.spec.alpha.deriv \x3d (function cljs$spec$alpha$deriv(p,x){\nvar map__46113 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46113__$1 \x3d cljs.core.__destructure_map(map__46113);\nvar p__$1 \x3d map__46113__$1;\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar p2 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22p2\x22,\x22p2\x22,905500641));\nvar vec__46115 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar seq__46116 \x3d cljs.core.seq(vec__46115);\nvar first__46117 \x3d cljs.core.first(seq__46116);\nvar seq__46116__$1 \x3d cljs.core.next(seq__46116);\nvar p0 \x3d first__46117;\nvar pr \x3d seq__46116__$1;\nvar ps \x3d vec__46115;\nvar ret \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814));\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar splice \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22splice\x22,\x22splice\x22,449588165));\nvar vec__46118 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar seq__46119 \x3d cljs.core.seq(vec__46118);\nvar first__46120 \x3d cljs.core.first(seq__46119);\nvar seq__46119__$1 \x3d cljs.core.next(seq__46119);\nvar k0 \x3d first__46120;\nvar kr \x3d seq__46119__$1;\nvar ks \x3d vec__46118;\nvar amp \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22amp\x22,\x22amp\x22,271690571));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46113__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nif(cljs.core.truth_(p__$1)){\nvar G__46124 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46124)){\nreturn null;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46124)){\nvar ret__$1 \x3d cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(p__$1,x,p__$1);\nif(cljs.spec.alpha.invalid_QMARK_(ret__$1)){\nreturn null;\n} else {\nreturn cljs.spec.alpha.accept(ret__$1);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46124)){\nvar temp__5753__auto__ \x3d (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p1,x) : cljs.spec.alpha.deriv.call(null,p1,x));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar p1__$1 \x3d temp__5753__auto__;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252).cljs$core$IFn$_invoke$arity$1(p1__$1))){\nvar ret__$1 \x3d cljs.spec.alpha.and_preds(cljs.spec.alpha.preturn(p1__$1),ps,cljs.core.next(forms));\nif(cljs.spec.alpha.invalid_QMARK_(ret__$1)){\nreturn null;\n} else {\nreturn cljs.spec.alpha.accept(ret__$1);\n}\n} else {\nreturn cljs.spec.alpha.amp_impl(p1__$1,amp,ps,forms);\n}\n} else {\nreturn null;\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46124)){\nreturn cljs.spec.alpha.alt2(cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),cljs.core.cons((cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p0,x) : cljs.spec.alpha.deriv.call(null,p0,x)),pr),new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942),ks,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),forms,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),ret], null)),(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p0))?(function (){var G__46130 \x3d cljs.spec.alpha.pcat_STAR_(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046),pr,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942),kr,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350),cljs.core.next(forms),new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cljs.spec.alpha.add_ret(p0,ret,k0)], null));\nvar G__46131 \x3d x;\nreturn (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(G__46130,G__46131) : cljs.spec.alpha.deriv.call(null,G__46130,G__46131));\n})():null));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46124)){\nreturn cljs.spec.alpha.alt_STAR_(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__46110_SHARP_){\nreturn (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p1__46110_SHARP_,x) : cljs.spec.alpha.deriv.call(null,p1__46110_SHARP_,x));\n}),ps),ks,forms);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46124)){\nreturn cljs.spec.alpha.alt2(cljs.spec.alpha.rep_STAR_((cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(p1,x) : cljs.spec.alpha.deriv.call(null,p1,x)),p2,ret,splice,forms),(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p1))?(function (){var G__46134 \x3d cljs.spec.alpha.rep_STAR_(p2,p2,cljs.spec.alpha.add_ret(p1,ret,null),splice,forms);\nvar G__46135 \x3d x;\nreturn (cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.deriv.cljs$core$IFn$_invoke$arity$2(G__46134,G__46135) : cljs.spec.alpha.deriv.call(null,G__46134,G__46135));\n})():null));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46124)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n} else {\nreturn null;\n}\n});\ncljs.spec.alpha.op_describe \x3d (function cljs$spec$alpha$op_describe(p){\nvar map__46143 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46143__$1 \x3d cljs.core.__destructure_map(map__46143);\nvar p__$1 \x3d map__46143__$1;\nvar ps \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar rep_PLUS_ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22rep+\x22,\x22rep+\x22,-281382396));\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar splice \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22splice\x22,\x22splice\x22,449588165));\nvar ks \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar maybe \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22maybe\x22,\x22maybe\x22,-314397560));\nvar amp \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22amp\x22,\x22amp\x22,271690571));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46143__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nif(cljs.core.truth_(p__$1)){\nvar G__46147 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46147)){\nreturn null;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46147)){\nreturn p__$1;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46147)){\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22\x26\x22,\x22cljs.spec.alpha/\x26\x22,1635809823,null),amp,forms);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46147)){\nif(cljs.core.truth_(rep_PLUS_)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22+\x22,\x22cljs.spec.alpha/+\x22,2101263265,null),(new cljs.core.List(null,rep_PLUS_,null,(1),null)),(2),null));\n} else {\nreturn cljs.core.cons(new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22cat\x22,\x22cljs.spec.alpha/cat\x22,-1471398329,null),cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.vector,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var or__4160__auto__ \x3d cljs.core.seq(ks);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22_\x22,\x22_\x22,1453416199));\n}\n})(),forms], 0)));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46147)){\nif(cljs.core.truth_(maybe)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22?\x22,\x22cljs.spec.alpha/?\x22,1605136319,null),(new cljs.core.List(null,maybe,null,(1),null)),(2),null));\n} else {\nreturn cljs.core.cons(new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,-2130750332,null),cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(cljs.core.vector,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ks,forms], 0)));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46147)){\nreturn (new cljs.core.List(null,(cljs.core.truth_(splice)?new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22+\x22,\x22cljs.spec.alpha/+\x22,2101263265,null):new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22*\x22,\x22cljs.spec.alpha/*\x22,-1238084288,null)),(new cljs.core.List(null,forms,null,(1),null)),(2),null));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46147)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n} else {\nreturn null;\n}\n});\ncljs.spec.alpha.op_explain \x3d (function cljs$spec$alpha$op_explain(form,p,path,via,in$,input){\nvar vec__46160 \x3d input;\nvar x \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46160,(0),null);\nvar input__$1 \x3d vec__46160;\nvar map__46163 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46163__$1 \x3d cljs.core.__destructure_map(map__46163);\nvar p__$1 \x3d map__46163__$1;\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar ps \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar ks \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar splice \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(null,\x22splice\x22,\x22splice\x22,449588165));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nvar p2 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46163__$1,new cljs.core.Keyword(null,\x22p2\x22,\x22p2\x22,905500641));\nvar via__$1 \x3d (function (){var temp__5751__auto__ \x3d cljs.spec.alpha.spec_name(p__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar name \x3d temp__5751__auto__;\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(via,name);\n} else {\nreturn via;\n}\n})();\nvar insufficient \x3d (function (path__$1,form__$1){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path__$1,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),\x22Insufficient input\x22,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),form__$1,new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),cljs.core.List.EMPTY,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via__$1,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n});\nif(cljs.core.truth_(p__$1)){\nvar G__46172 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46172)){\nreturn null;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46172)){\nif(cljs.core.empty_QMARK_(input__$1)){\nreturn insufficient(path,form);\n} else {\nreturn cljs.spec.alpha.explain_1(form,p__$1,path,via__$1,in$,x);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46172)){\nif(cljs.core.empty_QMARK_(input__$1)){\nif(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p1))){\nreturn cljs.spec.alpha.explain_pred_list(forms,ps,path,via__$1,in$,cljs.spec.alpha.preturn(p1));\n} else {\nreturn insufficient(path,new cljs.core.Keyword(null,\x22amp\x22,\x22amp\x22,271690571).cljs$core$IFn$_invoke$arity$1(p__$1));\n}\n} else {\nvar temp__5751__auto__ \x3d cljs.spec.alpha.deriv(p1,x);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar p1__$1 \x3d temp__5751__auto__;\nreturn cljs.spec.alpha.explain_pred_list(forms,ps,path,via__$1,in$,cljs.spec.alpha.preturn(p1__$1));\n} else {\nvar G__46204 \x3d new cljs.core.Keyword(null,\x22amp\x22,\x22amp\x22,271690571).cljs$core$IFn$_invoke$arity$1(p__$1);\nvar G__46205 \x3d p1;\nvar G__46206 \x3d path;\nvar G__46207 \x3d via__$1;\nvar G__46208 \x3d in$;\nvar G__46209 \x3d input__$1;\nreturn (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(G__46204,G__46205,G__46206,G__46207,G__46208,G__46209) : cljs.spec.alpha.op_explain.call(null,G__46204,G__46205,G__46206,G__46207,G__46208,G__46209));\n}\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46172)){\nvar pkfs \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$4(cljs.core.vector,ps,(function (){var or__4160__auto__ \x3d cljs.core.seq(ks);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})(),(function (){var or__4160__auto__ \x3d cljs.core.seq(forms);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})());\nvar vec__46212 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(pkfs)))?cljs.core.first(pkfs):cljs.core.first(cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p__46219){\nvar vec__46221 \x3d p__46219;\nvar p__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46221,(0),null);\nreturn cljs.spec.alpha.accept_nil_QMARK_(p__$2);\n}),pkfs)));\nvar pred \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46212,(0),null);\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46212,(1),null);\nvar form__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46212,(2),null);\nvar path__$1 \x3d (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path);\nvar form__$2 \x3d (function (){var or__4160__auto__ \x3d form__$1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.spec.alpha.op_describe(pred);\n}\n})();\nif(((cljs.core.empty_QMARK_(input__$1)) \x26\x26 (cljs.core.not(pred)))){\nreturn insufficient(path__$1,form__$2);\n} else {\nreturn (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(form__$2,pred,path__$1,via__$1,in$,input__$1) : cljs.spec.alpha.op_explain.call(null,form__$2,pred,path__$1,via__$1,in$,input__$1));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46172)){\nif(cljs.core.empty_QMARK_(input__$1)){\nreturn insufficient(path,cljs.spec.alpha.op_describe(p__$1));\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,cljs.core.map.cljs$core$IFn$_invoke$arity$4((function (k,form__$1,pred){\nvar G__46229 \x3d (function (){var or__4160__auto__ \x3d form__$1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.spec.alpha.op_describe(pred);\n}\n})();\nvar G__46230 \x3d pred;\nvar G__46231 \x3d (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path);\nvar G__46232 \x3d via__$1;\nvar G__46233 \x3d in$;\nvar G__46234 \x3d input__$1;\nreturn (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(G__46229,G__46230,G__46231,G__46232,G__46233,G__46234) : cljs.spec.alpha.op_explain.call(null,G__46229,G__46230,G__46231,G__46232,G__46233,G__46234));\n}),(function (){var or__4160__auto__ \x3d cljs.core.seq(ks);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})(),(function (){var or__4160__auto__ \x3d cljs.core.seq(forms);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})(),ps));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46172)){\nvar G__46240 \x3d (((p1 \x3d\x3d\x3d p2))?forms:cljs.spec.alpha.op_describe(p1));\nvar G__46241 \x3d p1;\nvar G__46242 \x3d path;\nvar G__46243 \x3d via__$1;\nvar G__46244 \x3d in$;\nvar G__46245 \x3d input__$1;\nreturn (cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6 ? cljs.spec.alpha.op_explain.cljs$core$IFn$_invoke$arity$6(G__46240,G__46241,G__46242,G__46243,G__46244,G__46245) : cljs.spec.alpha.op_explain.call(null,G__46240,G__46241,G__46242,G__46243,G__46244,G__46245));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46172)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n} else {\nreturn null;\n}\n});\ncljs.spec.alpha.re_gen \x3d (function cljs$spec$alpha$re_gen(p,overrides,path,rmap,f){\nvar origp \x3d p;\nvar map__46252 \x3d cljs.spec.alpha.reg_resolve_BANG_(p);\nvar map__46252__$1 \x3d cljs.core.__destructure_map(map__46252);\nvar p__$1 \x3d map__46252__$1;\nvar ps \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22ps\x22,\x22ps\x22,292358046));\nvar forms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350));\nvar p2 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22p2\x22,\x22p2\x22,905500641));\nvar ret \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814));\nvar gfn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22gfn\x22,\x22cljs.spec.alpha/gfn\x22,-593120375));\nvar op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252));\nvar splice \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22splice\x22,\x22splice\x22,449588165));\nvar ks \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22ks\x22,\x22ks\x22,1900203942));\nvar p1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22p1\x22,\x22p1\x22,-936759954));\nvar id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46252__$1,new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092));\nvar rmap__$1 \x3d (cljs.core.truth_(id)?cljs.spec.alpha.inck(rmap,id):rmap);\nvar ggens \x3d (function (ps__$1,ks__$1,forms__$1){\nvar gen \x3d (function (p__$2,k,f__$1){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d rmap__$1;\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d id;\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d k;\nif(cljs.core.truth_(and__4149__auto____$2)){\nreturn cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,id,path,k);\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn null;\n} else {\nif(cljs.core.truth_(id)){\nreturn cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){\nvar G__46258 \x3d p__$2;\nvar G__46259 \x3d overrides;\nvar G__46260 \x3d (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path);\nvar G__46261 \x3d rmap__$1;\nvar G__46262 \x3d (function (){var or__4160__auto__ \x3d f__$1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn p__$2;\n}\n})();\nreturn (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(G__46258,G__46259,G__46260,G__46261,G__46262) : cljs.spec.alpha.re_gen.call(null,G__46258,G__46259,G__46260,G__46261,G__46262));\n}),null)));\n} else {\nvar G__46265 \x3d p__$2;\nvar G__46266 \x3d overrides;\nvar G__46267 \x3d (cljs.core.truth_(k)?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,k):path);\nvar G__46268 \x3d rmap__$1;\nvar G__46269 \x3d (function (){var or__4160__auto__ \x3d f__$1;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn p__$2;\n}\n})();\nreturn (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(G__46265,G__46266,G__46267,G__46268,G__46269) : cljs.spec.alpha.re_gen.call(null,G__46265,G__46266,G__46267,G__46268,G__46269));\n}\n}\n});\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$4(gen,ps__$1,(function (){var or__4160__auto__ \x3d cljs.core.seq(ks__$1);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})(),(function (){var or__4160__auto__ \x3d cljs.core.seq(forms__$1);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null);\n}\n})());\n});\nvar or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d (function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,cljs.spec.alpha.spec_name(origp));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,cljs.spec.alpha.spec_name(p__$1));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,path);\n}\n}\n})();\nif(cljs.core.truth_(temp__5753__auto__)){\nvar gfn__$1 \x3d temp__5753__auto__;\nvar G__46280 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22accept\x22,\x22accept\x22,1874130431),G__46280)){\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vector,(gfn__$1.cljs$core$IFn$_invoke$arity$0 ? gfn__$1.cljs$core$IFn$_invoke$arity$0() : gfn__$1.call(null))], 0));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46280)){\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vector,(gfn__$1.cljs$core$IFn$_invoke$arity$0 ? gfn__$1.cljs$core$IFn$_invoke$arity$0() : gfn__$1.call(null))], 0));\n} else {\nreturn (gfn__$1.cljs$core$IFn$_invoke$arity$0 ? gfn__$1.cljs$core$IFn$_invoke$arity$0() : gfn__$1.call(null));\n\n}\n}\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (cljs.core.truth_(gfn)?(gfn.cljs$core$IFn$_invoke$arity$0 ? gfn.cljs$core$IFn$_invoke$arity$0() : gfn.call(null)):null);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nif(cljs.core.truth_(p__$1)){\nvar G__46281 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22accept\x22,\x22cljs.spec.alpha/accept\x22,370988198),G__46281)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950))){\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentVector.EMPTY], 0));\n} else {\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [ret], null)], 0));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__46281)){\nvar temp__5753__auto__ \x3d cljs.spec.alpha.gensub(p__$1,overrides,path,rmap__$1,f);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar g \x3d temp__5753__auto__;\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.vector,g], 0));\n} else {\nreturn null;\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22amp\x22,\x22cljs.spec.alpha/amp\x22,831147508),G__46281)){\nvar G__46286 \x3d p1;\nvar G__46287 \x3d overrides;\nvar G__46288 \x3d path;\nvar G__46289 \x3d rmap__$1;\nvar G__46290 \x3d cljs.spec.alpha.op_describe(p1);\nreturn (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(G__46286,G__46287,G__46288,G__46289,G__46290) : cljs.spec.alpha.re_gen.call(null,G__46286,G__46287,G__46288,G__46289,G__46290));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623),G__46281)){\nvar gens \x3d ggens(ps,ks,forms);\nif(cljs.core.every_QMARK_(cljs.core.identity,gens)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.spec.gen.alpha.cat,gens);\n} else {\nreturn null;\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22alt\x22,\x22cljs.spec.alpha/alt\x22,523685437),G__46281)){\nvar gens \x3d cljs.core.remove.cljs$core$IFn$_invoke$arity$2(cljs.core.nil_QMARK_,ggens(ps,ks,forms));\nif(cljs.core.empty_QMARK_(gens)){\nreturn null;\n} else {\nreturn cljs.spec.gen.alpha.one_of.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gens], 0));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22rep\x22,\x22cljs.spec.alpha/rep\x22,1483217317),G__46281)){\nif(cljs.spec.alpha.recur_limit_QMARK_(rmap__$1,id,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [id], null),id)){\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentVector.EMPTY], 0));\n} else {\nvar temp__5753__auto__ \x3d (cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5 ? cljs.spec.alpha.re_gen.cljs$core$IFn$_invoke$arity$5(p2,overrides,path,rmap__$1,forms) : cljs.spec.alpha.re_gen.call(null,p2,overrides,path,rmap__$1,forms));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar g \x3d temp__5753__auto__;\nreturn cljs.spec.gen.alpha.fmap.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__46248_SHARP_){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.concat,p1__46248_SHARP_);\n}),cljs.spec.gen.alpha.vector.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([g], 0))], 0));\n} else {\nreturn null;\n}\n}\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__46281)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n} else {\nreturn null;\n}\n}\n}\n});\ncljs.spec.alpha.re_conform \x3d (function cljs$spec$alpha$re_conform(p,p__46332){\nwhile(true){\nvar vec__46336 \x3d p__46332;\nvar seq__46337 \x3d cljs.core.seq(vec__46336);\nvar first__46338 \x3d cljs.core.first(seq__46337);\nvar seq__46337__$1 \x3d cljs.core.next(seq__46337);\nvar x \x3d first__46338;\nvar xs \x3d seq__46337__$1;\nvar data \x3d vec__46336;\nif(cljs.core.empty_QMARK_(data)){\nif(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p))){\nvar ret \x3d cljs.spec.alpha.preturn(p);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(ret,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950))){\nreturn null;\n} else {\nreturn ret;\n}\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n} else {\nvar temp__5751__auto__ \x3d cljs.spec.alpha.deriv(p,x);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar dp \x3d temp__5751__auto__;\nvar G__48584 \x3d dp;\nvar G__48585 \x3d xs;\np \x3d G__48584;\np__46332 \x3d G__48585;\ncontinue;\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}\nbreak;\n}\n});\ncljs.spec.alpha.re_explain \x3d (function cljs$spec$alpha$re_explain(path,via,in$,re,input){\nvar p \x3d re;\nvar G__46359 \x3d input;\nvar vec__46361 \x3d G__46359;\nvar seq__46362 \x3d cljs.core.seq(vec__46361);\nvar first__46363 \x3d cljs.core.first(seq__46362);\nvar seq__46362__$1 \x3d cljs.core.next(seq__46362);\nvar x \x3d first__46363;\nvar xs \x3d seq__46362__$1;\nvar data \x3d vec__46361;\nvar i \x3d (0);\nvar p__$1 \x3d p;\nvar G__46359__$1 \x3d G__46359;\nvar i__$1 \x3d i;\nwhile(true){\nvar p__$2 \x3d p__$1;\nvar vec__46365 \x3d G__46359__$1;\nvar seq__46366 \x3d cljs.core.seq(vec__46365);\nvar first__46367 \x3d cljs.core.first(seq__46366);\nvar seq__46366__$1 \x3d cljs.core.next(seq__46366);\nvar x__$1 \x3d first__46367;\nvar xs__$1 \x3d seq__46366__$1;\nvar data__$1 \x3d vec__46365;\nvar i__$2 \x3d i__$1;\nif(cljs.core.empty_QMARK_(data__$1)){\nif(cljs.core.truth_(cljs.spec.alpha.accept_nil_QMARK_(p__$2))){\nreturn null;\n} else {\nreturn cljs.spec.alpha.op_explain(cljs.spec.alpha.op_describe(p__$2),p__$2,path,via,in$,null);\n}\n} else {\nvar temp__5751__auto__ \x3d cljs.spec.alpha.deriv(p__$2,x__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar dp \x3d temp__5751__auto__;\nvar G__48602 \x3d dp;\nvar G__48603 \x3d xs__$1;\nvar G__48604 \x3d (i__$2 + (1));\np__$1 \x3d G__48602;\nG__46359__$1 \x3d G__48603;\ni__$1 \x3d G__48604;\ncontinue;\n} else {\nif(cljs.spec.alpha.accept_QMARK_(p__$2)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22op\x22,\x22cljs.spec.alpha/op\x22,-1269055252).cljs$core$IFn$_invoke$arity$1(p__$2),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pcat\x22,\x22cljs.spec.alpha/pcat\x22,26406623))){\nreturn cljs.spec.alpha.op_explain(cljs.spec.alpha.op_describe(p__$2),p__$2,path,via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2),cljs.core.seq(data__$1));\n} else {\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),\x22Extra input\x22,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.spec.alpha.op_describe(re),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),data__$1,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2)], null)], null);\n}\n} else {\nvar or__4160__auto__ \x3d cljs.spec.alpha.op_explain(cljs.spec.alpha.op_describe(p__$2),p__$2,path,via,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2),cljs.core.seq(data__$1));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),\x22Extra input\x22,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.spec.alpha.op_describe(p__$2),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),data__$1,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(in$,i__$2)], null)], null);\n}\n}\n}\n}\nbreak;\n}\n});\n/**\n * Do not call this directly, use \x27spec\x27 with a regex op argument\n */\ncljs.spec.alpha.regex_spec_impl \x3d (function cljs$spec$alpha$regex_spec_impl(re,gfn){\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha46372 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha46372 \x3d (function (re,gfn,meta46373){\nthis.re \x3d re;\nthis.gfn \x3d gfn;\nthis.meta46373 \x3d meta46373;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_46374,meta46373__$1){\nvar self__ \x3d this;\nvar _46374__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46372(self__.re,self__.gfn,meta46373__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_46374){\nvar self__ \x3d this;\nvar _46374__$1 \x3d this;\nreturn self__.meta46373;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((((x \x3d\x3d null)) || (cljs.core.sequential_QMARK_(x)))){\nreturn cljs.spec.alpha.re_conform(self__.re,cljs.core.seq(x));\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.op_unform(self__.re,x);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((((x \x3d\x3d null)) || (cljs.core.sequential_QMARK_(x)))){\nreturn cljs.spec.alpha.re_explain(path,via,in$,self__.re,cljs.core.seq(x));\n} else {\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22or\x22,\x22cljs.core/or\x22,1201033885,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nil?\x22,\x22cljs.core/nil?\x22,945071861,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22sequential?\x22,\x22cljs.core/sequential?\x22,1777854658,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nreturn cljs.spec.alpha.re_gen(self__.re,overrides,path,rmap,cljs.spec.alpha.op_describe(self__.re));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (cljs.spec.alpha.regex_spec_impl.cljs$core$IFn$_invoke$arity$2 ? cljs.spec.alpha.regex_spec_impl.cljs$core$IFn$_invoke$arity$2(self__.re,gfn__$1) : cljs.spec.alpha.regex_spec_impl.call(null,self__.re,gfn__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.op_describe(self__.re);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22meta46373\x22,\x22meta46373\x22,427060038,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha46372\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46372.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha46372\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha46372.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha46372 \x3d (function cljs$spec$alpha$regex_spec_impl_$___GT_t_cljs$spec$alpha46372(re__$1,gfn__$1,meta46373){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46372(re__$1,gfn__$1,meta46373));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46372(re,gfn,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.spec.alpha.call_valid_QMARK_ \x3d (function cljs$spec$alpha$call_valid_QMARK_(f,specs,args){\nvar cargs \x3d cljs.spec.alpha.conform(new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576).cljs$core$IFn$_invoke$arity$1(specs),args);\nif(cljs.spec.alpha.invalid_QMARK_(cargs)){\nreturn null;\n} else {\nvar ret \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args);\nvar cret \x3d cljs.spec.alpha.conform(new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814).cljs$core$IFn$_invoke$arity$1(specs),ret);\nif((!(cljs.spec.alpha.invalid_QMARK_(cret)))){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204).cljs$core$IFn$_invoke$arity$1(specs))){\nreturn cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204).cljs$core$IFn$_invoke$arity$1(specs),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),cargs,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cret], null));\n} else {\nreturn true;\n}\n} else {\nreturn false;\n}\n}\n});\n/**\n * returns f if valid, else smallest\n */\ncljs.spec.alpha.validate_fn \x3d (function cljs$spec$alpha$validate_fn(f,specs,iters){\nvar g \x3d cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576).cljs$core$IFn$_invoke$arity$1(specs));\nvar prop \x3d cljs.spec.gen.alpha.for_all_STAR_.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [g], null),(function (p1__46404_SHARP_){\nreturn cljs.spec.alpha.call_valid_QMARK_(f,specs,p1__46404_SHARP_);\n})], 0));\nvar ret \x3d cljs.spec.gen.alpha.quick_check.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([iters,prop], 0));\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22smallest\x22,\x22smallest\x22,-152623883).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22shrunk\x22,\x22shrunk\x22,-2041664412).cljs$core$IFn$_invoke$arity$1(ret));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__46409 \x3d temp__5751__auto__;\nvar smallest \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46409,(0),null);\nreturn smallest;\n} else {\nreturn f;\n}\n});\n/**\n * Do not call this directly, use \x27fspec\x27\n */\ncljs.spec.alpha.fspec_impl \x3d (function cljs$spec$alpha$fspec_impl(argspec,aform,retspec,rform,fnspec,fform,gfn){\nvar specs \x3d new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),argspec,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),retspec,new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),fnspec], null);\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha46427 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.ILookup}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha46427 \x3d (function (argspec,aform,retspec,rform,fnspec,fform,gfn,specs,meta46428){\nthis.argspec \x3d argspec;\nthis.aform \x3d aform;\nthis.retspec \x3d retspec;\nthis.rform \x3d rform;\nthis.fnspec \x3d fnspec;\nthis.fform \x3d fform;\nthis.gfn \x3d gfn;\nthis.specs \x3d specs;\nthis.meta46428 \x3d meta46428;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393472;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_46429,meta46428__$1){\nvar self__ \x3d this;\nvar _46429__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46427(self__.argspec,self__.aform,self__.retspec,self__.rform,self__.fnspec,self__.fform,self__.gfn,self__.specs,meta46428__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_46429){\nvar self__ \x3d this;\nvar _46429__$1 \x3d this;\nreturn self__.meta46428;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this$,k){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(self__.specs,k);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (_,k,not_found){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.specs,k,not_found);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,f){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.ifn_QMARK_(f)){\nif((f \x3d\x3d\x3d cljs.spec.alpha.validate_fn(f,self__.specs,cljs.spec.alpha._STAR_fspec_iterations_STAR_))){\nreturn f;\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n} else {\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,f){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn f;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,f){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.ifn_QMARK_(f)){\nvar args \x3d cljs.spec.alpha.validate_fn(f,self__.specs,(100));\nif((f \x3d\x3d\x3d args)){\nreturn null;\n} else {\nvar ret \x3d (function (){try{return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args);\n}catch (e46467){if((e46467 instanceof Error)){\nvar t \x3d e46467;\nreturn t;\n} else {\nthrow e46467;\n\n}\n}})();\nif((ret instanceof Error)){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),cljs.core.list(new cljs.core.Symbol(null,\x22apply\x22,\x22apply\x22,-1334050276,null),new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null)),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),args,new cljs.core.Keyword(null,\x22reason\x22,\x22reason\x22,-2070751759),ret.message,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n} else {\nvar cret \x3d cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3(self__.retspec,ret,self__.rform);\nif(cljs.spec.alpha.invalid_QMARK_(cret)){\nreturn cljs.spec.alpha.explain_1(self__.rform,self__.retspec,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814)),via,in$,ret);\n} else {\nif(cljs.core.truth_(self__.fnspec)){\nvar cargs \x3d cljs.spec.alpha.conform(self__.argspec,args);\nreturn cljs.spec.alpha.explain_1(self__.fform,self__.fnspec,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204)),via,in$,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),cargs,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),cret], null));\n} else {\nreturn null;\n}\n}\n}\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),path,new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),new cljs.core.Symbol(null,\x22ifn?\x22,\x22ifn?\x22,-2106461064,null),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),f,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null)], null);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,___$1,___$2){\nvar self__ \x3d this;\nvar ___$3 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function() { \nvar G__48764__delegate \x3d function (args){\nif(cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(self__.argspec,args)){\n} else {\nthrow (new Error([\x22Assert failed: \x22,(function (){var sb__4702__auto__ \x3d (new goog.string.StringBuffer());\nvar _STAR_print_newline_STAR__orig_val__46482_48766 \x3d cljs.core._STAR_print_newline_STAR_;\nvar _STAR_print_fn_STAR__orig_val__46483_48767 \x3d cljs.core._STAR_print_fn_STAR_;\nvar _STAR_print_newline_STAR__temp_val__46484_48768 \x3d true;\nvar _STAR_print_fn_STAR__temp_val__46485_48769 \x3d (function (x__4703__auto__){\nreturn sb__4702__auto__.append(x__4703__auto__);\n});\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__temp_val__46484_48768);\n\n(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__temp_val__46485_48769);\n\ntry{cljs.spec.alpha.explain(self__.argspec,args);\n}finally {(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__orig_val__46483_48767);\n\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__orig_val__46482_48766);\n}\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4702__auto__);\n})(),\x22\\n\x22,\x22(pvalid? argspec args)\x22].join(\x27\x27)));\n}\n\nreturn cljs.spec.gen.alpha.generate(cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(self__.retspec,overrides));\n};\nvar G__48764 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__48774__i \x3d 0, G__48774__a \x3d new Array(arguments.length -  0);\nwhile (G__48774__i \x3c G__48774__a.length) {G__48774__a[G__48774__i] \x3d arguments[G__48774__i + 0]; ++G__48774__i;}\n  args \x3d new cljs.core.IndexedSeq(G__48774__a,0,null);\n} \nreturn G__48764__delegate.call(this,args);};\nG__48764.cljs$lang$maxFixedArity \x3d 0;\nG__48764.cljs$lang$applyTo \x3d (function (arglist__48776){\nvar args \x3d cljs.core.seq(arglist__48776);\nreturn G__48764__delegate(args);\n});\nG__48764.cljs$core$IFn$_invoke$arity$variadic \x3d G__48764__delegate;\nreturn G__48764;\n})()\n], 0));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (cljs.spec.alpha.fspec_impl.cljs$core$IFn$_invoke$arity$7 ? cljs.spec.alpha.fspec_impl.cljs$core$IFn$_invoke$arity$7(self__.argspec,self__.aform,self__.retspec,self__.rform,self__.fnspec,self__.fform,gfn__$1) : cljs.spec.alpha.fspec_impl.call(null,self__.argspec,self__.aform,self__.retspec,self__.rform,self__.fnspec,self__.fform,gfn__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22fspec\x22,\x22cljs.spec.alpha/fspec\x22,-1289128341,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,self__.aform,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),null,(1),null)),(new cljs.core.List(null,self__.rform,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),null,(1),null)),(new cljs.core.List(null,self__.fform,null,(1),null))], 0))));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22argspec\x22,\x22argspec\x22,-1207762746,null),new cljs.core.Symbol(null,\x22aform\x22,\x22aform\x22,531303525,null),new cljs.core.Symbol(null,\x22retspec\x22,\x22retspec\x22,-920025354,null),new cljs.core.Symbol(null,\x22rform\x22,\x22rform\x22,-1420499912,null),new cljs.core.Symbol(null,\x22fnspec\x22,\x22fnspec\x22,-1865712406,null),new cljs.core.Symbol(null,\x22fform\x22,\x22fform\x22,-176049972,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22specs\x22,\x22specs\x22,-1227865028,null),new cljs.core.Symbol(null,\x22meta46428\x22,\x22meta46428\x22,-957224910,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha46427\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46427.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha46427\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha46427.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha46427 \x3d (function cljs$spec$alpha$fspec_impl_$___GT_t_cljs$spec$alpha46427(argspec__$1,aform__$1,retspec__$1,rform__$1,fnspec__$1,fform__$1,gfn__$1,specs__$1,meta46428){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46427(argspec__$1,aform__$1,retspec__$1,rform__$1,fnspec__$1,fform__$1,gfn__$1,specs__$1,meta46428));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46427(argspec,aform,retspec,rform,fnspec,fform,gfn,specs,cljs.core.PersistentArrayMap.EMPTY));\n});\ncljs.spec.alpha.def_impl(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22kvs-\x3emap\x22,\x22cljs.spec.alpha/kvs-\x3emap\x22,579713455),cljs.core.list(new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22conformer\x22,\x22cljs.spec.alpha/conformer\x22,2140085535,null),cljs.core.list(new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1__46505#\x22,\x22p1__46505#\x22,307606440,null)], null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22zipmap\x22,\x22cljs.core/zipmap\x22,-1902130674,null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22k\x22,\x22cljs.spec.alpha/k\x22,-1602615178),new cljs.core.Symbol(null,\x22p1__46505#\x22,\x22p1__46505#\x22,307606440,null)),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22v\x22,\x22cljs.spec.alpha/v\x22,552625740),new cljs.core.Symbol(null,\x22p1__46505#\x22,\x22p1__46505#\x22,307606440,null)))),cljs.core.list(new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1__46508#\x22,\x22p1__46508#\x22,-2012888547,null)], null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)], null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22k\x22,\x22cljs.spec.alpha/k\x22,-1602615178),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22v\x22,\x22cljs.spec.alpha/v\x22,552625740),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)),new cljs.core.Symbol(null,\x22p1__46508#\x22,\x22p1__46508#\x22,-2012888547,null)))),cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$5(cljs.core.list(new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22conformer\x22,\x22cljs.spec.alpha/conformer\x22,2140085535,null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null)], null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22zipmap\x22,\x22cljs.core/zipmap\x22,-1902130674,null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22k\x22,\x22cljs.spec.alpha/k\x22,-1602615178),new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null)),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22v\x22,\x22cljs.spec.alpha/v\x22,552625740),new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null)))),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null)], null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),cljs.core.list(new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)], null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22k\x22,\x22cljs.spec.alpha/k\x22,-1602615178),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22v\x22,\x22cljs.spec.alpha/v\x22,552625740),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)),new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null)))),(function (p1__46505_SHARP_){\nreturn cljs.core.zipmap(cljs.core.map.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22k\x22,\x22cljs.spec.alpha/k\x22,-1602615178),p1__46505_SHARP_),cljs.core.map.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22v\x22,\x22cljs.spec.alpha/v\x22,552625740),p1__46505_SHARP_));\n}),null,true,(function (p1__46508_SHARP_){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__46582){\nvar vec__46583 \x3d p__46582;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46583,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46583,(1),null);\nreturn new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22k\x22,\x22cljs.spec.alpha/k\x22,-1602615178),k,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22v\x22,\x22cljs.spec.alpha/v\x22,552625740),v], null);\n}),p1__46508_SHARP_);\n})));\n/**\n * takes a spec and returns a spec that has the same properties except\n *   \x27conform\x27 returns the original (not the conformed) value. Note, will specize regex ops.\n */\ncljs.spec.alpha.nonconforming \x3d (function cljs$spec$alpha$nonconforming(spec){\nvar spec__$1 \x3d (new cljs.core.Delay((function (){\nreturn cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec);\n}),null));\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha46592 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha46592 \x3d (function (spec,meta46593){\nthis.spec \x3d spec;\nthis.meta46593 \x3d meta46593;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_46594,meta46593__$1){\nvar self__ \x3d this;\nvar _46594__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46592(self__.spec,meta46593__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_46594){\nvar self__ \x3d this;\nvar _46594__$1 \x3d this;\nreturn self__.meta46593;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar ret \x3d cljs.spec.alpha.conform_STAR_(cljs.core.deref(self__.spec),x);\nif(cljs.spec.alpha.invalid_QMARK_(ret)){\nreturn new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22invalid\x22,\x22cljs.spec.alpha/invalid\x22,-1220295119);\n} else {\nreturn x;\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.unform_STAR_(cljs.core.deref(self__.spec),x);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.explain_STAR_(cljs.core.deref(self__.spec),path,via,in$,x);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.spec.alpha.gen_STAR_(cljs.core.deref(self__.spec),overrides,path,rmap);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nvar G__46641 \x3d cljs.spec.alpha.with_gen_STAR_(cljs.core.deref(self__.spec),gfn);\nreturn (cljs.spec.alpha.nonconforming.cljs$core$IFn$_invoke$arity$1 ? cljs.spec.alpha.nonconforming.cljs$core$IFn$_invoke$arity$1(G__46641) : cljs.spec.alpha.nonconforming.call(null,G__46641));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22nonconforming\x22,\x22cljs.spec.alpha/nonconforming\x22,-1009218508,null),null,(1),null)),(new cljs.core.List(null,cljs.spec.alpha.describe_STAR_(cljs.core.deref(self__.spec)),null,(1),null)))));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22spec\x22,\x22spec\x22,1988051928,null),new cljs.core.Symbol(null,\x22meta46593\x22,\x22meta46593\x22,-87799150,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha46592\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46592.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha46592\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha46592.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha46592 \x3d (function cljs$spec$alpha$nonconforming_$___GT_t_cljs$spec$alpha46592(spec__$2,meta46593){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46592(spec__$2,meta46593));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46592(spec__$1,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * Do not call this directly, use \x27nilable\x27\n */\ncljs.spec.alpha.nilable_impl \x3d (function cljs$spec$alpha$nilable_impl(form,pred,gfn){\nvar spec \x3d (new cljs.core.Delay((function (){\nreturn cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2(pred,form);\n}),null));\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha.t_cljs$spec$alpha46668 !\x3d\x3d \x27undefined\x27)){\n} else {\n\n/**\n* @constructor\n * @implements {cljs.spec.alpha.Spec}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.spec.alpha.Specize}\n * @implements {cljs.core.IWithMeta}\n*/\ncljs.spec.alpha.t_cljs$spec$alpha46668 \x3d (function (form,pred,gfn,spec,meta46669){\nthis.form \x3d form;\nthis.pred \x3d pred;\nthis.gfn \x3d gfn;\nthis.spec \x3d spec;\nthis.meta46669 \x3d meta46669;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_46670,meta46669__$1){\nvar self__ \x3d this;\nvar _46670__$1 \x3d this;\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46668(self__.form,self__.pred,self__.gfn,self__.spec,meta46669__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_46670){\nvar self__ \x3d this;\nvar _46670__$1 \x3d this;\nreturn self__.meta46669;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Specize$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 \x3d (function (s){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 \x3d (function (s,_){\nvar self__ \x3d this;\nvar s__$1 \x3d this;\nreturn s__$1;\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$conform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((x \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.spec.alpha.conform_STAR_(cljs.core.deref(self__.spec),x);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$unform_STAR_$arity$2 \x3d (function (_,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif((x \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.spec.alpha.unform_STAR_(cljs.core.deref(self__.spec),x);\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$explain_STAR_$arity$5 \x3d (function (_,path,via,in$,x){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(((cljs.spec.alpha.pvalid_QMARK_.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(self__.spec),x)) || ((x \x3d\x3d null)))){\nreturn null;\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.explain_1(self__.form,self__.pred,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pred\x22,\x22cljs.spec.alpha/pred\x22,-798342594)),via,in$,x),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22nil\x22,\x22cljs.spec.alpha/nil\x22,1733813950)),new cljs.core.Keyword(null,\x22pred\x22,\x22pred\x22,1927423397),new cljs.core.Symbol(null,\x22nil?\x22,\x22nil?\x22,1612038930,null),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),x,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),via,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865),in$], null));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$gen_STAR_$arity$4 \x3d (function (_,overrides,path,rmap){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nif(cljs.core.truth_(self__.gfn)){\nreturn (self__.gfn.cljs$core$IFn$_invoke$arity$0 ? self__.gfn.cljs$core$IFn$_invoke$arity$0() : self__.gfn.call(null));\n} else {\nreturn cljs.spec.gen.alpha.frequency.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(1),cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){\nreturn cljs.spec.gen.alpha.return$.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([null], 0));\n}),null)))], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(9),cljs.spec.gen.alpha.delay_impl((new cljs.core.Delay((function (){\nreturn cljs.spec.alpha.gensub(self__.pred,overrides,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(path,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22pred\x22,\x22cljs.spec.alpha/pred\x22,-798342594)),rmap,self__.form);\n}),null)))], null)], null)], 0));\n}\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 \x3d (function (_,gfn__$1){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn (cljs.spec.alpha.nilable_impl.cljs$core$IFn$_invoke$arity$3 ? cljs.spec.alpha.nilable_impl.cljs$core$IFn$_invoke$arity$3(self__.form,self__.pred,gfn__$1) : cljs.spec.alpha.nilable_impl.call(null,self__.form,self__.pred,gfn__$1));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.prototype.cljs$spec$alpha$Spec$describe_STAR_$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.spec.alpha\x22,\x22nilable\x22,\x22cljs.spec.alpha/nilable\x22,1628308748,null),null,(1),null)),(new cljs.core.List(null,self__.form,null,(1),null)))));\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null),new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22gfn\x22,\x22gfn\x22,-1862918295,null),new cljs.core.Symbol(null,\x22spec\x22,\x22spec\x22,1988051928,null),new cljs.core.Symbol(null,\x22meta46669\x22,\x22meta46669\x22,271711433,null)], null);\n}));\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.cljs$lang$type \x3d true);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.cljs$lang$ctorStr \x3d \x22cljs.spec.alpha/t_cljs$spec$alpha46668\x22);\n\n(cljs.spec.alpha.t_cljs$spec$alpha46668.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22cljs.spec.alpha/t_cljs$spec$alpha46668\x22);\n}));\n\n/**\n * Positional factory function for cljs.spec.alpha/t_cljs$spec$alpha46668.\n */\ncljs.spec.alpha.__GT_t_cljs$spec$alpha46668 \x3d (function cljs$spec$alpha$nilable_impl_$___GT_t_cljs$spec$alpha46668(form__$1,pred__$1,gfn__$1,spec__$1,meta46669){\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46668(form__$1,pred__$1,gfn__$1,spec__$1,meta46669));\n});\n\n}\n\nreturn (new cljs.spec.alpha.t_cljs$spec$alpha46668(form,pred,gfn,spec,cljs.core.PersistentArrayMap.EMPTY));\n});\n/**\n * generates a number (default 10) of values compatible with spec and maps conform over them,\n *   returning a sequence of [val conformed-val] tuples. Optionally takes\n *   a generator overrides map as per gen\n */\ncljs.spec.alpha.exercise \x3d (function cljs$spec$alpha$exercise(var_args){\nvar G__46734 \x3d arguments.length;\nswitch (G__46734) {\ncase 1:\nreturn cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$1 \x3d (function (spec){\nreturn cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$2(spec,(10));\n}));\n\n(cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$2 \x3d (function (spec,n){\nreturn cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$3(spec,n,null);\n}));\n\n(cljs.spec.alpha.exercise.cljs$core$IFn$_invoke$arity$3 \x3d (function (spec,n,overrides){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__46727_SHARP_){\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[p1__46727_SHARP_,cljs.spec.alpha.conform(spec,p1__46727_SHARP_)],null));\n}),cljs.spec.gen.alpha.sample.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(spec,overrides),n], 0)));\n}));\n\n(cljs.spec.alpha.exercise.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Return true if inst at or after start and before end\n */\ncljs.spec.alpha.inst_in_range_QMARK_ \x3d (function cljs$spec$alpha$inst_in_range_QMARK_(start,end,inst){\nif(cljs.core.inst_QMARK_(inst)){\nvar t \x3d cljs.core.inst_ms(inst);\nreturn (((cljs.core.inst_ms(start) \x3c\x3d t)) \x26\x26 ((t \x3c cljs.core.inst_ms(end))));\n} else {\nreturn false;\n}\n});\n/**\n * Return true if start \x3c\x3d val, val \x3c end and val is a fixed\n *   precision integer.\n */\ncljs.spec.alpha.int_in_range_QMARK_ \x3d (function cljs$spec$alpha$int_in_range_QMARK_(start,end,val){\nif(cljs.core.integer_QMARK_(val)){\nreturn (((start \x3c\x3d val)) \x26\x26 ((val \x3c end)));\n} else {\nif((val instanceof goog.math.Long)){\nvar and__4149__auto__ \x3d start.lessThanOrEqual(val);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn val.lessThan(end);\n} else {\nreturn and__4149__auto__;\n}\n} else {\nif((val instanceof goog.math.Integer)){\nvar and__4149__auto__ \x3d start.lessThanOrEqual(val);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn val.lessThan(end);\n} else {\nreturn and__4149__auto__;\n}\n} else {\nreturn false;\n\n}\n}\n}\n});\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha._STAR_compile_asserts_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\n/**\n * If true, compiler will enable spec asserts, which are then\n * subject to runtime control via check-asserts? If false, compiler\n * will eliminate all spec assert overhead. See \x27assert\x27.\n * Initially set to the negation of the \x27:elide-asserts\x27 compiler option.\n * Defaults to true.\n */\ncljs.spec.alpha._STAR_compile_asserts_STAR_ \x3d true;\n}\nif((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.spec.alpha._STAR_runtime_asserts_STAR_ !\x3d\x3d \x27undefined\x27)){\n} else {\ncljs.spec.alpha._STAR_runtime_asserts_STAR_ \x3d false;\n}\n/**\n * Returns the value set by check-asserts.\n */\ncljs.spec.alpha.check_asserts_QMARK_ \x3d (function cljs$spec$alpha$check_asserts_QMARK_(){\nreturn cljs.spec.alpha._STAR_runtime_asserts_STAR_;\n});\n/**\n * Enable or disable spec asserts that have been compiled\n * with \x27*compile-asserts*\x27 true.  See \x27assert\x27.\n * Initially set to boolean value of cljs.spec.alpha/*runtime-asserts*.\n * Defaults to false.\n */\ncljs.spec.alpha.check_asserts \x3d (function cljs$spec$alpha$check_asserts(flag){\nreturn (cljs.spec.alpha._STAR_runtime_asserts_STAR_ \x3d flag);\n});\n/**\n * Do not call this directly, use \x27assert\x27.\n */\ncljs.spec.alpha.assert_STAR_ \x3d (function cljs$spec$alpha$assert_STAR_(spec,x){\nif(cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec,x)){\nreturn x;\n} else {\nvar ed \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.explain_data_STAR_(spec,cljs.core.PersistentVector.EMPTY,cljs.core.PersistentVector.EMPTY,cljs.core.PersistentVector.EMPTY,x),new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22failure\x22,\x22cljs.spec.alpha/failure\x22,188258592),new cljs.core.Keyword(null,\x22assertion-failed\x22,\x22assertion-failed\x22,-970534477))], 0));\nthrow (new Error([\x22Spec assertion failed\\n\x22,(function (){var sb__4702__auto__ \x3d (new goog.string.StringBuffer());\nvar _STAR_print_newline_STAR__orig_val__46830_49000 \x3d cljs.core._STAR_print_newline_STAR_;\nvar _STAR_print_fn_STAR__orig_val__46831_49001 \x3d cljs.core._STAR_print_fn_STAR_;\nvar _STAR_print_newline_STAR__temp_val__46832_49002 \x3d true;\nvar _STAR_print_fn_STAR__temp_val__46833_49003 \x3d (function (x__4703__auto__){\nreturn sb__4702__auto__.append(x__4703__auto__);\n});\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__temp_val__46832_49002);\n\n(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__temp_val__46833_49003);\n\ntry{cljs.spec.alpha.explain_out(ed);\n}finally {(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__orig_val__46831_49001);\n\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__orig_val__46830_49000);\n}\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4702__auto__);\n})()].join(\x27\x27)));\n}\n});\n");
SHADOW_ENV.evalLoad("goog.string.stringformat.js", true , "goog.provide(\x22goog.string.format\x22);\ngoog.require(\x22goog.string\x22);\ngoog.string.format \x3d function(formatString, var_args) {\n  var args \x3d Array.prototype.slice.call(arguments);\n  var template \x3d args.shift();\n  if (typeof template \x3d\x3d \x22undefined\x22) {\n    throw new Error(\x22[goog.string.format] Template required\x22);\n  }\n  var formatRe \x3d /%([0\\- \\+]*)(\\d+)?(\\.(\\d+))?([%sfdiu])/g;\n  function replacerDemuxer(match, flags, width, dotp, precision, type, offset, wholeString) {\n    if (type \x3d\x3d \x22%\x22) {\n      return \x22%\x22;\n    }\n    var value \x3d args.shift();\n    if (typeof value \x3d\x3d \x22undefined\x22) {\n      throw new Error(\x22[goog.string.format] Not enough arguments\x22);\n    }\n    arguments[0] \x3d value;\n    return goog.string.format.demuxes_[type].apply(null, arguments);\n  }\n  return template.replace(formatRe, replacerDemuxer);\n};\ngoog.string.format.demuxes_ \x3d {};\ngoog.string.format.demuxes_[\x22s\x22] \x3d function(value, flags, width, dotp, precision, type, offset, wholeString) {\n  var replacement \x3d value;\n  if (isNaN(width) || width \x3d\x3d \x22\x22 || replacement.length \x3e\x3d Number(width)) {\n    return replacement;\n  }\n  if (flags.indexOf(\x22-\x22, 0) \x3e -1) {\n    replacement \x3d replacement + goog.string.repeat(\x22 \x22, Number(width) - replacement.length);\n  } else {\n    replacement \x3d goog.string.repeat(\x22 \x22, Number(width) - replacement.length) + replacement;\n  }\n  return replacement;\n};\ngoog.string.format.demuxes_[\x22f\x22] \x3d function(value, flags, width, dotp, precision, type, offset, wholeString) {\n  var replacement \x3d value.toString();\n  if (!(isNaN(precision) || precision \x3d\x3d \x22\x22)) {\n    replacement \x3d parseFloat(value).toFixed(precision);\n  }\n  var sign;\n  if (Number(value) \x3c 0) {\n    sign \x3d \x22-\x22;\n  } else {\n    if (flags.indexOf(\x22+\x22) \x3e\x3d 0) {\n      sign \x3d \x22+\x22;\n    } else {\n      if (flags.indexOf(\x22 \x22) \x3e\x3d 0) {\n        sign \x3d \x22 \x22;\n      } else {\n        sign \x3d \x22\x22;\n      }\n    }\n  }\n  if (Number(value) \x3e\x3d 0) {\n    replacement \x3d sign + replacement;\n  }\n  if (isNaN(width) || replacement.length \x3e\x3d Number(width)) {\n    return replacement;\n  }\n  replacement \x3d isNaN(precision) ? Math.abs(Number(value)).toString() : Math.abs(Number(value)).toFixed(precision);\n  var padCount \x3d Number(width) - replacement.length - sign.length;\n  if (flags.indexOf(\x22-\x22, 0) \x3e\x3d 0) {\n    replacement \x3d sign + replacement + goog.string.repeat(\x22 \x22, padCount);\n  } else {\n    var paddingChar \x3d flags.indexOf(\x220\x22, 0) \x3e\x3d 0 ? \x220\x22 : \x22 \x22;\n    replacement \x3d sign + goog.string.repeat(paddingChar, padCount) + replacement;\n  }\n  return replacement;\n};\ngoog.string.format.demuxes_[\x22d\x22] \x3d function(value, flags, width, dotp, precision, type, offset, wholeString) {\n  return goog.string.format.demuxes_[\x22f\x22](parseInt(value, 10), flags, width, dotp, 0, type, offset, wholeString);\n};\ngoog.string.format.demuxes_[\x22i\x22] \x3d goog.string.format.demuxes_[\x22d\x22];\ngoog.string.format.demuxes_[\x22u\x22] \x3d goog.string.format.demuxes_[\x22d\x22];\n");
SHADOW_ENV.evalLoad("cljs.repl.js", true , "goog.provide(\x27cljs.repl\x27);\ncljs.repl.print_doc \x3d (function cljs$repl$print_doc(p__46880){\nvar map__46883 \x3d p__46880;\nvar map__46883__$1 \x3d cljs.core.__destructure_map(map__46883);\nvar m \x3d map__46883__$1;\nvar n \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46883__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nvar nm \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46883__$1,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177));\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22-------------------------\x22], 0));\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22spec\x22,\x22spec\x22,347520401).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn [(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ns \x3d temp__5753__auto__;\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),\x22/\x22].join(\x27\x27);\n} else {\nreturn null;\n}\n})(),cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m))].join(\x27\x27);\n}\n})()], 0));\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22protocol\x22,\x22protocol\x22,652470118).cljs$core$IFn$_invoke$arity$1(m))){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Protocol\x22], 0));\n} else {\n}\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350).cljs$core$IFn$_invoke$arity$1(m))){\nvar seq__46892_47461 \x3d cljs.core.seq(new cljs.core.Keyword(null,\x22forms\x22,\x22forms\x22,2045992350).cljs$core$IFn$_invoke$arity$1(m));\nvar chunk__46893_47462 \x3d null;\nvar count__46894_47463 \x3d (0);\nvar i__46895_47464 \x3d (0);\nwhile(true){\nif((i__46895_47464 \x3c count__46894_47463)){\nvar f_47468 \x3d chunk__46893_47462.cljs$core$IIndexed$_nth$arity$2(null,i__46895_47464);\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22  \x22,f_47468], 0));\n\n\nvar G__47470 \x3d seq__46892_47461;\nvar G__47471 \x3d chunk__46893_47462;\nvar G__47472 \x3d count__46894_47463;\nvar G__47473 \x3d (i__46895_47464 + (1));\nseq__46892_47461 \x3d G__47470;\nchunk__46893_47462 \x3d G__47471;\ncount__46894_47463 \x3d G__47472;\ni__46895_47464 \x3d G__47473;\ncontinue;\n} else {\nvar temp__5753__auto___47474 \x3d cljs.core.seq(seq__46892_47461);\nif(temp__5753__auto___47474){\nvar seq__46892_47476__$1 \x3d temp__5753__auto___47474;\nif(cljs.core.chunked_seq_QMARK_(seq__46892_47476__$1)){\nvar c__4591__auto___47477 \x3d cljs.core.chunk_first(seq__46892_47476__$1);\nvar G__47478 \x3d cljs.core.chunk_rest(seq__46892_47476__$1);\nvar G__47479 \x3d c__4591__auto___47477;\nvar G__47480 \x3d cljs.core.count(c__4591__auto___47477);\nvar G__47481 \x3d (0);\nseq__46892_47461 \x3d G__47478;\nchunk__46893_47462 \x3d G__47479;\ncount__46894_47463 \x3d G__47480;\ni__46895_47464 \x3d G__47481;\ncontinue;\n} else {\nvar f_47486 \x3d cljs.core.first(seq__46892_47476__$1);\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22  \x22,f_47486], 0));\n\n\nvar G__47487 \x3d cljs.core.next(seq__46892_47476__$1);\nvar G__47488 \x3d null;\nvar G__47489 \x3d (0);\nvar G__47490 \x3d (0);\nseq__46892_47461 \x3d G__47487;\nchunk__46893_47462 \x3d G__47488;\ncount__46894_47463 \x3d G__47489;\ni__46895_47464 \x3d G__47490;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m))){\nvar arglists_47499 \x3d new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Keyword(null,\x22repl-special-function\x22,\x22repl-special-function\x22,1262603725).cljs$core$IFn$_invoke$arity$1(m);\n}\n})())){\ncljs.core.prn.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([arglists_47499], 0));\n} else {\ncljs.core.prn.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),cljs.core.first(arglists_47499)))?cljs.core.second(arglists_47499):arglists_47499)], 0));\n}\n} else {\n}\n}\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22special-form\x22,\x22special-form\x22,-1326536374).cljs$core$IFn$_invoke$arity$1(m))){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Special Form\x22], 0));\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m)], 0));\n\nif(cljs.core.contains_QMARK_(m,new cljs.core.Keyword(null,\x22url\x22,\x22url\x22,276297046))){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22url\x22,\x22url\x22,276297046).cljs$core$IFn$_invoke$arity$1(m))){\nreturn cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22\\n  Please see http://clojure.org/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22url\x22,\x22url\x22,276297046).cljs$core$IFn$_invoke$arity$1(m))].join(\x27\x27)], 0));\n} else {\nreturn null;\n}\n} else {\nreturn cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22\\n  Please see http://clojure.org/special_forms#\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m))].join(\x27\x27)], 0));\n}\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m))){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Macro\x22], 0));\n} else {\n}\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22spec\x22,\x22spec\x22,347520401).cljs$core$IFn$_invoke$arity$1(m))){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Spec\x22], 0));\n} else {\n}\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22repl-special-function\x22,\x22repl-special-function\x22,1262603725).cljs$core$IFn$_invoke$arity$1(m))){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22REPL Special Function\x22], 0));\n} else {\n}\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m)], 0));\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22protocol\x22,\x22protocol\x22,652470118).cljs$core$IFn$_invoke$arity$1(m))){\nvar seq__46946_47514 \x3d cljs.core.seq(new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866).cljs$core$IFn$_invoke$arity$1(m));\nvar chunk__46947_47515 \x3d null;\nvar count__46948_47516 \x3d (0);\nvar i__46949_47517 \x3d (0);\nwhile(true){\nif((i__46949_47517 \x3c count__46948_47516)){\nvar vec__46986_47518 \x3d chunk__46947_47515.cljs$core$IIndexed$_nth$arity$2(null,i__46949_47517);\nvar name_47519 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46986_47518,(0),null);\nvar map__46989_47520 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__46986_47518,(1),null);\nvar map__46989_47521__$1 \x3d cljs.core.__destructure_map(map__46989_47520);\nvar doc_47522 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46989_47521__$1,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891));\nvar arglists_47523 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__46989_47521__$1,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754));\ncljs.core.println();\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,name_47519], 0));\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,arglists_47523], 0));\n\nif(cljs.core.truth_(doc_47522)){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,doc_47522], 0));\n} else {\n}\n\n\nvar G__47527 \x3d seq__46946_47514;\nvar G__47528 \x3d chunk__46947_47515;\nvar G__47529 \x3d count__46948_47516;\nvar G__47530 \x3d (i__46949_47517 + (1));\nseq__46946_47514 \x3d G__47527;\nchunk__46947_47515 \x3d G__47528;\ncount__46948_47516 \x3d G__47529;\ni__46949_47517 \x3d G__47530;\ncontinue;\n} else {\nvar temp__5753__auto___47533 \x3d cljs.core.seq(seq__46946_47514);\nif(temp__5753__auto___47533){\nvar seq__46946_47534__$1 \x3d temp__5753__auto___47533;\nif(cljs.core.chunked_seq_QMARK_(seq__46946_47534__$1)){\nvar c__4591__auto___47537 \x3d cljs.core.chunk_first(seq__46946_47534__$1);\nvar G__47539 \x3d cljs.core.chunk_rest(seq__46946_47534__$1);\nvar G__47540 \x3d c__4591__auto___47537;\nvar G__47541 \x3d cljs.core.count(c__4591__auto___47537);\nvar G__47542 \x3d (0);\nseq__46946_47514 \x3d G__47539;\nchunk__46947_47515 \x3d G__47540;\ncount__46948_47516 \x3d G__47541;\ni__46949_47517 \x3d G__47542;\ncontinue;\n} else {\nvar vec__47000_47546 \x3d cljs.core.first(seq__46946_47534__$1);\nvar name_47547 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47000_47546,(0),null);\nvar map__47003_47548 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47000_47546,(1),null);\nvar map__47003_47549__$1 \x3d cljs.core.__destructure_map(map__47003_47548);\nvar doc_47550 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47003_47549__$1,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891));\nvar arglists_47551 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47003_47549__$1,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754));\ncljs.core.println();\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,name_47547], 0));\n\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,arglists_47551], 0));\n\nif(cljs.core.truth_(doc_47550)){\ncljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,doc_47550], 0));\n} else {\n}\n\n\nvar G__47555 \x3d cljs.core.next(seq__46946_47534__$1);\nvar G__47556 \x3d null;\nvar G__47557 \x3d (0);\nvar G__47558 \x3d (0);\nseq__46946_47514 \x3d G__47555;\nchunk__46947_47515 \x3d G__47556;\ncount__46948_47516 \x3d G__47557;\ni__46949_47517 \x3d G__47558;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n} else {\n}\n\nif(cljs.core.truth_(n)){\nvar temp__5753__auto__ \x3d cljs.spec.alpha.get_spec(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.ns_name(n)),cljs.core.name(nm)));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar fnspec \x3d temp__5753__auto__;\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Spec\x22], 0));\n\nvar seq__47016 \x3d cljs.core.seq(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22args\x22,\x22args\x22,1315556576),new cljs.core.Keyword(null,\x22ret\x22,\x22ret\x22,-468222814),new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204)], null));\nvar chunk__47017 \x3d null;\nvar count__47018 \x3d (0);\nvar i__47019 \x3d (0);\nwhile(true){\nif((i__47019 \x3c count__47018)){\nvar role \x3d chunk__47017.cljs$core$IIndexed$_nth$arity$2(null,i__47019);\nvar temp__5753__auto___47564__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(fnspec,role);\nif(cljs.core.truth_(temp__5753__auto___47564__$1)){\nvar spec_47567 \x3d temp__5753__auto___47564__$1;\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22\\n \x22,cljs.core.name(role),\x22:\x22].join(\x27\x27),cljs.spec.alpha.describe(spec_47567)], 0));\n} else {\n}\n\n\nvar G__47569 \x3d seq__47016;\nvar G__47570 \x3d chunk__47017;\nvar G__47571 \x3d count__47018;\nvar G__47572 \x3d (i__47019 + (1));\nseq__47016 \x3d G__47569;\nchunk__47017 \x3d G__47570;\ncount__47018 \x3d G__47571;\ni__47019 \x3d G__47572;\ncontinue;\n} else {\nvar temp__5753__auto____$1 \x3d cljs.core.seq(seq__47016);\nif(temp__5753__auto____$1){\nvar seq__47016__$1 \x3d temp__5753__auto____$1;\nif(cljs.core.chunked_seq_QMARK_(seq__47016__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__47016__$1);\nvar G__47580 \x3d cljs.core.chunk_rest(seq__47016__$1);\nvar G__47581 \x3d c__4591__auto__;\nvar G__47582 \x3d cljs.core.count(c__4591__auto__);\nvar G__47583 \x3d (0);\nseq__47016 \x3d G__47580;\nchunk__47017 \x3d G__47581;\ncount__47018 \x3d G__47582;\ni__47019 \x3d G__47583;\ncontinue;\n} else {\nvar role \x3d cljs.core.first(seq__47016__$1);\nvar temp__5753__auto___47587__$2 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(fnspec,role);\nif(cljs.core.truth_(temp__5753__auto___47587__$2)){\nvar spec_47588 \x3d temp__5753__auto___47587__$2;\ncljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22\\n \x22,cljs.core.name(role),\x22:\x22].join(\x27\x27),cljs.spec.alpha.describe(spec_47588)], 0));\n} else {\n}\n\n\nvar G__47589 \x3d cljs.core.next(seq__47016__$1);\nvar G__47590 \x3d null;\nvar G__47591 \x3d (0);\nvar G__47592 \x3d (0);\nseq__47016 \x3d G__47589;\nchunk__47017 \x3d G__47590;\ncount__47018 \x3d G__47591;\ni__47019 \x3d G__47592;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n}\n});\n/**\n * Constructs a data representation for a Error with keys:\n *  :cause - root cause message\n *  :phase - error phase\n *  :via - cause chain, with cause keys:\n *           :type - exception class symbol\n *           :message - exception message\n *           :data - ex-data\n *           :at - top stack element\n *  :trace - root cause stack elements\n */\ncljs.repl.Error__GT_map \x3d (function cljs$repl$Error__GT_map(o){\nvar base \x3d (function (t){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),(((t instanceof cljs.core.ExceptionInfo))?new cljs.core.Symbol(\x22cljs.core\x22,\x22ExceptionInfo\x22,\x22cljs.core/ExceptionInfo\x22,701839050,null):(((t instanceof Error))?cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22js\x22,t.name):null\n))], null),(function (){var temp__5753__auto__ \x3d cljs.core.ex_message(t);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar msg \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22message\x22,\x22message\x22,-406056002),msg], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.ex_data(t);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ed \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),ed], null);\n} else {\nreturn null;\n}\n})()], 0));\n});\nvar via \x3d (function (){var via \x3d cljs.core.PersistentVector.EMPTY;\nvar t \x3d o;\nwhile(true){\nif(cljs.core.truth_(t)){\nvar G__47602 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(via,t);\nvar G__47603 \x3d cljs.core.ex_cause(t);\nvia \x3d G__47602;\nt \x3d G__47603;\ncontinue;\n} else {\nreturn via;\n}\nbreak;\n}\n})();\nvar root \x3d cljs.core.peek(via);\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336),cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2(base,via)),new cljs.core.Keyword(null,\x22trace\x22,\x22trace\x22,-1082747415),null], null),(function (){var temp__5753__auto__ \x3d cljs.core.ex_message(root);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar root_msg \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22cause\x22,\x22cause\x22,231901252),root_msg], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.ex_data(root);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar data \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),data], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(\x22clojure.error\x22,\x22phase\x22,\x22clojure.error/phase\x22,275140358).cljs$core$IFn$_invoke$arity$1(cljs.core.ex_data(o));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar phase \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22phase\x22,\x22phase\x22,575722892),phase], null);\n} else {\nreturn null;\n}\n})()], 0));\n});\n/**\n * Returns an analysis of the phase, error, cause, and location of an error that occurred\n *   based on Throwable data, as returned by Throwable-\x3emap. All attributes other than phase\n *   are optional:\n *  :clojure.error/phase - keyword phase indicator, one of:\n *    :read-source :compile-syntax-check :compilation :macro-syntax-check :macroexpansion\n *    :execution :read-eval-result :print-eval-result\n *  :clojure.error/source - file name (no path)\n *  :clojure.error/line - integer line number\n *  :clojure.error/column - integer column number\n *  :clojure.error/symbol - symbol being expanded/compiled/invoked\n *  :clojure.error/class - cause exception class symbol\n *  :clojure.error/cause - cause exception message\n *  :clojure.error/spec - explain-data for spec error\n */\ncljs.repl.ex_triage \x3d (function cljs$repl$ex_triage(datafied_throwable){\nvar map__47147 \x3d datafied_throwable;\nvar map__47147__$1 \x3d cljs.core.__destructure_map(map__47147);\nvar via \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47147__$1,new cljs.core.Keyword(null,\x22via\x22,\x22via\x22,-1904457336));\nvar trace \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47147__$1,new cljs.core.Keyword(null,\x22trace\x22,\x22trace\x22,-1082747415));\nvar phase \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__47147__$1,new cljs.core.Keyword(null,\x22phase\x22,\x22phase\x22,575722892),new cljs.core.Keyword(null,\x22execution\x22,\x22execution\x22,253283524));\nvar map__47149 \x3d cljs.core.last(via);\nvar map__47149__$1 \x3d cljs.core.__destructure_map(map__47149);\nvar type \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47149__$1,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348));\nvar message \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47149__$1,new cljs.core.Keyword(null,\x22message\x22,\x22message\x22,-406056002));\nvar data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47149__$1,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377));\nvar map__47150 \x3d data;\nvar map__47150__$1 \x3d cljs.core.__destructure_map(map__47150);\nvar problems \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47150__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22problems\x22,\x22cljs.spec.alpha/problems\x22,447400814));\nvar fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47150__$1,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22fn\x22,\x22cljs.spec.alpha/fn\x22,408600443));\nvar caller \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47150__$1,new cljs.core.Keyword(\x22cljs.spec.test.alpha\x22,\x22caller\x22,\x22cljs.spec.test.alpha/caller\x22,-398302390));\nvar map__47154 \x3d new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.first(via));\nvar map__47154__$1 \x3d cljs.core.__destructure_map(map__47154);\nvar top_data \x3d map__47154__$1;\nvar source \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47154__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397));\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3((function (){var G__47181 \x3d phase;\nvar G__47181__$1 \x3d (((G__47181 instanceof cljs.core.Keyword))?G__47181.fqn:null);\nswitch (G__47181__$1) {\ncase \x22read-source\x22:\nvar map__47193 \x3d data;\nvar map__47193__$1 \x3d cljs.core.__destructure_map(map__47193);\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47193__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22line\x22,\x22clojure.error/line\x22,-1816287471));\nvar column \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47193__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22column\x22,\x22clojure.error/column\x22,304721553));\nvar G__47199 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.second(via)),top_data], 0));\nvar G__47199__$1 \x3d (cljs.core.truth_(source)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47199,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397),source):G__47199);\nvar G__47199__$2 \x3d (cljs.core.truth_((function (){var fexpr__47210 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [\x22NO_SOURCE_PATH\x22,null,\x22NO_SOURCE_FILE\x22,null], null), null);\nreturn (fexpr__47210.cljs$core$IFn$_invoke$arity$1 ? fexpr__47210.cljs$core$IFn$_invoke$arity$1(source) : fexpr__47210.call(null,source));\n})())?cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__47199__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397)):G__47199__$1);\nif(cljs.core.truth_(message)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47199__$2,new cljs.core.Keyword(\x22clojure.error\x22,\x22cause\x22,\x22clojure.error/cause\x22,-1879175742),message);\n} else {\nreturn G__47199__$2;\n}\n\nbreak;\ncase \x22compile-syntax-check\x22:\ncase \x22compilation\x22:\ncase \x22macro-syntax-check\x22:\ncase \x22macroexpansion\x22:\nvar G__47221 \x3d top_data;\nvar G__47221__$1 \x3d (cljs.core.truth_(source)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47221,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397),source):G__47221);\nvar G__47221__$2 \x3d (cljs.core.truth_((function (){var fexpr__47242 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [\x22NO_SOURCE_PATH\x22,null,\x22NO_SOURCE_FILE\x22,null], null), null);\nreturn (fexpr__47242.cljs$core$IFn$_invoke$arity$1 ? fexpr__47242.cljs$core$IFn$_invoke$arity$1(source) : fexpr__47242.call(null,source));\n})())?cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__47221__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397)):G__47221__$1);\nvar G__47221__$3 \x3d (cljs.core.truth_(type)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47221__$2,new cljs.core.Keyword(\x22clojure.error\x22,\x22class\x22,\x22clojure.error/class\x22,278435890),type):G__47221__$2);\nvar G__47221__$4 \x3d (cljs.core.truth_(message)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47221__$3,new cljs.core.Keyword(\x22clojure.error\x22,\x22cause\x22,\x22clojure.error/cause\x22,-1879175742),message):G__47221__$3);\nif(cljs.core.truth_(problems)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47221__$4,new cljs.core.Keyword(\x22clojure.error\x22,\x22spec\x22,\x22clojure.error/spec\x22,2055032595),data);\n} else {\nreturn G__47221__$4;\n}\n\nbreak;\ncase \x22read-eval-result\x22:\ncase \x22print-eval-result\x22:\nvar vec__47248 \x3d cljs.core.first(trace);\nvar source__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47248,(0),null);\nvar method \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47248,(1),null);\nvar file \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47248,(2),null);\nvar line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47248,(3),null);\nvar G__47257 \x3d top_data;\nvar G__47257__$1 \x3d (cljs.core.truth_(line)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47257,new cljs.core.Keyword(\x22clojure.error\x22,\x22line\x22,\x22clojure.error/line\x22,-1816287471),line):G__47257);\nvar G__47257__$2 \x3d (cljs.core.truth_(file)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47257__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397),file):G__47257__$1);\nvar G__47257__$3 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d source__$1;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn method;\n} else {\nreturn and__4149__auto__;\n}\n})())?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47257__$2,new cljs.core.Keyword(\x22clojure.error\x22,\x22symbol\x22,\x22clojure.error/symbol\x22,1544821994),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[source__$1,method],null))):G__47257__$2);\nvar G__47257__$4 \x3d (cljs.core.truth_(type)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47257__$3,new cljs.core.Keyword(\x22clojure.error\x22,\x22class\x22,\x22clojure.error/class\x22,278435890),type):G__47257__$3);\nif(cljs.core.truth_(message)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47257__$4,new cljs.core.Keyword(\x22clojure.error\x22,\x22cause\x22,\x22clojure.error/cause\x22,-1879175742),message);\n} else {\nreturn G__47257__$4;\n}\n\nbreak;\ncase \x22execution\x22:\nvar vec__47285 \x3d cljs.core.first(trace);\nvar source__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47285,(0),null);\nvar method \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47285,(1),null);\nvar file \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47285,(2),null);\nvar line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__47285,(3),null);\nvar file__$1 \x3d cljs.core.first(cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p1__47138_SHARP_){\nvar or__4160__auto__ \x3d (p1__47138_SHARP_ \x3d\x3d null);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar fexpr__47304 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [\x22NO_SOURCE_PATH\x22,null,\x22NO_SOURCE_FILE\x22,null], null), null);\nreturn (fexpr__47304.cljs$core$IFn$_invoke$arity$1 ? fexpr__47304.cljs$core$IFn$_invoke$arity$1(p1__47138_SHARP_) : fexpr__47304.call(null,p1__47138_SHARP_));\n}\n}),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878).cljs$core$IFn$_invoke$arity$1(caller),file], null)));\nvar err_line \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235).cljs$core$IFn$_invoke$arity$1(caller);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn line;\n}\n})();\nvar G__47315 \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22clojure.error\x22,\x22class\x22,\x22clojure.error/class\x22,278435890),type], null);\nvar G__47315__$1 \x3d (cljs.core.truth_(err_line)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47315,new cljs.core.Keyword(\x22clojure.error\x22,\x22line\x22,\x22clojure.error/line\x22,-1816287471),err_line):G__47315);\nvar G__47315__$2 \x3d (cljs.core.truth_(message)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47315__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22cause\x22,\x22clojure.error/cause\x22,-1879175742),message):G__47315__$1);\nvar G__47315__$3 \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d fn;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar and__4149__auto__ \x3d source__$1;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn method;\n} else {\nreturn and__4149__auto__;\n}\n}\n})())?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47315__$2,new cljs.core.Keyword(\x22clojure.error\x22,\x22symbol\x22,\x22clojure.error/symbol\x22,1544821994),(function (){var or__4160__auto__ \x3d fn;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[source__$1,method],null));\n}\n})()):G__47315__$2);\nvar G__47315__$4 \x3d (cljs.core.truth_(file__$1)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47315__$3,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397),file__$1):G__47315__$3);\nif(cljs.core.truth_(problems)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__47315__$4,new cljs.core.Keyword(\x22clojure.error\x22,\x22spec\x22,\x22clojure.error/spec\x22,2055032595),data);\n} else {\nreturn G__47315__$4;\n}\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__47181__$1)].join(\x27\x27)));\n\n}\n})(),new cljs.core.Keyword(\x22clojure.error\x22,\x22phase\x22,\x22clojure.error/phase\x22,275140358),phase);\n});\n/**\n * Returns a string from exception data, as produced by ex-triage.\n *   The first line summarizes the exception phase and location.\n *   The subsequent lines describe the cause.\n */\ncljs.repl.ex_str \x3d (function cljs$repl$ex_str(p__47334){\nvar map__47335 \x3d p__47334;\nvar map__47335__$1 \x3d cljs.core.__destructure_map(map__47335);\nvar triage_data \x3d map__47335__$1;\nvar phase \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22phase\x22,\x22clojure.error/phase\x22,275140358));\nvar source \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22source\x22,\x22clojure.error/source\x22,-2011936397));\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22line\x22,\x22clojure.error/line\x22,-1816287471));\nvar column \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22column\x22,\x22clojure.error/column\x22,304721553));\nvar symbol \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22symbol\x22,\x22clojure.error/symbol\x22,1544821994));\nvar class$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22class\x22,\x22clojure.error/class\x22,278435890));\nvar cause \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22cause\x22,\x22clojure.error/cause\x22,-1879175742));\nvar spec \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__47335__$1,new cljs.core.Keyword(\x22clojure.error\x22,\x22spec\x22,\x22clojure.error/spec\x22,2055032595));\nvar loc \x3d [cljs.core.str.cljs$core$IFn$_invoke$arity$1((function (){var or__4160__auto__ \x3d source;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22\x3ccljs repl\x3e\x22;\n}\n})()),\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((function (){var or__4160__auto__ \x3d line;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (1);\n}\n})()),(cljs.core.truth_(column)?[\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(column)].join(\x27\x27):\x22\x22)].join(\x27\x27);\nvar class_name \x3d cljs.core.name((function (){var or__4160__auto__ \x3d class$;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22\x22;\n}\n})());\nvar simple_class \x3d class_name;\nvar cause_type \x3d ((cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [\x22RuntimeException\x22,null,\x22Exception\x22,null], null), null),simple_class))?\x22\x22:[\x22 (\x22,simple_class,\x22)\x22].join(\x27\x27));\nvar format \x3d goog.string.format;\nvar G__47348 \x3d phase;\nvar G__47348__$1 \x3d (((G__47348 instanceof cljs.core.Keyword))?G__47348.fqn:null);\nswitch (G__47348__$1) {\ncase \x22read-source\x22:\nreturn (format.cljs$core$IFn$_invoke$arity$3 ? format.cljs$core$IFn$_invoke$arity$3(\x22Syntax error reading source at (%s).\\n%s\\n\x22,loc,cause) : format.call(null,\x22Syntax error reading source at (%s).\\n%s\\n\x22,loc,cause));\n\nbreak;\ncase \x22macro-syntax-check\x22:\nvar G__47352 \x3d \x22Syntax error macroexpanding %sat (%s).\\n%s\x22;\nvar G__47353 \x3d (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol),\x22 \x22].join(\x27\x27):\x22\x22);\nvar G__47354 \x3d loc;\nvar G__47355 \x3d (cljs.core.truth_(spec)?(function (){var sb__4702__auto__ \x3d (new goog.string.StringBuffer());\nvar _STAR_print_newline_STAR__orig_val__47360_47711 \x3d cljs.core._STAR_print_newline_STAR_;\nvar _STAR_print_fn_STAR__orig_val__47361_47712 \x3d cljs.core._STAR_print_fn_STAR_;\nvar _STAR_print_newline_STAR__temp_val__47362_47713 \x3d true;\nvar _STAR_print_fn_STAR__temp_val__47363_47714 \x3d (function (x__4703__auto__){\nreturn sb__4702__auto__.append(x__4703__auto__);\n});\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__temp_val__47362_47713);\n\n(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__temp_val__47363_47714);\n\ntry{cljs.spec.alpha.explain_out(cljs.core.update.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22problems\x22,\x22cljs.spec.alpha/problems\x22,447400814),(function (probs){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__47328_SHARP_){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(p1__47328_SHARP_,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865));\n}),probs);\n}))\n);\n}finally {(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__orig_val__47361_47712);\n\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__orig_val__47360_47711);\n}\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4702__auto__);\n})():(format.cljs$core$IFn$_invoke$arity$2 ? format.cljs$core$IFn$_invoke$arity$2(\x22%s\\n\x22,cause) : format.call(null,\x22%s\\n\x22,cause)));\nreturn (format.cljs$core$IFn$_invoke$arity$4 ? format.cljs$core$IFn$_invoke$arity$4(G__47352,G__47353,G__47354,G__47355) : format.call(null,G__47352,G__47353,G__47354,G__47355));\n\nbreak;\ncase \x22macroexpansion\x22:\nvar G__47382 \x3d \x22Unexpected error%s macroexpanding %sat (%s).\\n%s\\n\x22;\nvar G__47383 \x3d cause_type;\nvar G__47384 \x3d (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol),\x22 \x22].join(\x27\x27):\x22\x22);\nvar G__47385 \x3d loc;\nvar G__47386 \x3d cause;\nreturn (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__47382,G__47383,G__47384,G__47385,G__47386) : format.call(null,G__47382,G__47383,G__47384,G__47385,G__47386));\n\nbreak;\ncase \x22compile-syntax-check\x22:\nvar G__47392 \x3d \x22Syntax error%s compiling %sat (%s).\\n%s\\n\x22;\nvar G__47393 \x3d cause_type;\nvar G__47394 \x3d (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol),\x22 \x22].join(\x27\x27):\x22\x22);\nvar G__47395 \x3d loc;\nvar G__47396 \x3d cause;\nreturn (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__47392,G__47393,G__47394,G__47395,G__47396) : format.call(null,G__47392,G__47393,G__47394,G__47395,G__47396));\n\nbreak;\ncase \x22compilation\x22:\nvar G__47407 \x3d \x22Unexpected error%s compiling %sat (%s).\\n%s\\n\x22;\nvar G__47408 \x3d cause_type;\nvar G__47409 \x3d (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol),\x22 \x22].join(\x27\x27):\x22\x22);\nvar G__47410 \x3d loc;\nvar G__47411 \x3d cause;\nreturn (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__47407,G__47408,G__47409,G__47410,G__47411) : format.call(null,G__47407,G__47408,G__47409,G__47410,G__47411));\n\nbreak;\ncase \x22read-eval-result\x22:\nreturn (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(\x22Error reading eval result%s at %s (%s).\\n%s\\n\x22,cause_type,symbol,loc,cause) : format.call(null,\x22Error reading eval result%s at %s (%s).\\n%s\\n\x22,cause_type,symbol,loc,cause));\n\nbreak;\ncase \x22print-eval-result\x22:\nreturn (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(\x22Error printing return value%s at %s (%s).\\n%s\\n\x22,cause_type,symbol,loc,cause) : format.call(null,\x22Error printing return value%s at %s (%s).\\n%s\\n\x22,cause_type,symbol,loc,cause));\n\nbreak;\ncase \x22execution\x22:\nif(cljs.core.truth_(spec)){\nvar G__47415 \x3d \x22Execution error - invalid arguments to %s at (%s).\\n%s\x22;\nvar G__47416 \x3d symbol;\nvar G__47417 \x3d loc;\nvar G__47418 \x3d (function (){var sb__4702__auto__ \x3d (new goog.string.StringBuffer());\nvar _STAR_print_newline_STAR__orig_val__47423_47743 \x3d cljs.core._STAR_print_newline_STAR_;\nvar _STAR_print_fn_STAR__orig_val__47424_47744 \x3d cljs.core._STAR_print_fn_STAR_;\nvar _STAR_print_newline_STAR__temp_val__47425_47745 \x3d true;\nvar _STAR_print_fn_STAR__temp_val__47426_47746 \x3d (function (x__4703__auto__){\nreturn sb__4702__auto__.append(x__4703__auto__);\n});\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__temp_val__47425_47745);\n\n(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__temp_val__47426_47746);\n\ntry{cljs.spec.alpha.explain_out(cljs.core.update.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword(\x22cljs.spec.alpha\x22,\x22problems\x22,\x22cljs.spec.alpha/problems\x22,447400814),(function (probs){\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__47331_SHARP_){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(p1__47331_SHARP_,new cljs.core.Keyword(null,\x22in\x22,\x22in\x22,-1531184865));\n}),probs);\n}))\n);\n}finally {(cljs.core._STAR_print_fn_STAR_ \x3d _STAR_print_fn_STAR__orig_val__47424_47744);\n\n(cljs.core._STAR_print_newline_STAR_ \x3d _STAR_print_newline_STAR__orig_val__47423_47743);\n}\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4702__auto__);\n})();\nreturn (format.cljs$core$IFn$_invoke$arity$4 ? format.cljs$core$IFn$_invoke$arity$4(G__47415,G__47416,G__47417,G__47418) : format.call(null,G__47415,G__47416,G__47417,G__47418));\n} else {\nvar G__47434 \x3d \x22Execution error%s at %s(%s).\\n%s\\n\x22;\nvar G__47435 \x3d cause_type;\nvar G__47436 \x3d (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol),\x22 \x22].join(\x27\x27):\x22\x22);\nvar G__47437 \x3d loc;\nvar G__47438 \x3d cause;\nreturn (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__47434,G__47435,G__47436,G__47437,G__47438) : format.call(null,G__47434,G__47435,G__47436,G__47437,G__47438));\n}\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__47348__$1)].join(\x27\x27)));\n\n}\n});\ncljs.repl.error__GT_str \x3d (function cljs$repl$error__GT_str(error){\nreturn cljs.repl.ex_str(cljs.repl.ex_triage(cljs.repl.Error__GT_map(error)));\n});\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.obj_support.js", true , "goog.provide(\x27shadow.remote.runtime.obj_support\x27);\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nshadow.remote.runtime.obj_support.Reference \x3d (function (obj,__meta,__extmap,__hash){\nthis.obj \x3d obj;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k48208,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__48222 \x3d k48208;\nvar G__48222__$1 \x3d (((G__48222 instanceof cljs.core.Keyword))?G__48222.fqn:null);\nswitch (G__48222__$1) {\ncase \x22obj\x22:\nreturn self__.obj;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k48208,else__4418__auto__);\n\n}\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__48229){\nvar vec__48230 \x3d p__48229;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48230,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48230,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#shadow.remote.runtime.obj-support.Reference{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),self__.obj],null))], null),self__.__extmap));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__48207){\nvar self__ \x3d this;\nvar G__48207__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__48207__$1,1,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new shadow.remote.runtime.obj_support.Reference(self__.obj,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (1 + cljs.core.count(self__.__extmap));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (1775716890 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this48209,other48210){\nvar self__ \x3d this;\nvar this48209__$1 \x3d this;\nreturn (((!((other48210 \x3d\x3d null)))) \x26\x26 ((this48209__$1.constructor \x3d\x3d\x3d other48210.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this48209__$1.obj,other48210.obj)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this48209__$1.__extmap,other48210.__extmap)));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new shadow.remote.runtime.obj_support.Reference(self__.obj,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__48207){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__48273 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__48274 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__48273.cljs$core$IFn$_invoke$arity$2 ? pred__48273.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),expr__48274) : pred__48273.call(null,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),expr__48274)))){\nreturn (new shadow.remote.runtime.obj_support.Reference(G__48207,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new shadow.remote.runtime.obj_support.Reference(self__.obj,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__48207),null));\n}\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),self__.obj,null))], null),self__.__extmap));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__48207){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new shadow.remote.runtime.obj_support.Reference(self__.obj,G__48207,self__.__extmap,self__.__hash));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(shadow.remote.runtime.obj_support.Reference.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null)], null);\n}));\n\n(shadow.remote.runtime.obj_support.Reference.cljs$lang$type \x3d true);\n\n(shadow.remote.runtime.obj_support.Reference.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22shadow.remote.runtime.obj-support/Reference\x22,null,(1),null));\n}));\n\n(shadow.remote.runtime.obj_support.Reference.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22shadow.remote.runtime.obj-support/Reference\x22);\n}));\n\n/**\n * Positional factory function for shadow.remote.runtime.obj-support/Reference.\n */\nshadow.remote.runtime.obj_support.__GT_Reference \x3d (function shadow$remote$runtime$obj_support$__GT_Reference(obj){\nreturn (new shadow.remote.runtime.obj_support.Reference(obj,null,null,null));\n});\n\n/**\n * Factory function for shadow.remote.runtime.obj-support/Reference, taking a map of keywords to field values.\n */\nshadow.remote.runtime.obj_support.map__GT_Reference \x3d (function shadow$remote$runtime$obj_support$map__GT_Reference(G__48215){\nvar extmap__4454__auto__ \x3d (function (){var G__48297 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__48215,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962));\nif(cljs.core.record_QMARK_(G__48215)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__48297);\n} else {\nreturn G__48297;\n}\n})();\nreturn (new shadow.remote.runtime.obj_support.Reference(new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962).cljs$core$IFn$_invoke$arity$1(G__48215),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nshadow.remote.runtime.obj_support.obj_ref \x3d (function shadow$remote$runtime$obj_support$obj_ref(obj){\nif((!((obj \x3d\x3d null)))){\nreturn (new shadow.remote.runtime.obj_support.Reference(obj,null,null,null));\n} else {\nreturn null;\n}\n});\nshadow.remote.runtime.obj_support.obj_ref_QMARK_ \x3d (function shadow$remote$runtime$obj_support$obj_ref_QMARK_(result){\nreturn (result instanceof shadow.remote.runtime.obj_support.Reference);\n});\nshadow.remote.runtime.obj_support.now \x3d (function shadow$remote$runtime$obj_support$now(){\nreturn Date.now();\n});\nshadow.remote.runtime.obj_support.next_oid \x3d (function shadow$remote$runtime$obj_support$next_oid(){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.random_uuid());\n});\nshadow.remote.runtime.obj_support.register_STAR_ \x3d (function shadow$remote$runtime$obj_support$register_STAR_(state,oid,obj,obj_info){\nvar ts \x3d shadow.remote.runtime.obj_support.now();\nvar obj_entry \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),obj,new cljs.core.Keyword(null,\x22access-at\x22,\x22access-at\x22,-1487162729),ts,new cljs.core.Keyword(null,\x22obj-info\x22,\x22obj-info\x22,-373842651),cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(obj_info,new cljs.core.Keyword(null,\x22added-at\x22,\x22added-at\x22,-352499434),ts)], null);\nreturn cljs.core.assoc_in(state,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid], null),obj_entry);\n});\nshadow.remote.runtime.obj_support.obj_type_string \x3d (function shadow$remote$runtime$obj_support$obj_type_string(obj){\nif((obj \x3d\x3d null)){\nreturn \x22nil\x22;\n} else {\nreturn cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.type(obj)], 0));\n}\n});\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.remote !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.remote.runtime !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.remote.runtime.obj_support !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.remote.runtime.obj_support.make_view !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.remote.runtime.obj_support.make_view \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__48317 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__48317.cljs$core$IFn$_invoke$arity$0 ? fexpr__48317.cljs$core$IFn$_invoke$arity$0() : fexpr__48317.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22shadow.remote.runtime.obj-support\x22,\x22make-view\x22),(function (state_ref,p__48319,entry){\nvar map__48320 \x3d p__48319;\nvar map__48320__$1 \x3d cljs.core.__destructure_map(map__48320);\nvar msg \x3d map__48320__$1;\nvar view_type \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48320__$1,new cljs.core.Keyword(null,\x22view-type\x22,\x22view-type\x22,-1848894559));\nreturn view_type;\n}),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\nshadow.remote.runtime.obj_support.default_max_print_size \x3d (((1) * (1024)) * (1024));\nshadow.remote.runtime.obj_support.as_edn \x3d (function shadow$remote$runtime$obj_support$as_edn(data,p__48339){\nvar map__48345 \x3d p__48339;\nvar map__48345__$1 \x3d cljs.core.__destructure_map(map__48345);\nvar msg \x3d map__48345__$1;\nvar limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48345__$1,new cljs.core.Keyword(null,\x22limit\x22,\x22limit\x22,-1355822363),shadow.remote.runtime.obj_support.default_max_print_size);\nvar lw \x3d shadow.remote.runtime.writer.limit_writer(limit);\ncljs.core.pr_writer(data,lw,cljs.core.pr_opts());\n\nreturn shadow.remote.runtime.writer.get_string(lw);\n});\nshadow.remote.runtime.obj_support.as_pprint \x3d (function shadow$remote$runtime$obj_support$as_pprint(data,p__48346){\nvar map__48347 \x3d p__48346;\nvar map__48347__$1 \x3d cljs.core.__destructure_map(map__48347);\nvar msg \x3d map__48347__$1;\nvar limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48347__$1,new cljs.core.Keyword(null,\x22limit\x22,\x22limit\x22,-1355822363),shadow.remote.runtime.obj_support.default_max_print_size);\nvar lw \x3d shadow.remote.runtime.writer.limit_writer(limit);\ncljs.pprint.pprint.cljs$core$IFn$_invoke$arity$2(data,lw);\n\nreturn shadow.remote.runtime.writer.get_string(lw);\n});\nshadow.remote.runtime.obj_support.as_edn_limit \x3d (function shadow$remote$runtime$obj_support$as_edn_limit(data,p__48351){\nvar map__48352 \x3d p__48351;\nvar map__48352__$1 \x3d cljs.core.__destructure_map(map__48352);\nvar msg \x3d map__48352__$1;\nvar limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48352__$1,new cljs.core.Keyword(null,\x22limit\x22,\x22limit\x22,-1355822363));\nreturn shadow.remote.runtime.writer.pr_str_limit(data,limit);\n});\nshadow.remote.runtime.obj_support.as_str \x3d (function shadow$remote$runtime$obj_support$as_str(data,msg){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(data);\n});\nshadow.remote.runtime.obj_support.as_ex_str \x3d (function shadow$remote$runtime$obj_support$as_ex_str(ex,msg){\nif((ex instanceof Error)){\nreturn cljs.repl.error__GT_str(ex);\n} else {\nreturn [\x22Execution error:\\n\x22,\x22  \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.second(shadow.remote.runtime.writer.pr_str_limit(ex,(200)))),\x22\\n\x22,\x22\\n\x22].join(\x27\x27);\n}\n});\nshadow.remote.runtime.obj_support.exception_QMARK_ \x3d (function shadow$remote$runtime$obj_support$exception_QMARK_(x){\nreturn true;\n});\nshadow.remote.runtime.obj_support.attempt_to_sort \x3d (function shadow$remote$runtime$obj_support$attempt_to_sort(desc,coll){\ntry{return cljs.core.assoc_in(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(desc,new cljs.core.Keyword(null,\x22view-order\x22,\x22view-order\x22,566761574),cljs.core.vec(cljs.core.sort.cljs$core$IFn$_invoke$arity$1(coll))),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22sorted\x22,\x22sorted\x22,-896746253)], null),true);\n}catch (e48368){var e \x3d e48368;\nreturn cljs.core.assoc_in(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(desc,new cljs.core.Keyword(null,\x22view-order\x22,\x22view-order\x22,566761574),cljs.core.vec(coll)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22sorted\x22,\x22sorted\x22,-896746253)], null),false);\n}});\nshadow.remote.runtime.obj_support.browseable_kv \x3d (function shadow$remote$runtime$obj_support$browseable_kv(p__48377){\nvar map__48380 \x3d p__48377;\nvar map__48380__$1 \x3d cljs.core.__destructure_map(map__48380);\nvar desc \x3d map__48380__$1;\nvar view_order \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48380__$1,new cljs.core.Keyword(null,\x22view-order\x22,\x22view-order\x22,566761574));\nvar data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48380__$1,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377));\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22nav\x22,\x22nav\x22,719540477)], null),(function (p__48384){\nvar map__48385 \x3d p__48384;\nvar map__48385__$1 \x3d cljs.core.__destructure_map(map__48385);\nvar idx \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48385__$1,new cljs.core.Keyword(null,\x22idx\x22,\x22idx\x22,1053688473));\nvar key \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(view_order,idx);\nvar val \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(data,key);\nvar nav \x3d clojure.datafy.nav(data,key,val);\nreturn shadow.remote.runtime.obj_support.obj_ref(nav);\n})),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22fragment\x22,\x22fragment\x22,826775688)], null),(function (p__48396){\nvar map__48397 \x3d p__48396;\nvar map__48397__$1 \x3d cljs.core.__destructure_map(map__48397);\nvar msg \x3d map__48397__$1;\nvar start \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48397__$1,new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981));\nvar num \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48397__$1,new cljs.core.Keyword(null,\x22num\x22,\x22num\x22,1985240673));\nvar key_limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48397__$1,new cljs.core.Keyword(null,\x22key-limit\x22,\x22key-limit\x22,259239169),(100));\nvar val_limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48397__$1,new cljs.core.Keyword(null,\x22val-limit\x22,\x22val-limit\x22,1428666181),(100));\nvar end \x3d (function (){var x__4252__auto__ \x3d cljs.core.count(view_order);\nvar y__4253__auto__ \x3d (start + num);\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})();\nvar idxs \x3d cljs.core.range.cljs$core$IFn$_invoke$arity$2(start,end);\nvar fragment \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,idx){\nvar key \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(view_order,idx);\nvar val \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(data,key);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,idx,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22key\x22,\x22key\x22,-1516042587),(function (){try{return shadow.remote.runtime.writer.pr_str_limit(key,key_limit);\n}catch (e48406){var e \x3d e48406;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,\x22... print failed ...\x22], null);\n}})(),new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),(function (){try{return shadow.remote.runtime.writer.pr_str_limit(val,val_limit);\n}catch (e48407){var e \x3d e48407;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,\x22... print failed ...\x22], null);\n}})()], null));\n}),cljs.core.PersistentArrayMap.EMPTY,idxs);\nreturn fragment;\n}));\n});\nshadow.remote.runtime.obj_support.browseable_vec \x3d (function shadow$remote$runtime$obj_support$browseable_vec(p__48413){\nvar map__48416 \x3d p__48413;\nvar map__48416__$1 \x3d cljs.core.__destructure_map(map__48416);\nvar desc \x3d map__48416__$1;\nvar data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48416__$1,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377));\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22nav\x22,\x22nav\x22,719540477)], null),(function (p__48422){\nvar map__48429 \x3d p__48422;\nvar map__48429__$1 \x3d cljs.core.__destructure_map(map__48429);\nvar idx \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48429__$1,new cljs.core.Keyword(null,\x22idx\x22,\x22idx\x22,1053688473));\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(data,idx);\nvar nav \x3d clojure.datafy.nav(data,idx,val);\nreturn shadow.remote.runtime.obj_support.obj_ref(nav);\n})),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22fragment\x22,\x22fragment\x22,826775688)], null),(function (p__48434){\nvar map__48435 \x3d p__48434;\nvar map__48435__$1 \x3d cljs.core.__destructure_map(map__48435);\nvar msg \x3d map__48435__$1;\nvar start \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48435__$1,new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981));\nvar num \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48435__$1,new cljs.core.Keyword(null,\x22num\x22,\x22num\x22,1985240673));\nvar val_limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48435__$1,new cljs.core.Keyword(null,\x22val-limit\x22,\x22val-limit\x22,1428666181),(100));\nvar end \x3d (function (){var x__4252__auto__ \x3d cljs.core.count(data);\nvar y__4253__auto__ \x3d (start + num);\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})();\nvar idxs \x3d cljs.core.range.cljs$core$IFn$_invoke$arity$2(start,end);\nvar fragment \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,idx){\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(data,idx);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,idx,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),shadow.remote.runtime.writer.pr_str_limit(val,val_limit)], null));\n}),cljs.core.PersistentArrayMap.EMPTY,idxs);\nreturn fragment;\n}));\n});\nshadow.remote.runtime.obj_support.browseable_seq \x3d (function shadow$remote$runtime$obj_support$browseable_seq(p__48445){\nvar map__48446 \x3d p__48445;\nvar map__48446__$1 \x3d cljs.core.__destructure_map(map__48446);\nvar desc \x3d map__48446__$1;\nvar data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48446__$1,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377));\nvar view_order \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48446__$1,new cljs.core.Keyword(null,\x22view-order\x22,\x22view-order\x22,566761574));\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22nav\x22,\x22nav\x22,719540477)], null),(function (p__48449){\nvar map__48450 \x3d p__48449;\nvar map__48450__$1 \x3d cljs.core.__destructure_map(map__48450);\nvar idx \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48450__$1,new cljs.core.Keyword(null,\x22idx\x22,\x22idx\x22,1053688473));\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(view_order,idx);\nvar nav \x3d clojure.datafy.nav(data,idx,val);\nreturn shadow.remote.runtime.obj_support.obj_ref(nav);\n})),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22fragment\x22,\x22fragment\x22,826775688)], null),(function (p__48452){\nvar map__48453 \x3d p__48452;\nvar map__48453__$1 \x3d cljs.core.__destructure_map(map__48453);\nvar msg \x3d map__48453__$1;\nvar start \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48453__$1,new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981));\nvar num \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48453__$1,new cljs.core.Keyword(null,\x22num\x22,\x22num\x22,1985240673));\nvar val_limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48453__$1,new cljs.core.Keyword(null,\x22val-limit\x22,\x22val-limit\x22,1428666181),(100));\nvar end \x3d (function (){var x__4252__auto__ \x3d cljs.core.count(view_order);\nvar y__4253__auto__ \x3d (start + num);\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})();\nvar idxs \x3d cljs.core.range.cljs$core$IFn$_invoke$arity$2(start,end);\nvar fragment \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,idx){\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(view_order,idx);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,idx,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),shadow.remote.runtime.writer.pr_str_limit(val,val_limit)], null));\n}),cljs.core.PersistentArrayMap.EMPTY,idxs);\nreturn fragment;\n}));\n});\nshadow.remote.runtime.obj_support.pageable_seq \x3d (function shadow$remote$runtime$obj_support$pageable_seq(p__48458){\nvar map__48460 \x3d p__48458;\nvar map__48460__$1 \x3d cljs.core.__destructure_map(map__48460);\nvar desc \x3d map__48460__$1;\nvar data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48460__$1,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377));\nvar seq_state_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22tail\x22,\x22tail\x22,-1146023564),data,new cljs.core.Keyword(null,\x22realized\x22,\x22realized\x22,-153188123),cljs.core.PersistentVector.EMPTY], null));\nreturn cljs.core.assoc_in(cljs.core.assoc_in(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(desc,new cljs.core.Keyword(null,\x22seq-state-ref\x22,\x22seq-state-ref\x22,869825254),seq_state_ref),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22nav\x22,\x22nav\x22,719540477)], null),(function (p__48462){\nvar map__48463 \x3d p__48462;\nvar map__48463__$1 \x3d cljs.core.__destructure_map(map__48463);\nvar idx \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48463__$1,new cljs.core.Keyword(null,\x22idx\x22,\x22idx\x22,1053688473));\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22realized\x22,\x22realized\x22,-153188123).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(seq_state_ref)),idx);\nvar nav \x3d clojure.datafy.nav(data,idx,val);\nreturn shadow.remote.runtime.obj_support.obj_ref(nav);\n})),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22chunk\x22,\x22chunk\x22,-1191159620)], null),(function (p__48466){\nvar map__48468 \x3d p__48466;\nvar map__48468__$1 \x3d cljs.core.__destructure_map(map__48468);\nvar msg \x3d map__48468__$1;\nvar start \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48468__$1,new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981));\nvar num \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48468__$1,new cljs.core.Keyword(null,\x22num\x22,\x22num\x22,1985240673));\nvar val_limit \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48468__$1,new cljs.core.Keyword(null,\x22val-limit\x22,\x22val-limit\x22,1428666181),(100));\nvar map__48473 \x3d cljs.core.deref(seq_state_ref);\nvar map__48473__$1 \x3d cljs.core.__destructure_map(map__48473);\nvar seq_state \x3d map__48473__$1;\nvar tail \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48473__$1,new cljs.core.Keyword(null,\x22tail\x22,\x22tail\x22,-1146023564));\nvar realized \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48473__$1,new cljs.core.Keyword(null,\x22realized\x22,\x22realized\x22,-153188123));\nvar end \x3d (start + num);\nvar missing \x3d (end - cljs.core.count(realized));\nvar vec__48474 \x3d (function (){var tail__$1 \x3d tail;\nvar realized__$1 \x3d realized;\nvar missing__$1 \x3d missing;\nwhile(true){\nif((!((missing__$1 \x3e (0))))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [tail__$1,realized__$1], null);\n} else {\nvar next \x3d cljs.core.first(tail__$1);\nif((next \x3d\x3d null)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,realized__$1], null);\n} else {\nvar G__49036 \x3d cljs.core.rest(tail__$1);\nvar G__49037 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(realized__$1,next);\nvar G__49038 \x3d (missing__$1 - (1));\ntail__$1 \x3d G__49036;\nrealized__$1 \x3d G__49037;\nmissing__$1 \x3d G__49038;\ncontinue;\n}\n}\nbreak;\n}\n})();\nvar tail__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48474,(0),null);\nvar realized__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48474,(1),null);\nvar idxs \x3d cljs.core.range.cljs$core$IFn$_invoke$arity$2(start,(function (){var x__4252__auto__ \x3d end;\nvar y__4253__auto__ \x3d cljs.core.count(realized__$1);\nreturn ((x__4252__auto__ \x3c y__4253__auto__) ? x__4252__auto__ : y__4253__auto__);\n})());\nvar fragment \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (m,idx){\nvar val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(realized__$1,idx);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,idx,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),shadow.remote.runtime.writer.pr_str_limit(val,val_limit)], null));\n}),cljs.core.PersistentArrayMap.EMPTY,idxs);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(seq_state_ref,cljs.core.assoc,new cljs.core.Keyword(null,\x22tail\x22,\x22tail\x22,-1146023564),tail__$1,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22realized\x22,\x22realized\x22,-153188123),realized__$1], 0));\n\nreturn new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22start\x22,\x22start\x22,-355208981),start,new cljs.core.Keyword(null,\x22realized\x22,\x22realized\x22,-153188123),cljs.core.count(realized__$1),new cljs.core.Keyword(null,\x22fragment\x22,\x22fragment\x22,826775688),fragment,new cljs.core.Keyword(null,\x22more?\x22,\x22more?\x22,519437444),(((cljs.core.count(realized__$1) \x3e end)) || ((!((tail__$1 \x3d\x3d null)))))], null);\n}));\n});\nshadow.remote.runtime.obj_support.inspect_basic \x3d (function shadow$remote$runtime$obj_support$inspect_basic(p__48485,obj,opts){\nvar map__48487 \x3d p__48485;\nvar map__48487__$1 \x3d cljs.core.__destructure_map(map__48487);\nvar desc \x3d map__48487__$1;\nvar data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48487__$1,new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377));\ntry{if((data \x3d\x3d null)){\nreturn cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22nil\x22,\x22nil\x22,99600501));\n} else {\nif(typeof data \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.assoc_in(cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468),new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586),new cljs.core.Keyword(null,\x22length\x22,\x22length\x22,588987862),((data).length)], null)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22get-value\x22,\x22get-value\x22,2108514284)], null),(function (msg){\nreturn data;\n}));\n} else {\nif(cljs.core.boolean_QMARK_(data)){\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22boolean\x22,\x22boolean\x22,-1919418404)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22get-value\x22,\x22get-value\x22,2108514284)], null),(function (msg){\nreturn data;\n}));\n} else {\nif(typeof data \x3d\x3d\x3d \x27number\x27){\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22number\x22,\x22number\x22,1570378438)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22get-value\x22,\x22get-value\x22,2108514284)], null),(function (msg){\nreturn data;\n}));\n} else {\nif((data instanceof cljs.core.Keyword)){\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22get-value\x22,\x22get-value\x22,2108514284)], null),(function (msg){\nreturn data;\n}));\n} else {\nif((data instanceof cljs.core.Symbol)){\nreturn cljs.core.assoc_in(cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22get-value\x22,\x22get-value\x22,2108514284)], null),(function (msg){\nreturn data;\n}));\n} else {\nif(cljs.core.map_QMARK_(data)){\nreturn shadow.remote.runtime.obj_support.browseable_kv(shadow.remote.runtime.obj_support.attempt_to_sort(cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468),new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),new cljs.core.Keyword(null,\x22entries\x22,\x22entries\x22,-86943161),cljs.core.count(data)], null)),cljs.core.keys(data)));\n} else {\nif(cljs.core.vector_QMARK_(data)){\nreturn shadow.remote.runtime.obj_support.browseable_vec(cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468),new cljs.core.Keyword(null,\x22vec\x22,\x22vec\x22,-657847931),new cljs.core.Keyword(null,\x22entries\x22,\x22entries\x22,-86943161),cljs.core.count(data)], null)));\n} else {\nif(cljs.core.set_QMARK_(data)){\nreturn shadow.remote.runtime.obj_support.browseable_seq(shadow.remote.runtime.obj_support.attempt_to_sort(cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468),new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),new cljs.core.Keyword(null,\x22entries\x22,\x22entries\x22,-86943161),cljs.core.count(data)], null)),data));\n} else {\nif(cljs.core.list_QMARK_(data)){\nreturn shadow.remote.runtime.obj_support.browseable_seq(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468),new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683),new cljs.core.Keyword(null,\x22entries\x22,\x22entries\x22,-86943161),cljs.core.count(data)], null)),new cljs.core.Keyword(null,\x22view-order\x22,\x22view-order\x22,566761574),cljs.core.vec(data)));\n} else {\nif(cljs.core.seq_QMARK_(data)){\nreturn shadow.remote.runtime.obj_support.pageable_seq(cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468),new cljs.core.Keyword(null,\x22lazy-seq\x22,\x22lazy-seq\x22,-1150898621)], null)));\n} else {\nreturn cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22unsupported\x22,\x22unsupported\x22,-1045607016));\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}catch (e48489){var e \x3d e48489;\nreturn cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22data-type\x22,\x22data-type\x22,-326421468)], null),new cljs.core.Keyword(null,\x22unsupported\x22,\x22unsupported\x22,-1045607016));\n}});\nshadow.remote.runtime.obj_support.inspect_type_info \x3d (function shadow$remote$runtime$obj_support$inspect_type_info(desc,obj,opts){\nreturn cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22obj-type\x22,\x22obj-type\x22,-1658555496)], null),shadow.remote.runtime.obj_support.obj_type_string(obj));\n});\nshadow.remote.runtime.obj_support.inspect_source_info \x3d (function shadow$remote$runtime$obj_support$inspect_source_info(desc,obj,opts){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(desc,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),cljs.core.merge,cljs.core.select_keys(opts,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22label\x22,\x22label\x22,1718410804)], null)));\n});\nshadow.remote.runtime.obj_support.add_summary_op \x3d (function shadow$remote$runtime$obj_support$add_summary_op(p__48505){\nvar map__48506 \x3d p__48505;\nvar map__48506__$1 \x3d cljs.core.__destructure_map(map__48506);\nvar desc \x3d map__48506__$1;\nvar summary \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48506__$1,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952));\nreturn cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952)], null),(function (msg){\nreturn summary;\n}));\n});\nshadow.remote.runtime.obj_support.default_describe \x3d (function shadow$remote$runtime$obj_support$default_describe(o,opts){\nvar data \x3d clojure.datafy.datafy(o);\nreturn shadow.remote.runtime.obj_support.add_summary_op(shadow.remote.runtime.obj_support.inspect_source_info(shadow.remote.runtime.obj_support.inspect_type_info(shadow.remote.runtime.obj_support.inspect_basic(new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22data\x22,\x22data\x22,-232669377),data,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22added-at\x22,\x22added-at\x22,-352499434),new cljs.core.Keyword(null,\x22added-at\x22,\x22added-at\x22,-352499434).cljs$core$IFn$_invoke$arity$1(opts),new cljs.core.Keyword(null,\x22datafied\x22,\x22datafied\x22,2076148104),(!((data \x3d\x3d\x3d o)))], null),new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),(function (){var G__48530 \x3d new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22str\x22,\x22str\x22,1089608819),(function (p1__48513_SHARP_){\nreturn shadow.remote.runtime.obj_support.as_str(o,p1__48513_SHARP_);\n}),new cljs.core.Keyword(null,\x22edn\x22,\x22edn\x22,1317840885),(function (p1__48514_SHARP_){\nreturn shadow.remote.runtime.obj_support.as_edn(o,p1__48514_SHARP_);\n}),new cljs.core.Keyword(null,\x22edn-limit\x22,\x22edn-limit\x22,1353115803),(function (p1__48515_SHARP_){\nreturn shadow.remote.runtime.obj_support.as_edn_limit(o,p1__48515_SHARP_);\n})], null);\nvar G__48530__$1 \x3d ((((cljs.core.coll_QMARK_(o)) || (cljs.core.seq_QMARK_(o))))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__48530,new cljs.core.Keyword(null,\x22pprint\x22,\x22pprint\x22,1220198395),(function (p1__48516_SHARP_){\nreturn shadow.remote.runtime.obj_support.as_pprint(o,p1__48516_SHARP_);\n})):G__48530);\nif(shadow.remote.runtime.obj_support.exception_QMARK_(o)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__48530__$1,new cljs.core.Keyword(null,\x22ex-str\x22,\x22ex-str\x22,971148789),(function (p1__48517_SHARP_){\nreturn shadow.remote.runtime.obj_support.as_ex_str(o,p1__48517_SHARP_);\n}));\n} else {\nreturn G__48530__$1;\n}\n})()], null),o,opts),o,opts),o,opts));\n});\ngoog.object.set(shadow.remote.runtime.api.Inspectable,\x22_\x22,true);\n\ngoog.object.set(shadow.remote.runtime.api.describe,\x22_\x22,(function (o,opts){\nreturn shadow.remote.runtime.obj_support.default_describe(o,opts);\n}));\n\ngoog.object.set(shadow.remote.runtime.api.Inspectable,\x22null\x22,true);\n\ngoog.object.set(shadow.remote.runtime.api.describe,\x22null\x22,(function (o,opts){\nreturn shadow.remote.runtime.obj_support.default_describe(o,opts);\n}));\nshadow.remote.runtime.obj_support.add_supports \x3d (function shadow$remote$runtime$obj_support$add_supports(p__48550){\nvar map__48556 \x3d p__48550;\nvar map__48556__$1 \x3d cljs.core.__destructure_map(map__48556);\nvar desc \x3d map__48556__$1;\nvar handlers \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48556__$1,new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781));\nreturn cljs.core.assoc_in(desc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),new cljs.core.Keyword(null,\x22supports\x22,\x22supports\x22,1501242067)], null),cljs.core.set(cljs.core.keys(handlers)));\n});\nshadow.remote.runtime.obj_support.ensure_descriptor \x3d (function shadow$remote$runtime$obj_support$ensure_descriptor(p__48564){\nvar map__48567 \x3d p__48564;\nvar map__48567__$1 \x3d cljs.core.__destructure_map(map__48567);\nvar entry \x3d map__48567__$1;\nvar obj \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48567__$1,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962));\nvar obj_info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48567__$1,new cljs.core.Keyword(null,\x22obj-info\x22,\x22obj-info\x22,-373842651));\nvar desc \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48567__$1,new cljs.core.Keyword(null,\x22desc\x22,\x22desc\x22,2093485764));\nif(cljs.core.truth_(desc)){\nreturn entry;\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(entry,new cljs.core.Keyword(null,\x22desc\x22,\x22desc\x22,2093485764),shadow.remote.runtime.obj_support.add_supports(shadow.remote.runtime.api.describe(obj,obj_info)));\n}\n});\nshadow.remote.runtime.obj_support.get_tap_history \x3d (function shadow$remote$runtime$obj_support$get_tap_history(p__48581,num){\nvar map__48583 \x3d p__48581;\nvar map__48583__$1 \x3d cljs.core.__destructure_map(map__48583);\nvar svc \x3d map__48583__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48583__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),cljs.core.take.cljs$core$IFn$_invoke$arity$2(num,cljs.core.reverse(cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__48577_SHARP_){\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(p1__48577_SHARP_,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22obj-info\x22,\x22obj-info\x22,-373842651),new cljs.core.Keyword(null,\x22added-at\x22,\x22added-at\x22,-352499434)], null));\n}),cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__48576_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22tap\x22,\x22tap\x22,-1086702463),cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(p1__48576_SHARP_,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22obj-info\x22,\x22obj-info\x22,-373842651),new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044)], null)));\n}),cljs.core.vals(new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref)))))))));\n});\nshadow.remote.runtime.obj_support.obj_describe_STAR_ \x3d (function shadow$remote$runtime$obj_support$obj_describe_STAR_(p__48597,oid){\nvar map__48599 \x3d p__48597;\nvar map__48599__$1 \x3d cljs.core.__destructure_map(map__48599);\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48599__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nif(cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref)),oid)){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.update_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid], null),shadow.remote.runtime.obj_support.ensure_descriptor);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid,new cljs.core.Keyword(null,\x22access-at\x22,\x22access-at\x22,-1487162729)], null),shadow.remote.runtime.obj_support.now());\n\nvar summary \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(state_ref),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid,new cljs.core.Keyword(null,\x22desc\x22,\x22desc\x22,2093485764),new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952)], null));\nreturn summary;\n} else {\nreturn null;\n}\n});\nshadow.remote.runtime.obj_support.obj_describe \x3d (function shadow$remote$runtime$obj_support$obj_describe(p__48607,p__48608){\nvar map__48609 \x3d p__48607;\nvar map__48609__$1 \x3d cljs.core.__destructure_map(map__48609);\nvar svc \x3d map__48609__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48609__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar map__48610 \x3d p__48608;\nvar map__48610__$1 \x3d cljs.core.__destructure_map(map__48610);\nvar msg \x3d map__48610__$1;\nvar oid \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48610__$1,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334));\nvar temp__5751__auto__ \x3d shadow.remote.runtime.obj_support.obj_describe_STAR_(svc,oid);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar summary \x3d temp__5751__auto__;\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-summary\x22,\x22obj-summary\x22,-1372191064),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),summary], null));\n} else {\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-not-found\x22,\x22obj-not-found\x22,1577257696),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid], null));\n}\n});\nshadow.remote.runtime.obj_support.obj_request \x3d (function shadow$remote$runtime$obj_support$obj_request(p__48619,p__48620){\nvar map__48622 \x3d p__48619;\nvar map__48622__$1 \x3d cljs.core.__destructure_map(map__48622);\nvar this$ \x3d map__48622__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48622__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48622__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar map__48623 \x3d p__48620;\nvar map__48623__$1 \x3d cljs.core.__destructure_map(map__48623);\nvar msg \x3d map__48623__$1;\nvar oid \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48623__$1,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334));\nvar request_op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48623__$1,new cljs.core.Keyword(null,\x22request-op\x22,\x22request-op\x22,1472997246));\nif((!(cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref)),oid)))){\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-not-found\x22,\x22obj-not-found\x22,1577257696),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid], null));\n} else {\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.update_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid], null),shadow.remote.runtime.obj_support.ensure_descriptor);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid,new cljs.core.Keyword(null,\x22access-at\x22,\x22access-at\x22,-1487162729)], null),shadow.remote.runtime.obj_support.now());\n\nvar entry \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(state_ref),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),oid], null));\nvar request_fn \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(entry,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22desc\x22,\x22desc\x22,2093485764),new cljs.core.Keyword(null,\x22handlers\x22,\x22handlers\x22,79528781),request_op], null));\nif(cljs.core.not(request_fn)){\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-request-not-supported\x22,\x22obj-request-not-supported\x22,93907126),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22request-op\x22,\x22request-op\x22,1472997246),request_op], null));\n} else {\ntry{var result \x3d (request_fn.cljs$core$IFn$_invoke$arity$1 ? request_fn.cljs$core$IFn$_invoke$arity$1(msg) : request_fn.call(null,msg));\nif((!(shadow.remote.runtime.obj_support.obj_ref_QMARK_(result)))){\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-result\x22,\x22obj-result\x22,-486300152),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211),result], null));\n} else {\nvar new_oid \x3d shadow.remote.runtime.obj_support.next_oid();\nvar ts \x3d shadow.remote.runtime.obj_support.now();\nvar new_entry \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),new_oid,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962).cljs$core$IFn$_invoke$arity$1(result),new cljs.core.Keyword(null,\x22access-at\x22,\x22access-at\x22,-1487162729),ts,new cljs.core.Keyword(null,\x22obj-info\x22,\x22obj-info\x22,-373842651),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22added-at\x22,\x22added-at\x22,-352499434),ts,new cljs.core.Keyword(null,\x22added-via\x22,\x22added-via\x22,1525812109),oid], null)], null);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),new_oid], null),new_entry);\n\nvar reply_msg \x3d (function (){var G__48642 \x3d new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-result-ref\x22,\x22obj-result-ref\x22,1537374891),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22ref-oid\x22,\x22ref-oid\x22,-526648644),new_oid], null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952).cljs$core$IFn$_invoke$arity$1(msg))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__48642,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),shadow.remote.runtime.obj_support.obj_describe_STAR_(this$,new_oid));\n} else {\nreturn G__48642;\n}\n})();\nreturn shadow.remote.runtime.shared.reply(runtime,msg,reply_msg);\n}\n}catch (e48625){var e \x3d e48625;\nconsole.warn(\x22action-request-action failed\x22,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962).cljs$core$IFn$_invoke$arity$1(entry),e);\n\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22obj-request-failed\x22,\x22obj-request-failed\x22,-1782005406),new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),msg,new cljs.core.Keyword(null,\x22ex-oid\x22,\x22ex-oid\x22,-650256737),(function (){var G__48626 \x3d this$;\nvar G__48627 \x3d e;\nvar G__48628 \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),msg], null);\nreturn (shadow.remote.runtime.obj_support.register.cljs$core$IFn$_invoke$arity$3 ? shadow.remote.runtime.obj_support.register.cljs$core$IFn$_invoke$arity$3(G__48626,G__48627,G__48628) : shadow.remote.runtime.obj_support.register.call(null,G__48626,G__48627,G__48628));\n})()], null));\n}}\n}\n});\nshadow.remote.runtime.obj_support.obj_forget \x3d (function shadow$remote$runtime$obj_support$obj_forget(p__48666,p__48667){\nvar map__48672 \x3d p__48666;\nvar map__48672__$1 \x3d cljs.core.__destructure_map(map__48672);\nvar svc \x3d map__48672__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48672__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar map__48673 \x3d p__48667;\nvar map__48673__$1 \x3d cljs.core.__destructure_map(map__48673);\nvar msg \x3d map__48673__$1;\nvar oid \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48673__$1,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(state_ref,cljs.core.update,new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),cljs.core.dissoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([oid], 0));\n});\nshadow.remote.runtime.obj_support.obj_forget_all \x3d (function shadow$remote$runtime$obj_support$obj_forget_all(p__48686,msg){\nvar map__48689 \x3d p__48686;\nvar map__48689__$1 \x3d cljs.core.__destructure_map(map__48689);\nvar svc \x3d map__48689__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48689__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc,new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),cljs.core.PersistentArrayMap.EMPTY);\n});\nshadow.remote.runtime.obj_support.basic_gc_BANG_ \x3d (function shadow$remote$runtime$obj_support$basic_gc_BANG_(state){\nvar objs_to_drop \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),cljs.core.drop.cljs$core$IFn$_invoke$arity$2((100),cljs.core.reverse(cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22access-at\x22,\x22access-at\x22,-1487162729),cljs.core.vals(new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734).cljs$core$IFn$_invoke$arity$1(state))))));\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (state__$1,oid){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(state__$1,new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),cljs.core.dissoc,oid);\n}),state,objs_to_drop);\n});\nshadow.remote.runtime.obj_support.start \x3d (function shadow$remote$runtime$obj_support$start(runtime){\nvar state_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22id-seq-ref\x22,\x22id-seq-ref\x22,-98357047),(0)], null));\nvar svc \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),runtime,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952),state_ref], null);\nshadow.remote.runtime.api.add_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.obj-support\x22,\x22ext\x22,\x22shadow.remote.runtime.obj-support/ext\x22,-1896569346),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22obj-describe\x22,\x22obj-describe\x22,-34922904),(function (p1__48720_SHARP_){\nreturn shadow.remote.runtime.obj_support.obj_describe(svc,p1__48720_SHARP_);\n}),new cljs.core.Keyword(null,\x22obj-request\x22,\x22obj-request\x22,-1709325811),(function (p1__48721_SHARP_){\nreturn shadow.remote.runtime.obj_support.obj_request(svc,p1__48721_SHARP_);\n}),new cljs.core.Keyword(null,\x22obj-forget\x22,\x22obj-forget\x22,2003566115),(function (p1__48722_SHARP_){\nreturn shadow.remote.runtime.obj_support.obj_forget(svc,p1__48722_SHARP_);\n}),new cljs.core.Keyword(null,\x22obj-forget-all\x22,\x22obj-forget-all\x22,1418682131),(function (p1__48723_SHARP_){\nreturn shadow.remote.runtime.obj_support.obj_forget_all(svc,p1__48723_SHARP_);\n})], null),new cljs.core.Keyword(null,\x22on-idle\x22,\x22on-idle\x22,2044706602),(function (){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(state_ref,shadow.remote.runtime.obj_support.basic_gc_BANG_);\n})], null));\n\nreturn svc;\n});\nshadow.remote.runtime.obj_support.register \x3d (function shadow$remote$runtime$obj_support$register(p__48737,obj,obj_info){\nvar map__48738 \x3d p__48737;\nvar map__48738__$1 \x3d cljs.core.__destructure_map(map__48738);\nvar svc \x3d map__48738__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48738__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar oid \x3d shadow.remote.runtime.obj_support.next_oid();\nif((!(((cljs.core.vector_QMARK_(obj)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22shadow.remote\x22,\x22wrap\x22,\x22shadow.remote/wrap\x22,996267199),cljs.core.first(obj))) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(obj),(3))))))){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(state_ref,shadow.remote.runtime.obj_support.register_STAR_,oid,obj,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([obj_info], 0));\n} else {\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(state_ref,shadow.remote.runtime.obj_support.register_STAR_,oid,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(obj,(1)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([obj_info,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(obj,(2))], 0))], 0));\n}\n\nreturn oid;\n});\nshadow.remote.runtime.obj_support.get_ref \x3d (function shadow$remote$runtime$obj_support$get_ref(p__48748,obj_id){\nvar map__48753 \x3d p__48748;\nvar map__48753__$1 \x3d cljs.core.__destructure_map(map__48753);\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48753__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(state_ref),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22objects\x22,\x22objects\x22,2099713734),obj_id], null));\n});\nshadow.remote.runtime.obj_support.stop \x3d (function shadow$remote$runtime$obj_support$stop(p__48759){\nvar map__48760 \x3d p__48759;\nvar map__48760__$1 \x3d cljs.core.__destructure_map(map__48760);\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48760__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nreturn shadow.remote.runtime.api.del_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.obj-support\x22,\x22ext\x22,\x22shadow.remote.runtime.obj-support/ext\x22,-1896569346));\n});\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.tap_support.js", true , "goog.provide(\x27shadow.remote.runtime.tap_support\x27);\nshadow.remote.runtime.tap_support.tap_subscribe \x3d (function shadow$remote$runtime$tap_support$tap_subscribe(p__48839,p__48840){\nvar map__48842 \x3d p__48839;\nvar map__48842__$1 \x3d cljs.core.__destructure_map(map__48842);\nvar svc \x3d map__48842__$1;\nvar subs_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48842__$1,new cljs.core.Keyword(null,\x22subs-ref\x22,\x22subs-ref\x22,-1355989911));\nvar obj_support \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48842__$1,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229));\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48842__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar map__48843 \x3d p__48840;\nvar map__48843__$1 \x3d cljs.core.__destructure_map(map__48843);\nvar msg \x3d map__48843__$1;\nvar from \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48843__$1,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044));\nvar summary \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48843__$1,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952));\nvar history \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48843__$1,new cljs.core.Keyword(null,\x22history\x22,\x22history\x22,-247395220));\nvar num \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48843__$1,new cljs.core.Keyword(null,\x22num\x22,\x22num\x22,1985240673),(10));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(subs_ref,cljs.core.assoc,from,msg);\n\nif(cljs.core.truth_(history)){\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22tap-subscribed\x22,\x22tap-subscribed\x22,-1882247432),new cljs.core.Keyword(null,\x22history\x22,\x22history\x22,-247395220),cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (oid){\nreturn new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid,new cljs.core.Keyword(null,\x22summary\x22,\x22summary\x22,380847952),shadow.remote.runtime.obj_support.obj_describe_STAR_(obj_support,oid)], null);\n}),shadow.remote.runtime.obj_support.get_tap_history(obj_support,num)))], null));\n} else {\nreturn null;\n}\n});\nshadow.remote.runtime.tap_support.tap_unsubscribe \x3d (function shadow$remote$runtime$tap_support$tap_unsubscribe(p__48885,p__48886){\nvar map__48892 \x3d p__48885;\nvar map__48892__$1 \x3d cljs.core.__destructure_map(map__48892);\nvar subs_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48892__$1,new cljs.core.Keyword(null,\x22subs-ref\x22,\x22subs-ref\x22,-1355989911));\nvar map__48893 \x3d p__48886;\nvar map__48893__$1 \x3d cljs.core.__destructure_map(map__48893);\nvar from \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48893__$1,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(subs_ref,cljs.core.dissoc,from);\n});\nshadow.remote.runtime.tap_support.request_tap_history \x3d (function shadow$remote$runtime$tap_support$request_tap_history(p__48902,p__48903){\nvar map__48905 \x3d p__48902;\nvar map__48905__$1 \x3d cljs.core.__destructure_map(map__48905);\nvar obj_support \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48905__$1,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229));\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48905__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar map__48907 \x3d p__48903;\nvar map__48907__$1 \x3d cljs.core.__destructure_map(map__48907);\nvar msg \x3d map__48907__$1;\nvar num \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__48907__$1,new cljs.core.Keyword(null,\x22num\x22,\x22num\x22,1985240673),(10));\nvar tap_ids \x3d shadow.remote.runtime.obj_support.get_tap_history(obj_support,num);\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22tap-history\x22,\x22tap-history\x22,-282803347),new cljs.core.Keyword(null,\x22oids\x22,\x22oids\x22,-1580877688),tap_ids], null));\n});\nshadow.remote.runtime.tap_support.tool_disconnect \x3d (function shadow$remote$runtime$tap_support$tool_disconnect(p__48918,tid){\nvar map__48919 \x3d p__48918;\nvar map__48919__$1 \x3d cljs.core.__destructure_map(map__48919);\nvar svc \x3d map__48919__$1;\nvar subs_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48919__$1,new cljs.core.Keyword(null,\x22subs-ref\x22,\x22subs-ref\x22,-1355989911));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(subs_ref,cljs.core.dissoc,tid);\n});\nshadow.remote.runtime.tap_support.start \x3d (function shadow$remote$runtime$tap_support$start(runtime,obj_support){\nvar subs_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar tap_fn \x3d (function shadow$remote$runtime$tap_support$start_$_runtime_tap(obj){\nif((!((obj \x3d\x3d null)))){\nvar oid \x3d shadow.remote.runtime.obj_support.register(obj_support,obj,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),new cljs.core.Keyword(null,\x22tap\x22,\x22tap\x22,-1086702463)], null));\nvar seq__48934 \x3d cljs.core.seq(cljs.core.deref(subs_ref));\nvar chunk__48935 \x3d null;\nvar count__48936 \x3d (0);\nvar i__48937 \x3d (0);\nwhile(true){\nif((i__48937 \x3c count__48936)){\nvar vec__48970 \x3d chunk__48935.cljs$core$IIndexed$_nth$arity$2(null,i__48937);\nvar tid \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48970,(0),null);\nvar tap_config \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48970,(1),null);\nshadow.remote.runtime.api.relay_msg(runtime,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22tap\x22,\x22tap\x22,-1086702463),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),tid,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid], null));\n\n\nvar G__49008 \x3d seq__48934;\nvar G__49009 \x3d chunk__48935;\nvar G__49010 \x3d count__48936;\nvar G__49011 \x3d (i__48937 + (1));\nseq__48934 \x3d G__49008;\nchunk__48935 \x3d G__49009;\ncount__48936 \x3d G__49010;\ni__48937 \x3d G__49011;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__48934);\nif(temp__5753__auto__){\nvar seq__48934__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__48934__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__48934__$1);\nvar G__49016 \x3d cljs.core.chunk_rest(seq__48934__$1);\nvar G__49017 \x3d c__4591__auto__;\nvar G__49018 \x3d cljs.core.count(c__4591__auto__);\nvar G__49019 \x3d (0);\nseq__48934 \x3d G__49016;\nchunk__48935 \x3d G__49017;\ncount__48936 \x3d G__49018;\ni__48937 \x3d G__49019;\ncontinue;\n} else {\nvar vec__48979 \x3d cljs.core.first(seq__48934__$1);\nvar tid \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48979,(0),null);\nvar tap_config \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48979,(1),null);\nshadow.remote.runtime.api.relay_msg(runtime,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22tap\x22,\x22tap\x22,-1086702463),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),tid,new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid], null));\n\n\nvar G__49025 \x3d cljs.core.next(seq__48934__$1);\nvar G__49026 \x3d null;\nvar G__49027 \x3d (0);\nvar G__49028 \x3d (0);\nseq__48934 \x3d G__49025;\nchunk__48935 \x3d G__49026;\ncount__48936 \x3d G__49027;\ni__48937 \x3d G__49028;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n} else {\nreturn null;\n}\n});\nvar svc \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),runtime,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229),obj_support,new cljs.core.Keyword(null,\x22tap-fn\x22,\x22tap-fn\x22,1573556461),tap_fn,new cljs.core.Keyword(null,\x22subs-ref\x22,\x22subs-ref\x22,-1355989911),subs_ref], null);\nshadow.remote.runtime.api.add_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.tap-support\x22,\x22ext\x22,\x22shadow.remote.runtime.tap-support/ext\x22,1019069674),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22tap-subscribe\x22,\x22tap-subscribe\x22,411179050),(function (p1__48921_SHARP_){\nreturn shadow.remote.runtime.tap_support.tap_subscribe(svc,p1__48921_SHARP_);\n}),new cljs.core.Keyword(null,\x22tap-unsubscribe\x22,\x22tap-unsubscribe\x22,1183890755),(function (p1__48922_SHARP_){\nreturn shadow.remote.runtime.tap_support.tap_unsubscribe(svc,p1__48922_SHARP_);\n}),new cljs.core.Keyword(null,\x22request-tap-history\x22,\x22request-tap-history\x22,-670837812),(function (p1__48923_SHARP_){\nreturn shadow.remote.runtime.tap_support.request_tap_history(svc,p1__48923_SHARP_);\n})], null),new cljs.core.Keyword(null,\x22on-tool-disconnect\x22,\x22on-tool-disconnect\x22,693464366),(function (p1__48924_SHARP_){\nreturn shadow.remote.runtime.tap_support.tool_disconnect(svc,p1__48924_SHARP_);\n})], null));\n\ncljs.core.add_tap(tap_fn);\n\nreturn svc;\n});\nshadow.remote.runtime.tap_support.stop \x3d (function shadow$remote$runtime$tap_support$stop(p__48986){\nvar map__48987 \x3d p__48986;\nvar map__48987__$1 \x3d cljs.core.__destructure_map(map__48987);\nvar svc \x3d map__48987__$1;\nvar tap_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48987__$1,new cljs.core.Keyword(null,\x22tap-fn\x22,\x22tap-fn\x22,1573556461));\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48987__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\ncljs.core.remove_tap(tap_fn);\n\nreturn shadow.remote.runtime.api.del_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.tap-support\x22,\x22ext\x22,\x22shadow.remote.runtime.tap-support/ext\x22,1019069674));\n});\n");
SHADOW_ENV.evalLoad("shadow.remote.runtime.eval_support.js", true , "goog.provide(\x27shadow.remote.runtime.eval_support\x27);\nshadow.remote.runtime.eval_support.obj_support_inst \x3d null;\nshadow.remote.runtime.eval_support.get_ref \x3d (function shadow$remote$runtime$eval_support$get_ref(oid){\nif(cljs.core.truth_(shadow.remote.runtime.eval_support.obj_support_inst)){\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22obj-support not bound, can only call this from eval\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22oid\x22,\x22oid\x22,-768692334),oid], null));\n}\n\nreturn shadow.remote.runtime.obj_support.get_ref(shadow.remote.runtime.eval_support.obj_support_inst,oid);\n});\nshadow.remote.runtime.eval_support.cljs_eval \x3d (function shadow$remote$runtime$eval_support$cljs_eval(p__48867,p__48868){\nvar map__48869 \x3d p__48867;\nvar map__48869__$1 \x3d cljs.core.__destructure_map(map__48869);\nvar svc \x3d map__48869__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48869__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar obj_support \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48869__$1,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229));\nvar map__48870 \x3d p__48868;\nvar map__48870__$1 \x3d cljs.core.__destructure_map(map__48870);\nvar msg \x3d map__48870__$1;\nvar input \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48870__$1,new cljs.core.Keyword(null,\x22input\x22,\x22input\x22,556931961));\n(shadow.remote.runtime.eval_support.obj_support_inst \x3d obj_support);\n\nreturn shadow.remote.runtime.api.cljs_eval(runtime,input,(function (p__48884){\nvar map__48890 \x3d p__48884;\nvar map__48890__$1 \x3d cljs.core.__destructure_map(map__48890);\nvar info \x3d map__48890__$1;\nvar result \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48890__$1,new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211));\n(shadow.remote.runtime.eval_support.obj_support_inst \x3d null);\n\nvar G__48894 \x3d result;\nvar G__48894__$1 \x3d (((G__48894 instanceof cljs.core.Keyword))?G__48894.fqn:null);\nswitch (G__48894__$1) {\ncase \x22compile-error\x22:\nvar map__48900 \x3d info;\nvar map__48900__$1 \x3d cljs.core.__destructure_map(map__48900);\nvar ex_client_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48900__$1,new cljs.core.Keyword(null,\x22ex-client-id\x22,\x22ex-client-id\x22,-446123984));\nvar ex_oid \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48900__$1,new cljs.core.Keyword(null,\x22ex-oid\x22,\x22ex-oid\x22,-650256737));\nvar report \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48900__$1,new cljs.core.Keyword(null,\x22report\x22,\x22report\x22,1394055010));\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22eval-compile-error\x22,\x22eval-compile-error\x22,-1765075397),new cljs.core.Keyword(null,\x22ex-client-id\x22,\x22ex-client-id\x22,-446123984),ex_client_id,new cljs.core.Keyword(null,\x22ex-oid\x22,\x22ex-oid\x22,-650256737),ex_oid,new cljs.core.Keyword(null,\x22report\x22,\x22report\x22,1394055010),report], null));\n\nbreak;\ncase \x22runtime-error\x22:\nvar map__48904 \x3d info;\nvar map__48904__$1 \x3d cljs.core.__destructure_map(map__48904);\nvar ex \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48904__$1,new cljs.core.Keyword(null,\x22ex\x22,\x22ex\x22,-1413771341));\nvar ex_oid \x3d shadow.remote.runtime.obj_support.register(obj_support,ex,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),input], null));\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22eval-runtime-error\x22,\x22eval-runtime-error\x22,275935402),new cljs.core.Keyword(null,\x22ex-oid\x22,\x22ex-oid\x22,-650256737),ex_oid], null));\n\nbreak;\ncase \x22warnings\x22:\nvar map__48910 \x3d info;\nvar map__48910__$1 \x3d cljs.core.__destructure_map(map__48910);\nvar warnings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48910__$1,new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651));\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22eval-compile-warnings\x22,\x22eval-compile-warnings\x22,1994859386),new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651),warnings], null));\n\nbreak;\ncase \x22ok\x22:\nvar map__48915 \x3d info;\nvar map__48915__$1 \x3d cljs.core.__destructure_map(map__48915);\nvar results \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48915__$1,new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113));\nvar warnings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48915__$1,new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651));\nvar time_start \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48915__$1,new cljs.core.Keyword(null,\x22time-start\x22,\x22time-start\x22,-590811745));\nvar time_finish \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48915__$1,new cljs.core.Keyword(null,\x22time-finish\x22,\x22time-finish\x22,-1456032653));\nvar val \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(results)))?cljs.core.first(results):results);\nvar ref_oid \x3d shadow.remote.runtime.obj_support.register(obj_support,val,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),input], null));\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22eval-result-ref\x22,\x22eval-result-ref\x22,263827420),new cljs.core.Keyword(null,\x22ref-oid\x22,\x22ref-oid\x22,-526648644),ref_oid,new cljs.core.Keyword(null,\x22eval-ms\x22,\x22eval-ms\x22,788821074),(time_finish - time_start),new cljs.core.Keyword(null,\x22eval-ns\x22,\x22eval-ns\x22,-915623795),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(info),new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651),warnings], null));\n\nbreak;\ndefault:\nreturn console.error(\x22Unhandled cljs-eval result\x22,info);\n\n}\n}));\n});\nshadow.remote.runtime.eval_support.js_eval \x3d (function shadow$remote$runtime$eval_support$js_eval(p__48925,p__48926){\nvar map__48928 \x3d p__48925;\nvar map__48928__$1 \x3d cljs.core.__destructure_map(map__48928);\nvar svc \x3d map__48928__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48928__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar obj_support \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48928__$1,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229));\nvar map__48929 \x3d p__48926;\nvar map__48929__$1 \x3d cljs.core.__destructure_map(map__48929);\nvar msg \x3d map__48929__$1;\nvar code \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48929__$1,new cljs.core.Keyword(null,\x22code\x22,\x22code\x22,1586293142));\ntry{var res \x3d shadow.remote.runtime.api.js_eval(runtime,code);\nvar ref_oid \x3d shadow.remote.runtime.obj_support.register(obj_support,res,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22js-code\x22,\x22js-code\x22,1816578331),code], null));\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22eval-result-ref\x22,\x22eval-result-ref\x22,263827420),new cljs.core.Keyword(null,\x22ref-oid\x22,\x22ref-oid\x22,-526648644),ref_oid], null));\n}catch (e48930){var e \x3d e48930;\nreturn shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22eval-error\x22,\x22eval-error\x22,466139568),new cljs.core.Keyword(null,\x22e\x22,\x22e\x22,1381269198),e.message], null));\n}});\nshadow.remote.runtime.eval_support.start \x3d (function shadow$remote$runtime$eval_support$start(runtime,obj_support){\nvar svc \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),runtime,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229),obj_support], null);\nshadow.remote.runtime.shared.add_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.eval-support\x22,\x22ext\x22,\x22shadow.remote.runtime.eval-support/ext\x22,1781604625),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22js-eval\x22,\x22js-eval\x22,-137738892),(function (p1__48946_SHARP_){\nreturn shadow.remote.runtime.eval_support.js_eval(svc,p1__48946_SHARP_);\n}),new cljs.core.Keyword(null,\x22cljs-eval\x22,\x22cljs-eval\x22,1860675817),(function (p1__48947_SHARP_){\nreturn shadow.remote.runtime.eval_support.cljs_eval(svc,p1__48947_SHARP_);\n})], null)], null));\n\nreturn svc;\n});\nshadow.remote.runtime.eval_support.stop \x3d (function shadow$remote$runtime$eval_support$stop(p__48963){\nvar map__48965 \x3d p__48963;\nvar map__48965__$1 \x3d cljs.core.__destructure_map(map__48965);\nvar svc \x3d map__48965__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__48965__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nreturn shadow.remote.runtime.api.del_extension(runtime,new cljs.core.Keyword(\x22shadow.remote.runtime.eval-support\x22,\x22ext\x22,\x22shadow.remote.runtime.eval-support/ext\x22,1781604625));\n});\n");
SHADOW_ENV.evalLoad("shadow.cljs.devtools.client.shared.js", true , "goog.provide(\x27shadow.cljs.devtools.client.shared\x27);\n\n/**\n * @interface\n */\nshadow.cljs.devtools.client.shared.IRemote \x3d function(){};\n\nvar shadow$cljs$devtools$client$shared$IRemote$remote_open$dyn_49473 \x3d (function (this$,e){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_open[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,e) : m__4464__auto__.call(null,this$,e));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_open[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,e) : m__4461__auto__.call(null,this$,e));\n} else {\nthrow cljs.core.missing_protocol(\x22IRemote.remote-open\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.remote_open \x3d (function shadow$cljs$devtools$client$shared$remote_open(this$,e){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IRemote$remote_open$arity$2 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IRemote$remote_open$arity$2(this$,e);\n} else {\nreturn shadow$cljs$devtools$client$shared$IRemote$remote_open$dyn_49473(this$,e);\n}\n});\n\nvar shadow$cljs$devtools$client$shared$IRemote$remote_msg$dyn_49474 \x3d (function (this$,msg){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_msg[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,msg) : m__4464__auto__.call(null,this$,msg));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_msg[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,msg) : m__4461__auto__.call(null,this$,msg));\n} else {\nthrow cljs.core.missing_protocol(\x22IRemote.remote-msg\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.remote_msg \x3d (function shadow$cljs$devtools$client$shared$remote_msg(this$,msg){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IRemote$remote_msg$arity$2 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IRemote$remote_msg$arity$2(this$,msg);\n} else {\nreturn shadow$cljs$devtools$client$shared$IRemote$remote_msg$dyn_49474(this$,msg);\n}\n});\n\nvar shadow$cljs$devtools$client$shared$IRemote$remote_close$dyn_49475 \x3d (function (this$,e,info){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_close[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$3(this$,e,info) : m__4464__auto__.call(null,this$,e,info));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_close[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$3 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$3(this$,e,info) : m__4461__auto__.call(null,this$,e,info));\n} else {\nthrow cljs.core.missing_protocol(\x22IRemote.remote-close\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.remote_close \x3d (function shadow$cljs$devtools$client$shared$remote_close(this$,e,info){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IRemote$remote_close$arity$3 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IRemote$remote_close$arity$3(this$,e,info);\n} else {\nreturn shadow$cljs$devtools$client$shared$IRemote$remote_close$dyn_49475(this$,e,info);\n}\n});\n\nvar shadow$cljs$devtools$client$shared$IRemote$remote_error$dyn_49487 \x3d (function (this$,e){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_error[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,e) : m__4464__auto__.call(null,this$,e));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.remote_error[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,e) : m__4461__auto__.call(null,this$,e));\n} else {\nthrow cljs.core.missing_protocol(\x22IRemote.remote-error\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.remote_error \x3d (function shadow$cljs$devtools$client$shared$remote_error(this$,e){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IRemote$remote_error$arity$2 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IRemote$remote_error$arity$2(this$,e);\n} else {\nreturn shadow$cljs$devtools$client$shared$IRemote$remote_error$dyn_49487(this$,e);\n}\n});\n\n\n/**\n * @interface\n */\nshadow.cljs.devtools.client.shared.IHostSpecific \x3d function(){};\n\nvar shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_init$dyn_49492 \x3d (function (this$,action,done,error){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.do_repl_init[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$4(this$,action,done,error) : m__4464__auto__.call(null,this$,action,done,error));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.do_repl_init[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$4(this$,action,done,error) : m__4461__auto__.call(null,this$,action,done,error));\n} else {\nthrow cljs.core.missing_protocol(\x22IHostSpecific.do-repl-init\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.do_repl_init \x3d (function shadow$cljs$devtools$client$shared$do_repl_init(this$,action,done,error){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_init$arity$4 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_init$arity$4(this$,action,done,error);\n} else {\nreturn shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_init$dyn_49492(this$,action,done,error);\n}\n});\n\nvar shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_require$dyn_49496 \x3d (function (this$,require_msg,done,error){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.do_repl_require[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$4(this$,require_msg,done,error) : m__4464__auto__.call(null,this$,require_msg,done,error));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.do_repl_require[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$4(this$,require_msg,done,error) : m__4461__auto__.call(null,this$,require_msg,done,error));\n} else {\nthrow cljs.core.missing_protocol(\x22IHostSpecific.do-repl-require\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.do_repl_require \x3d (function shadow$cljs$devtools$client$shared$do_repl_require(this$,require_msg,done,error){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_require$arity$4 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_require$arity$4(this$,require_msg,done,error);\n} else {\nreturn shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_require$dyn_49496(this$,require_msg,done,error);\n}\n});\n\nvar shadow$cljs$devtools$client$shared$IHostSpecific$do_invoke$dyn_49502 \x3d (function (this$,invoke_msg){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (shadow.cljs.devtools.client.shared.do_invoke[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,invoke_msg) : m__4464__auto__.call(null,this$,invoke_msg));\n} else {\nvar m__4461__auto__ \x3d (shadow.cljs.devtools.client.shared.do_invoke[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,invoke_msg) : m__4461__auto__.call(null,this$,invoke_msg));\n} else {\nthrow cljs.core.missing_protocol(\x22IHostSpecific.do-invoke\x22,this$);\n}\n}\n});\nshadow.cljs.devtools.client.shared.do_invoke \x3d (function shadow$cljs$devtools$client$shared$do_invoke(this$,invoke_msg){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.shadow$cljs$devtools$client$shared$IHostSpecific$do_invoke$arity$2 \x3d\x3d null)))))){\nreturn this$.shadow$cljs$devtools$client$shared$IHostSpecific$do_invoke$arity$2(this$,invoke_msg);\n} else {\nreturn shadow$cljs$devtools$client$shared$IHostSpecific$do_invoke$dyn_49502(this$,invoke_msg);\n}\n});\n\nshadow.cljs.devtools.client.shared.load_sources \x3d (function shadow$cljs$devtools$client$shared$load_sources(runtime,sources,callback){\nreturn shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$3(runtime,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22cljs-load-sources\x22,\x22cljs-load-sources\x22,-1458295962),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),shadow.cljs.devtools.client.env.worker_client_id,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424),cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582)),sources)], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22cljs-sources\x22,\x22cljs-sources\x22,31121610),(function (p__49063){\nvar map__49064 \x3d p__49063;\nvar map__49064__$1 \x3d cljs.core.__destructure_map(map__49064);\nvar msg \x3d map__49064__$1;\nvar sources__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49064__$1,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424));\nreturn (callback.cljs$core$IFn$_invoke$arity$1 ? callback.cljs$core$IFn$_invoke$arity$1(sources__$1) : callback.call(null,sources__$1));\n})], null));\n});\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.shared !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.shared.runtime_ref !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.shared.runtime_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(null);\n}\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.shared !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.shared.plugins_ref !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.shared.plugins_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\n}\nshadow.cljs.devtools.client.shared.start_all_plugins_BANG_ \x3d (function shadow$cljs$devtools$client$shared$start_all_plugins_BANG_(p__49076){\nvar map__49077 \x3d p__49076;\nvar map__49077__$1 \x3d cljs.core.__destructure_map(map__49077);\nvar runtime \x3d map__49077__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49077__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar started_set \x3d cljs.core.set(cljs.core.keys(new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref))));\nvar plugins \x3d cljs.core.deref(shadow.cljs.devtools.client.shared.plugins_ref);\nvar plugins_set \x3d cljs.core.set(cljs.core.keys(plugins));\nvar pending_set \x3d clojure.set.difference.cljs$core$IFn$_invoke$arity$2(plugins_set,started_set);\nvar pending_set__$1 \x3d pending_set;\nwhile(true){\nif(cljs.core.empty_QMARK_(pending_set__$1)){\nreturn new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22done!\x22,\x22shadow.cljs.devtools.client.shared/done!\x22,-748632664);\n} else {\nvar G__49519 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (pending_set__$1,started_set,plugins,plugins_set,pending_set,map__49077,map__49077__$1,runtime,state_ref){\nreturn (function (pending_set__$2,plugin_id){\nvar map__49101 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(plugins,plugin_id);\nvar map__49101__$1 \x3d cljs.core.__destructure_map(map__49101);\nvar plugin \x3d map__49101__$1;\nvar depends_on \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49101__$1,new cljs.core.Keyword(null,\x22depends-on\x22,\x22depends-on\x22,-1448442022));\nvar init_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49101__$1,new cljs.core.Keyword(null,\x22init-fn\x22,\x22init-fn\x22,777257971));\nif(cljs.core.truth_(cljs.core.some(pending_set__$2,depends_on))){\nreturn pending_set__$2;\n} else {\nvar start_arg \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.select_keys(new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(state_ref)),depends_on),new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),runtime);\nvar started \x3d (init_fn.cljs$core$IFn$_invoke$arity$1 ? init_fn.cljs$core$IFn$_invoke$arity$1(start_arg) : init_fn.call(null,start_arg));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855),plugin_id], null),started);\n\nreturn cljs.core.disj.cljs$core$IFn$_invoke$arity$2(pending_set__$2,plugin_id);\n}\n});})(pending_set__$1,started_set,plugins,plugins_set,pending_set,map__49077,map__49077__$1,runtime,state_ref))\n,pending_set__$1,pending_set__$1);\npending_set__$1 \x3d G__49519;\ncontinue;\n\n}\nbreak;\n}\n});\nshadow.cljs.devtools.client.shared.add_plugin_BANG_ \x3d (function shadow$cljs$devtools$client$shared$add_plugin_BANG_(plugin_id,depends_on,init_fn,stop_fn){\nif((plugin_id instanceof cljs.core.Keyword)){\n} else {\nthrow (new Error(\x22Assert failed: (keyword? plugin-id)\x22));\n}\n\nif(cljs.core.set_QMARK_(depends_on)){\n} else {\nthrow (new Error(\x22Assert failed: (set? depends-on)\x22));\n}\n\nif(cljs.core.fn_QMARK_(init_fn)){\n} else {\nthrow (new Error(\x22Assert failed: (fn? init-fn)\x22));\n}\n\nif(cljs.core.fn_QMARK_(stop_fn)){\n} else {\nthrow (new Error(\x22Assert failed: (fn? stop-fn)\x22));\n}\n\nvar temp__5757__auto___49535 \x3d cljs.core.deref(shadow.cljs.devtools.client.shared.runtime_ref);\nif((temp__5757__auto___49535 \x3d\x3d null)){\n} else {\nvar runtime_49537 \x3d temp__5757__auto___49535;\nvar temp__5757__auto___49539__$1 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(runtime_49537,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855),plugin_id], null));\nif((temp__5757__auto___49539__$1 \x3d\x3d null)){\n} else {\nvar started_49540 \x3d temp__5757__auto___49539__$1;\nvar map__49155_49541 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.cljs.devtools.client.shared.plugins_ref),plugin_id);\nvar map__49155_49542__$1 \x3d cljs.core.__destructure_map(map__49155_49541);\nvar old_49543 \x3d map__49155_49542__$1;\nvar stop_fn_49544__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49155_49542__$1,new cljs.core.Keyword(null,\x22stop-fn\x22,\x22stop-fn\x22,-348472246));\n(stop_fn_49544__$1.cljs$core$IFn$_invoke$arity$1 ? stop_fn_49544__$1.cljs$core$IFn$_invoke$arity$1(started_49540) : stop_fn_49544__$1.call(null,started_49540));\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(shadow.cljs.devtools.client.shared.runtime_ref,cljs.core.update,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855),cljs.core.dissoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([plugin_id], 0));\n}\n}\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(shadow.cljs.devtools.client.shared.plugins_ref,cljs.core.assoc,plugin_id,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ext-id\x22,\x22ext-id\x22,-653860474),plugin_id,new cljs.core.Keyword(null,\x22depends-on\x22,\x22depends-on\x22,-1448442022),depends_on,new cljs.core.Keyword(null,\x22init-fn\x22,\x22init-fn\x22,777257971),init_fn,new cljs.core.Keyword(null,\x22stop-fn\x22,\x22stop-fn\x22,-348472246),stop_fn], null));\n\nvar temp__5757__auto__ \x3d cljs.core.deref(shadow.cljs.devtools.client.shared.runtime_ref);\nif((temp__5757__auto__ \x3d\x3d null)){\nreturn null;\n} else {\nvar runtime \x3d temp__5757__auto__;\nreturn shadow.cljs.devtools.client.shared.start_all_plugins_BANG_(runtime);\n}\n});\nshadow.cljs.devtools.client.shared.transit_read \x3d (function shadow$cljs$devtools$client$shared$transit_read(data){\nvar t \x3d cognitect.transit.reader.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22json\x22,\x22json\x22,1279968570));\nreturn cognitect.transit.read(t,data);\n});\nshadow.cljs.devtools.client.shared.transit_str \x3d (function shadow$cljs$devtools$client$shared$transit_str(obj){\nvar w \x3d cognitect.transit.writer.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22json\x22,\x22json\x22,1279968570));\nreturn cognitect.transit.write(w,obj);\n});\nshadow.cljs.devtools.client.shared.continue_BANG_ \x3d (function shadow$cljs$devtools$client$shared$continue_BANG_(state){\nreturn (shadow.cljs.devtools.client.shared.interpret_actions.cljs$core$IFn$_invoke$arity$1 ? shadow.cljs.devtools.client.shared.interpret_actions.cljs$core$IFn$_invoke$arity$1(state) : shadow.cljs.devtools.client.shared.interpret_actions.call(null,state));\n});\nshadow.cljs.devtools.client.shared.abort_BANG_ \x3d (function shadow$cljs$devtools$client$shared$abort_BANG_(p__49205,action,ex){\nvar map__49210 \x3d p__49205;\nvar map__49210__$1 \x3d cljs.core.__destructure_map(map__49210);\nvar state \x3d map__49210__$1;\nvar callback \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49210__$1,new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228));\nvar G__49215 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(state,new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211),new cljs.core.Keyword(null,\x22runtime-error\x22,\x22runtime-error\x22,-2116843646),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22ex\x22,\x22ex\x22,-1413771341),ex,new cljs.core.Keyword(null,\x22ex-action\x22,\x22ex-action\x22,672251553),action], 0)),new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228)], 0));\nreturn (callback.cljs$core$IFn$_invoke$arity$1 ? callback.cljs$core$IFn$_invoke$arity$1(G__49215) : callback.call(null,G__49215));\n});\nshadow.cljs.devtools.client.shared.handle_invoke \x3d (function shadow$cljs$devtools$client$shared$handle_invoke(state,runtime,action){\nvar res \x3d shadow.cljs.devtools.client.shared.do_invoke(runtime,action);\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(state,new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113),cljs.core.conj,res);\n});\nshadow.cljs.devtools.client.shared.handle_repl_invoke \x3d (function shadow$cljs$devtools$client$shared$handle_repl_invoke(state,runtime,action){\ntry{var ret \x3d shadow.cljs.devtools.client.shared.do_invoke(runtime,action);\n(cljs.core._STAR_3 \x3d cljs.core._STAR_2);\n\n(cljs.core._STAR_2 \x3d cljs.core._STAR_1);\n\n(cljs.core._STAR_1 \x3d ret);\n\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22internal\x22,\x22internal\x22,-854870097).cljs$core$IFn$_invoke$arity$1(action))){\nreturn state;\n} else {\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(state,new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113),cljs.core.conj,ret);\n}\n}catch (e49229){var e \x3d e49229;\n(cljs.core._STAR_e \x3d e);\n\nthrow e;\n}});\nshadow.cljs.devtools.client.shared.interpret_action \x3d (function shadow$cljs$devtools$client$shared$interpret_action(p__49242,p__49243){\nvar map__49245 \x3d p__49242;\nvar map__49245__$1 \x3d cljs.core.__destructure_map(map__49245);\nvar state \x3d map__49245__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49245__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar map__49246 \x3d p__49243;\nvar map__49246__$1 \x3d cljs.core.__destructure_map(map__49246);\nvar action \x3d map__49246__$1;\nvar type \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49246__$1,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348));\nvar G__49247 \x3d type;\nvar G__49247__$1 \x3d (((G__49247 instanceof cljs.core.Keyword))?G__49247.fqn:null);\nswitch (G__49247__$1) {\ncase \x22repl/init\x22:\nreturn shadow.cljs.devtools.client.shared.do_repl_init(runtime,action,(function (){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952).cljs$core$IFn$_invoke$arity$1(runtime),cljs.core.assoc,new cljs.core.Keyword(null,\x22init-complete\x22,\x22init-complete\x22,-157163484),true);\n\nreturn shadow.cljs.devtools.client.shared.continue_BANG_(state);\n}),(function (ex){\nreturn shadow.cljs.devtools.client.shared.abort_BANG_(state,action,ex);\n}));\n\nbreak;\ncase \x22repl/set-ns\x22:\nvar map__49252 \x3d action;\nvar map__49252__$1 \x3d cljs.core.__destructure_map(map__49252);\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49252__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nreturn shadow.cljs.devtools.client.shared.continue_BANG_(cljs.core.update.cljs$core$IFn$_invoke$arity$4(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(state,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns),new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113),cljs.core.conj,null));\n\nbreak;\ncase \x22repl/require\x22:\nvar map__49254 \x3d action;\nvar map__49254__$1 \x3d cljs.core.__destructure_map(map__49254);\nvar internal \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49254__$1,new cljs.core.Keyword(null,\x22internal\x22,\x22internal\x22,-854870097));\nreturn shadow.cljs.devtools.client.shared.do_repl_require(runtime,action,(function (sources){\nreturn shadow.cljs.devtools.client.shared.continue_BANG_((function (){var G__49258 \x3d cljs.core.update.cljs$core$IFn$_invoke$arity$4(state,new cljs.core.Keyword(null,\x22loaded-sources\x22,\x22loaded-sources\x22,-300252436),cljs.core.into,sources);\nif(cljs.core.not(internal)){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(G__49258,new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113),cljs.core.conj,null);\n} else {\nreturn G__49258;\n}\n})());\n}),(function (ex){\nreturn shadow.cljs.devtools.client.shared.abort_BANG_(state,action,ex);\n}));\n\nbreak;\ncase \x22repl/invoke\x22:\ntry{var repl \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(state,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22input\x22,\x22input\x22,556931961),new cljs.core.Keyword(null,\x22repl\x22,\x22repl\x22,-35398667)], null));\nreturn shadow.cljs.devtools.client.shared.continue_BANG_((function (){var G__49268 \x3d state;\nvar G__49268__$1 \x3d (cljs.core.truth_(repl)?shadow.cljs.devtools.client.shared.handle_repl_invoke(G__49268,runtime,action):G__49268);\nif(cljs.core.not(repl)){\nreturn shadow.cljs.devtools.client.shared.handle_invoke(G__49268__$1,runtime,action);\n} else {\nreturn G__49268__$1;\n}\n})());\n}catch (e49264){var ex \x3d e49264;\nreturn shadow.cljs.devtools.client.shared.abort_BANG_(state,action,ex);\n}\nbreak;\ndefault:\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22unhandled repl action\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22state\x22,\x22state\x22,-1988618099),state,new cljs.core.Keyword(null,\x22action\x22,\x22action\x22,-811238024),action], null));\n\n}\n});\nshadow.cljs.devtools.client.shared.interpret_actions \x3d (function shadow$cljs$devtools$client$shared$interpret_actions(p__49280){\nvar map__49281 \x3d p__49280;\nvar map__49281__$1 \x3d cljs.core.__destructure_map(map__49281);\nvar state \x3d map__49281__$1;\nvar queue \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49281__$1,new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879));\nvar warnings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49281__$1,new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651));\nif(cljs.core.empty_QMARK_(queue)){\nvar map__49287 \x3d state;\nvar map__49287__$1 \x3d cljs.core.__destructure_map(map__49287);\nvar callback \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49287__$1,new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228));\nvar G__49288 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(state,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228),new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879)], 0)),new cljs.core.Keyword(null,\x22time-finish\x22,\x22time-finish\x22,-1456032653),Date.now());\nreturn (callback.cljs$core$IFn$_invoke$arity$1 ? callback.cljs$core$IFn$_invoke$arity$1(G__49288) : callback.call(null,G__49288));\n} else {\nif(((cljs.core.seq(warnings)) \x26\x26 (shadow.cljs.devtools.client.env.ignore_warnings \x3d\x3d\x3d false))){\nvar map__49291 \x3d state;\nvar map__49291__$1 \x3d cljs.core.__destructure_map(map__49291);\nvar callback \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49291__$1,new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228));\nvar G__49294 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(state,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228),new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879)], 0)),new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211),new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651),warnings,new cljs.core.Keyword(null,\x22time-finish\x22,\x22time-finish\x22,-1456032653),Date.now()], 0));\nreturn (callback.cljs$core$IFn$_invoke$arity$1 ? callback.cljs$core$IFn$_invoke$arity$1(G__49294) : callback.call(null,G__49294));\n} else {\nvar action \x3d cljs.core.first(queue);\nvar state__$1 \x3d cljs.core.update.cljs$core$IFn$_invoke$arity$3(state,new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879),cljs.core.rest);\nreturn shadow.cljs.devtools.client.shared.interpret_action(state__$1,action);\n\n}\n}\n});\nshadow.cljs.devtools.client.shared.setup_actions \x3d (function shadow$cljs$devtools$client$shared$setup_actions(runtime,input,p__49300,callback){\nvar map__49302 \x3d p__49300;\nvar map__49302__$1 \x3d cljs.core.__destructure_map(map__49302);\nvar msg \x3d map__49302__$1;\nvar actions \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49302__$1,new cljs.core.Keyword(null,\x22actions\x22,\x22actions\x22,-812656882));\nreturn cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22queue\x22,\x22queue\x22,1455835879),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),new cljs.core.Keyword(null,\x22loaded-sources\x22,\x22loaded-sources\x22,-300252436),new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651),new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211),new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),new cljs.core.Keyword(null,\x22input\x22,\x22input\x22,556931961),new cljs.core.Keyword(null,\x22callback\x22,\x22callback\x22,-705136228),new cljs.core.Keyword(null,\x22time-start\x22,\x22time-start\x22,-590811745),new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113)],[actions,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(input),msg,cljs.core.PersistentVector.EMPTY,cljs.core.vec(cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([actions], 0))),new cljs.core.Keyword(null,\x22ok\x22,\x22ok\x22,967785236),runtime,input,callback,Date.now(),cljs.core.PersistentVector.EMPTY]);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {shadow.cljs.devtools.client.shared.IRemote}\n * @implements {shadow.remote.runtime.api.IRuntime}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n * @implements {shadow.remote.runtime.api.IEvalCLJS}\n*/\nshadow.cljs.devtools.client.shared.Runtime \x3d (function (state_ref,__meta,__extmap,__hash){\nthis.state_ref \x3d state_ref;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(shadow.cljs.devtools.client.shared.Runtime.prototype.attempt_connect_BANG_ \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar map__49317 \x3d cljs.core.deref(self__.state_ref);\nvar map__49317__$1 \x3d cljs.core.__destructure_map(map__49317);\nvar state \x3d map__49317__$1;\nvar ws_connecting \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connecting\x22,\x22shadow.cljs.devtools.client.shared/ws-connecting\x22,-847036450));\nvar ws_connect_timeout \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connect-timeout\x22,\x22shadow.cljs.devtools.client.shared/ws-connect-timeout\x22,1477702043));\nvar shutdown \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22shutdown\x22,\x22shadow.cljs.devtools.client.shared/shutdown\x22,1947481008));\nvar stale \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22stale\x22,\x22shadow.cljs.devtools.client.shared/stale\x22,-1017562082));\nvar ws_state \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-state\x22,\x22shadow.cljs.devtools.client.shared/ws-state\x22,1653373656));\nvar ws_stop_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-stop-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-stop-fn\x22,88454255));\nvar ws_start_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49317__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-start-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-start-fn\x22,-49893682));\nif(((cljs.core.not(shutdown)) \x26\x26 (cljs.core.not(stale)) \x26\x26 (cljs.core.not(ws_connecting)))){\nif(cljs.core.truth_(ws_connect_timeout)){\nclearTimeout(ws_connect_timeout);\n} else {\n}\n\nif((!((ws_state \x3d\x3d null)))){\n(ws_stop_fn.cljs$core$IFn$_invoke$arity$1 ? ws_stop_fn.cljs$core$IFn$_invoke$arity$1(ws_state) : ws_stop_fn.call(null,ws_state));\n} else {\n}\n\nvar ws_state__$1 \x3d (ws_start_fn.cljs$core$IFn$_invoke$arity$1 ? ws_start_fn.cljs$core$IFn$_invoke$arity$1(this$) : ws_start_fn.call(null,this$));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(self__.state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connecting\x22,\x22shadow.cljs.devtools.client.shared/ws-connecting\x22,-847036450),true,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connected\x22,\x22shadow.cljs.devtools.client.shared/ws-connected\x22,-1476385853),false,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-state\x22,\x22shadow.cljs.devtools.client.shared/ws-state\x22,1653373656),ws_state__$1], 0));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.schedule_connect_BANG_ \x3d (function (after){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar map__49320 \x3d cljs.core.deref(self__.state_ref);\nvar map__49320__$1 \x3d cljs.core.__destructure_map(map__49320);\nvar ws_connect_timeout \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49320__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connect-timeout\x22,\x22shadow.cljs.devtools.client.shared/ws-connect-timeout\x22,1477702043));\nvar stale \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49320__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22stale\x22,\x22shadow.cljs.devtools.client.shared/stale\x22,-1017562082));\nvar shutdown \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49320__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22shutdown\x22,\x22shadow.cljs.devtools.client.shared/shutdown\x22,1947481008));\nif(cljs.core.truth_(ws_connect_timeout)){\nclearTimeout(ws_connect_timeout);\n} else {\n}\n\nif(((cljs.core.not(stale)) \x26\x26 (cljs.core.not(shutdown)))){\nshadow.remote.runtime.shared.trigger_BANG_(this$,new cljs.core.Keyword(null,\x22on-reconnect\x22,\x22on-reconnect\x22,1239988702));\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connect-timeout\x22,\x22shadow.cljs.devtools.client.shared/ws-connect-timeout\x22,1477702043),setTimeout((function (){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(self__.state_ref,cljs.core.dissoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connect-timeout\x22,\x22shadow.cljs.devtools.client.shared/ws-connect-timeout\x22,1477702043));\n\nreturn this$.attempt_connect_BANG_();\n}),after));\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k49312,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__49323 \x3d k49312;\nvar G__49323__$1 \x3d (((G__49323 instanceof cljs.core.Keyword))?G__49323.fqn:null);\nswitch (G__49323__$1) {\ncase \x22state-ref\x22:\nreturn self__.state_ref;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k49312,else__4418__auto__);\n\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__49324){\nvar vec__49325 \x3d p__49324;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49325,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__49325,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#shadow.cljs.devtools.client.shared.Runtime{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952),self__.state_ref],null))], null),self__.__extmap));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__49311){\nvar self__ \x3d this;\nvar G__49311__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__49311__$1,1,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new shadow.cljs.devtools.client.shared.Runtime(self__.state_ref,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (1 + cljs.core.count(self__.__extmap));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (229736719 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this49313,other49314){\nvar self__ \x3d this;\nvar this49313__$1 \x3d this;\nreturn (((!((other49314 \x3d\x3d null)))) \x26\x26 ((this49313__$1.constructor \x3d\x3d\x3d other49314.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this49313__$1.state_ref,other49314.state_ref)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this49313__$1.__extmap,other49314.__extmap)));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IEvalCLJS$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IEvalCLJS$_cljs_eval$arity$3 \x3d (function (this$,input,callback){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$3(this$__$1,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22cljs-compile\x22,\x22cljs-compile\x22,-1735075279),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),shadow.cljs.devtools.client.env.worker_client_id,new cljs.core.Keyword(null,\x22input\x22,\x22input\x22,556931961),input,new cljs.core.Keyword(null,\x22include-init\x22,\x22include-init\x22,1061115199),cljs.core.not(new cljs.core.Keyword(null,\x22init-complete\x22,\x22init-complete\x22,-157163484).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(self__.state_ref)))], null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22cljs-compile-result\x22,\x22cljs-compile-result\x22,-1137644713),(function (msg){\nreturn shadow.cljs.devtools.client.shared.interpret_actions(shadow.cljs.devtools.client.shared.setup_actions(this$__$1,input,msg,callback));\n}),new cljs.core.Keyword(null,\x22cljs-compile-error\x22,\x22cljs-compile-error\x22,-371665768),(function (p__49339){\nvar map__49340 \x3d p__49339;\nvar map__49340__$1 \x3d cljs.core.__destructure_map(map__49340);\nvar ex_oid \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49340__$1,new cljs.core.Keyword(null,\x22ex-oid\x22,\x22ex-oid\x22,-650256737));\nvar ex_client_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49340__$1,new cljs.core.Keyword(null,\x22ex-client-id\x22,\x22ex-client-id\x22,-446123984));\nvar ex_data \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49340__$1,new cljs.core.Keyword(null,\x22ex-data\x22,\x22ex-data\x22,-309040259));\nvar report \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49340__$1,new cljs.core.Keyword(null,\x22report\x22,\x22report\x22,1394055010));\nvar G__49345 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211),new cljs.core.Keyword(null,\x22compile-error\x22,\x22compile-error\x22,-1313154526),new cljs.core.Keyword(null,\x22ex-oid\x22,\x22ex-oid\x22,-650256737),ex_oid,new cljs.core.Keyword(null,\x22ex-client-id\x22,\x22ex-client-id\x22,-446123984),ex_client_id,new cljs.core.Keyword(null,\x22ex-data\x22,\x22ex-data\x22,-309040259),ex_data,new cljs.core.Keyword(null,\x22report\x22,\x22report\x22,1394055010),report], null);\nreturn (callback.cljs$core$IFn$_invoke$arity$1 ? callback.cljs$core$IFn$_invoke$arity$1(G__49345) : callback.call(null,G__49345));\n}),new cljs.core.Keyword(null,\x22client-not-found\x22,\x22client-not-found\x22,-1754042614),(function (msg){\nvar G__49346 \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211),new cljs.core.Keyword(null,\x22worker-not-found\x22,\x22worker-not-found\x22,-1848657608)], null);\nreturn (callback.cljs$core$IFn$_invoke$arity$1 ? callback.cljs$core$IFn$_invoke$arity$1(G__49346) : callback.call(null,G__49346));\n})], null));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IRemote$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IRemote$remote_open$arity$2 \x3d (function (this$,e){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(self__.state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-errors\x22,\x22shadow.cljs.devtools.client.shared/ws-errors\x22,105464879),(0),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connecting\x22,\x22shadow.cljs.devtools.client.shared/ws-connecting\x22,-847036450),false,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connected\x22,\x22shadow.cljs.devtools.client.shared/ws-connected\x22,-1476385853),true,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-last-msg\x22,\x22shadow.cljs.devtools.client.shared/ws-last-msg\x22,-1438906782),shadow.remote.runtime.shared.now()], 0));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IRemote$remote_msg$arity$2 \x3d (function (this$,text){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar msg \x3d shadow.cljs.devtools.client.shared.transit_read(text);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-last-msg\x22,\x22shadow.cljs.devtools.client.shared/ws-last-msg\x22,-1438906782),shadow.remote.runtime.shared.now());\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22access-denied\x22,\x22access-denied\x22,959449406),new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955).cljs$core$IFn$_invoke$arity$1(msg))){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22stale\x22,\x22shadow.cljs.devtools.client.shared/stale\x22,-1017562082),true);\n} else {\n}\n\nreturn shadow.remote.runtime.shared.process(this$__$1,msg);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IRemote$remote_close$arity$3 \x3d (function (this$,e,info){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.state_ref,cljs.core.dissoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connected\x22,\x22shadow.cljs.devtools.client.shared/ws-connected\x22,-1476385853),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connecting\x22,\x22shadow.cljs.devtools.client.shared/ws-connecting\x22,-847036450));\n\nif(((3) \x3e\x3d new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-errors\x22,\x22shadow.cljs.devtools.client.shared/ws-errors\x22,105464879).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(self__.state_ref)))){\nreturn this$__$1.schedule_connect_BANG_((5000));\n} else {\nreturn console.warn(\x22shadow-cljs: giving up trying to connect to \x22,info);\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IRemote$remote_error$arity$2 \x3d (function (this$,e){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(self__.state_ref,cljs.core.update,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-errors\x22,\x22shadow.cljs.devtools.client.shared/ws-errors\x22,105464879),cljs.core.inc);\n\nshadow.remote.runtime.shared.trigger_BANG_(this$__$1,new cljs.core.Keyword(null,\x22on-disconnect\x22,\x22on-disconnect\x22,-809021814));\n\nreturn console.error(\x22shadow-cljs - remote-error\x22,e);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IRuntime$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IRuntime$relay_msg$arity$2 \x3d (function (this$,msg){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar map__49347 \x3d cljs.core.deref(self__.state_ref);\nvar map__49347__$1 \x3d cljs.core.__destructure_map(map__49347);\nvar state \x3d map__49347__$1;\nvar ws_state \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49347__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-state\x22,\x22shadow.cljs.devtools.client.shared/ws-state\x22,1653373656));\nvar ws_connected \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49347__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connected\x22,\x22shadow.cljs.devtools.client.shared/ws-connected\x22,-1476385853));\nvar ws_send_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49347__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-send-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-send-fn\x22,-1986889866));\nif(cljs.core.not(ws_connected)){\nreturn console.warn(\x22shadow-cljs - dropped ws message, not connected\x22,msg,state);\n} else {\nvar s \x3d (function (){try{return shadow.cljs.devtools.client.shared.transit_str(msg);\n}catch (e49348){var e \x3d e49348;\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22failed to encode relay msg\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444),msg], null));\n}})();\nreturn (ws_send_fn.cljs$core$IFn$_invoke$arity$2 ? ws_send_fn.cljs$core$IFn$_invoke$arity$2(ws_state,s) : ws_send_fn.call(null,ws_state,s));\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IRuntime$add_extension$arity$3 \x3d (function (runtime,key,spec){\nvar self__ \x3d this;\nvar runtime__$1 \x3d this;\nreturn shadow.remote.runtime.shared.add_extension(runtime__$1,key,spec);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IRuntime$del_extension$arity$2 \x3d (function (runtime,key){\nvar self__ \x3d this;\nvar runtime__$1 \x3d this;\nreturn shadow.remote.runtime.shared.del_extension(runtime__$1,key);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new shadow.cljs.devtools.client.shared.Runtime(self__.state_ref,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__49311){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__49353 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__49354 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__49353.cljs$core$IFn$_invoke$arity$2 ? pred__49353.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952),expr__49354) : pred__49353.call(null,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952),expr__49354)))){\nreturn (new shadow.cljs.devtools.client.shared.Runtime(G__49311,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new shadow.cljs.devtools.client.shared.Runtime(self__.state_ref,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__49311),null));\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952),self__.state_ref,null))], null),self__.__extmap));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__49311){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new shadow.cljs.devtools.client.shared.Runtime(self__.state_ref,G__49311,self__.__extmap,self__.__hash));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22state-ref\x22,\x22state-ref\x22,-526560817,null)], null);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.cljs$lang$type \x3d true);\n\n(shadow.cljs.devtools.client.shared.Runtime.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22shadow.cljs.devtools.client.shared/Runtime\x22,null,(1),null));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22shadow.cljs.devtools.client.shared/Runtime\x22);\n}));\n\n/**\n * Positional factory function for shadow.cljs.devtools.client.shared/Runtime.\n */\nshadow.cljs.devtools.client.shared.__GT_Runtime \x3d (function shadow$cljs$devtools$client$shared$__GT_Runtime(state_ref){\nreturn (new shadow.cljs.devtools.client.shared.Runtime(state_ref,null,null,null));\n});\n\n/**\n * Factory function for shadow.cljs.devtools.client.shared/Runtime, taking a map of keywords to field values.\n */\nshadow.cljs.devtools.client.shared.map__GT_Runtime \x3d (function shadow$cljs$devtools$client$shared$map__GT_Runtime(G__49315){\nvar extmap__4454__auto__ \x3d (function (){var G__49361 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__49315,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nif(cljs.core.record_QMARK_(G__49315)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__49361);\n} else {\nreturn G__49361;\n}\n})();\nreturn (new shadow.cljs.devtools.client.shared.Runtime(new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952).cljs$core$IFn$_invoke$arity$1(G__49315),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.shared !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.shared.print_subs !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.shared.print_subs \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentHashSet.EMPTY);\n}\nshadow.cljs.devtools.client.shared.stop_runtime_BANG_ \x3d (function shadow$cljs$devtools$client$shared$stop_runtime_BANG_(p__49377){\nvar map__49378 \x3d p__49377;\nvar map__49378__$1 \x3d cljs.core.__destructure_map(map__49378);\nvar runtime \x3d map__49378__$1;\nvar state_ref \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49378__$1,new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952));\nvar map__49379 \x3d cljs.core.deref(state_ref);\nvar map__49379__$1 \x3d cljs.core.__destructure_map(map__49379);\nvar ws_state \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49379__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-state\x22,\x22shadow.cljs.devtools.client.shared/ws-state\x22,1653373656));\nvar ws_stop_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49379__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-stop-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-stop-fn\x22,88454255));\nvar interval \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49379__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22interval\x22,\x22shadow.cljs.devtools.client.shared/interval\x22,-2112273585));\nvar plugins \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49379__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855));\nclearInterval(interval);\n\nif((!((ws_state \x3d\x3d null)))){\n(ws_stop_fn.cljs$core$IFn$_invoke$arity$1 ? ws_stop_fn.cljs$core$IFn$_invoke$arity$1(ws_state) : ws_stop_fn.call(null,ws_state));\n} else {\n}\n\ncljs.core.reduce_kv((function (_,plugin_id,started){\nvar map__49380 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(shadow.cljs.devtools.client.shared.plugins_ref),plugin_id);\nvar map__49380__$1 \x3d cljs.core.__destructure_map(map__49380);\nvar stop_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49380__$1,new cljs.core.Keyword(null,\x22stop-fn\x22,\x22stop-fn\x22,-348472246));\nreturn (stop_fn.cljs$core$IFn$_invoke$arity$1 ? stop_fn.cljs$core$IFn$_invoke$arity$1(started) : stop_fn.call(null,started));\n}),null,plugins);\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22shutdown\x22,\x22shadow.cljs.devtools.client.shared/shutdown\x22,1947481008),true);\n});\nshadow.cljs.devtools.client.shared.init_runtime_BANG_ \x3d (function shadow$cljs$devtools$client$shared$init_runtime_BANG_(client_info,ws_start_fn,ws_send_fn,ws_stop_fn){\nvar temp__5757__auto___49732 \x3d cljs.core.deref(shadow.cljs.devtools.client.shared.runtime_ref);\nif((temp__5757__auto___49732 \x3d\x3d null)){\n} else {\nvar runtime_49734 \x3d temp__5757__auto___49732;\nshadow.cljs.devtools.client.shared.stop_runtime_BANG_(runtime_49734);\n\ncljs.core.reset_BANG_(shadow.cljs.devtools.client.shared.runtime_ref,null);\n}\n\nshadow.cljs.devtools.client.shared.add_plugin_BANG_(new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229),cljs.core.PersistentHashSet.EMPTY,(function (p1__49383_SHARP_){\nreturn shadow.remote.runtime.obj_support.start(new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996).cljs$core$IFn$_invoke$arity$1(p1__49383_SHARP_));\n}),shadow.remote.runtime.obj_support.stop);\n\nshadow.cljs.devtools.client.shared.add_plugin_BANG_(new cljs.core.Keyword(null,\x22tap-support\x22,\x22tap-support\x22,80346439),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229),null], null), null),(function (p__49400){\nvar map__49401 \x3d p__49400;\nvar map__49401__$1 \x3d cljs.core.__destructure_map(map__49401);\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49401__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar obj_support \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49401__$1,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229));\nreturn shadow.remote.runtime.tap_support.start(runtime,obj_support);\n}),shadow.remote.runtime.tap_support.stop);\n\nshadow.cljs.devtools.client.shared.add_plugin_BANG_(new cljs.core.Keyword(null,\x22eval-support\x22,\x22eval-support\x22,-1581799533),new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229),null], null), null),(function (p__49403){\nvar map__49404 \x3d p__49403;\nvar map__49404__$1 \x3d cljs.core.__destructure_map(map__49404);\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49404__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar obj_support \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49404__$1,new cljs.core.Keyword(null,\x22obj-support\x22,\x22obj-support\x22,1522559229));\nreturn shadow.remote.runtime.eval_support.start(runtime,obj_support);\n}),shadow.remote.runtime.eval_support.stop);\n\nvar state_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(shadow.remote.runtime.shared.init_state(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(client_info,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22lang\x22,\x22lang\x22,-1819677104),new cljs.core.Keyword(null,\x22cljs\x22,\x22cljs\x22,1492417629),new cljs.core.Keyword(null,\x22build-id\x22,\x22build-id\x22,1642831089),cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.env.build_id),new cljs.core.Keyword(null,\x22proc-id\x22,\x22proc-id\x22,-1856109278),shadow.cljs.devtools.client.env.proc_id], 0))),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22shutdown\x22,\x22shadow.cljs.devtools.client.shared/shutdown\x22,1947481008),false,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22stale\x22,\x22shadow.cljs.devtools.client.shared/stale\x22,-1017562082),false,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22plugins\x22,\x22shadow.cljs.devtools.client.shared/plugins\x22,1565262855),cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-errors\x22,\x22shadow.cljs.devtools.client.shared/ws-errors\x22,105464879),(0),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-start-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-start-fn\x22,-49893682),ws_start_fn,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-send-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-send-fn\x22,-1986889866),ws_send_fn,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-stop-fn\x22,\x22shadow.cljs.devtools.client.shared/ws-stop-fn\x22,88454255),ws_stop_fn], 0)));\nvar runtime \x3d (function (){var G__49411 \x3d shadow.cljs.devtools.client.shared.__GT_Runtime(state_ref);\nshadow.remote.runtime.shared.add_defaults(G__49411);\n\nreturn G__49411;\n})();\nvar idle_fn \x3d (function (){\nvar map__49416 \x3d cljs.core.deref(state_ref);\nvar map__49416__$1 \x3d cljs.core.__destructure_map(map__49416);\nvar state \x3d map__49416__$1;\nvar shutdown \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49416__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22shutdown\x22,\x22shadow.cljs.devtools.client.shared/shutdown\x22,1947481008));\nvar ws_connected \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49416__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connected\x22,\x22shadow.cljs.devtools.client.shared/ws-connected\x22,-1476385853));\nvar ws_last_msg \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49416__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-last-msg\x22,\x22shadow.cljs.devtools.client.shared/ws-last-msg\x22,-1438906782));\nvar ws_connect_timeout \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49416__$1,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connect-timeout\x22,\x22shadow.cljs.devtools.client.shared/ws-connect-timeout\x22,1477702043));\nif(cljs.core.truth_(((cljs.core.not(ws_connect_timeout))?((cljs.core.not(shutdown))?(function (){var and__4149__auto__ \x3d ws_connected;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (shadow.remote.runtime.shared.now() \x3e (ws_last_msg + (20000)));\n} else {\nreturn and__4149__auto__;\n}\n})():false):false))){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(state_ref,cljs.core.dissoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22ws-connected\x22,\x22shadow.cljs.devtools.client.shared/ws-connected\x22,-1476385853));\n\nruntime.schedule_connect_BANG_((2000));\n} else {\n}\n\nreturn shadow.remote.runtime.shared.run_on_idle(state_ref);\n});\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(state_ref,cljs.core.assoc,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22interval\x22,\x22shadow.cljs.devtools.client.shared/interval\x22,-2112273585),setInterval(idle_fn,(1000)));\n\ncljs.core.reset_BANG_(shadow.cljs.devtools.client.shared.runtime_ref,runtime);\n\n(goog.global.cljs_eval \x3d (function (input,opts){\nvar input__$1 \x3d ((cljs.core.map_QMARK_(input))?input:((((typeof input \x3d\x3d\x3d \x27string\x27) \x26\x26 (cljs.core.not(opts))))?new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22code\x22,\x22code\x22,1586293142),input,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Symbol(null,\x22cljs.user\x22,\x22cljs.user\x22,877795071,null)], null):((((typeof input \x3d\x3d\x3d \x27string\x27) \x26\x26 (cljs.core.object_QMARK_(opts))))?new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22code\x22,\x22code\x22,1586293142),input,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(goog.object.get(opts,\x22ns\x22))], null):(function(){throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22invalid arguments, call cljs_eval(string, opts-obj) or cljs_eval(map)\x22,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22input\x22,\x22input\x22,556931961),input,new cljs.core.Keyword(null,\x22opts\x22,\x22opts\x22,155075701),opts], null))})()\n)));\nreturn (new Promise((function (resolve,reject){\nreturn shadow.remote.runtime.api.cljs_eval(runtime,input__$1,(function (p__49436){\nvar map__49437 \x3d p__49436;\nvar map__49437__$1 \x3d cljs.core.__destructure_map(map__49437);\nvar info \x3d map__49437__$1;\nvar result \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49437__$1,new cljs.core.Keyword(null,\x22result\x22,\x22result\x22,1415092211));\nvar results \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49437__$1,new cljs.core.Keyword(null,\x22results\x22,\x22results\x22,-1134170113));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22ok\x22,\x22ok\x22,967785236),result)){\nvar G__49440 \x3d cljs.core.last(results);\nreturn (resolve.cljs$core$IFn$_invoke$arity$1 ? resolve.cljs$core$IFn$_invoke$arity$1(G__49440) : resolve.call(null,G__49440));\n} else {\nreturn (reject.cljs$core$IFn$_invoke$arity$1 ? reject.cljs$core$IFn$_invoke$arity$1(info) : reject.call(null,info));\n}\n}));\n})));\n}));\n\nruntime.shadow$remote$runtime$api$IRuntime$add_extension$arity$3(null,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22print-support\x22,\x22shadow.cljs.devtools.client.shared/print-support\x22,-1090548637),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22runtime-print-sub\x22,\x22runtime-print-sub\x22,1832904759),(function (p__49444){\nvar map__49445 \x3d p__49444;\nvar map__49445__$1 \x3d cljs.core.__destructure_map(map__49445);\nvar msg \x3d map__49445__$1;\nvar from \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49445__$1,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(shadow.cljs.devtools.client.shared.print_subs,cljs.core.conj,from);\n\nreturn shadow.remote.runtime.shared.relay_msg(runtime,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22request-notify\x22,\x22request-notify\x22,351029173),new cljs.core.Keyword(null,\x22notify-op\x22,\x22notify-op\x22,1568109361),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22runtime-print-disconnect\x22,\x22shadow.cljs.devtools.client.shared/runtime-print-disconnect\x22,2030167412),new cljs.core.Keyword(null,\x22query\x22,\x22query\x22,-1288509510),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22eq\x22,\x22eq\x22,-618539067),new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140),from], null)], null));\n}),new cljs.core.Keyword(null,\x22runtime-print-unsub\x22,\x22runtime-print-unsub\x22,2055442536),(function (p__49447){\nvar map__49448 \x3d p__49447;\nvar map__49448__$1 \x3d cljs.core.__destructure_map(map__49448);\nvar msg \x3d map__49448__$1;\nvar from \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49448__$1,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(shadow.cljs.devtools.client.shared.print_subs,cljs.core.disj,from);\n}),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22runtime-print-disconnect\x22,\x22shadow.cljs.devtools.client.shared/runtime-print-disconnect\x22,2030167412),(function (p__49449){\nvar map__49450 \x3d p__49449;\nvar map__49450__$1 \x3d cljs.core.__destructure_map(map__49450);\nvar event_op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49450__$1,new cljs.core.Keyword(null,\x22event-op\x22,\x22event-op\x22,200358057));\nvar client_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49450__$1,new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22client-disconnect\x22,\x22client-disconnect\x22,640227957),event_op)){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(shadow.cljs.devtools.client.shared.print_subs,cljs.core.disj,client_id);\n} else {\nreturn null;\n}\n})], null),new cljs.core.Keyword(null,\x22on-client-not-found\x22,\x22on-client-not-found\x22,-642452849),(function (p__49451){\nvar map__49452 \x3d p__49451;\nvar map__49452__$1 \x3d cljs.core.__destructure_map(map__49452);\nvar client_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49452__$1,new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140));\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(shadow.cljs.devtools.client.shared.print_subs,cljs.core.disj,client_id);\n})], null));\n\nshadow.cljs.devtools.client.env.reset_print_fns_BANG_();\n\nshadow.cljs.devtools.client.env.set_print_fns_BANG_((function (stream,text){\nvar subs \x3d cljs.core.deref(shadow.cljs.devtools.client.shared.print_subs);\nif(cljs.core.seq(subs)){\nreturn shadow.remote.runtime.shared.relay_msg(runtime,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22runtime-print\x22,\x22runtime-print\x22,-1950604603),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),subs,new cljs.core.Keyword(null,\x22stream\x22,\x22stream\x22,1534941648),stream,new cljs.core.Keyword(null,\x22text\x22,\x22text\x22,-1790561697),text], null));\n} else {\nreturn null;\n}\n}));\n\nruntime.shadow$remote$runtime$api$IRuntime$add_extension$arity$3(null,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.shared\x22,\x22shared\x22,\x22shadow.cljs.devtools.client.shared/shared\x22,85374117),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22on-welcome\x22,\x22on-welcome\x22,1895317125),(function (){\nreturn shadow.remote.runtime.shared.relay_msg(runtime,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22request-notify\x22,\x22request-notify\x22,351029173),new cljs.core.Keyword(null,\x22notify-op\x22,\x22notify-op\x22,1568109361),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.env\x22,\x22worker-notify\x22,\x22shadow.cljs.devtools.client.env/worker-notify\x22,-1456820670),new cljs.core.Keyword(null,\x22query\x22,\x22query\x22,-1288509510),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22eq\x22,\x22eq\x22,-618539067),new cljs.core.Keyword(\x22shadow.cljs.model\x22,\x22worker-for\x22,\x22shadow.cljs.model/worker-for\x22,-228262107),cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.env.build_id)], null)], null));\n})], null));\n\nshadow.cljs.devtools.client.shared.start_all_plugins_BANG_(runtime);\n\nreturn runtime.attempt_connect_BANG_();\n});\n");
SHADOW_ENV.evalLoad("shadow.cljs.devtools.client.hud.js", true , "goog.provide(\x27shadow.cljs.devtools.client.hud\x27);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.hud.show_progress \x3d goog.define(\x22shadow.cljs.devtools.client.hud.show_progress\x22,true);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.hud.show_warnings \x3d goog.define(\x22shadow.cljs.devtools.client.hud.show_warnings\x22,true);\n/**\n * @define {boolean}\n */\nshadow.cljs.devtools.client.hud.show_errors \x3d goog.define(\x22shadow.cljs.devtools.client.hud.show_errors\x22,true);\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.hud !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.hud.dom_available_QMARK_ !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.hud.dom_available_QMARK_ \x3d (!((goog.global.document \x3d\x3d null)));\n}\nshadow.cljs.devtools.client.hud.open_file \x3d (function shadow$cljs$devtools$client$hud$open_file(file,line,column){\nconsole.log(\x22opening file\x22,file,line,column);\n\nreturn fetch([shadow.cljs.devtools.client.env.get_url_base(),\x22/api/open-file\x22].join(\x27\x27),({\x22method\x22: \x22POST\x22, \x22cache\x22: \x22no-cache\x22, \x22mode\x22: \x22cors\x22, \x22body\x22: shadow.cljs.devtools.client.shared.transit_str(new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column], null))})).then((function (p1__51449_SHARP_){\nreturn p1__51449_SHARP_.text();\n})).then((function (result_text){\nvar data \x3d shadow.cljs.devtools.client.shared.transit_read(result_text);\nreturn console.log(\x22open file result\x22,data);\n}));\n});\nshadow.cljs.devtools.client.hud.dom_insert \x3d (function shadow$cljs$devtools$client$hud$dom_insert(var_args){\nvar G__51461 \x3d arguments.length;\nswitch (G__51461) {\ncase 1:\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$1 \x3d (function (node){\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$2(document.body,node);\n}));\n\n(shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$2 \x3d (function (where,node){\nvar el \x3d shadow.dom.dom_node(node);\nvar id \x3d el.id;\nif(cljs.core.seq(id)){\n} else {\nthrow (new Error(\x22Assert failed: (seq id)\x22));\n}\n\nvar temp__5757__auto___51940 \x3d shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1(id);\nif((temp__5757__auto___51940 \x3d\x3d null)){\n} else {\nvar x_51941 \x3d temp__5757__auto___51940;\nshadow.dom.remove(x_51941);\n}\n\nreturn shadow.dom.append.cljs$core$IFn$_invoke$arity$2(where,el);\n}));\n\n(shadow.cljs.devtools.client.hud.dom_insert.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.cljs.devtools.client.hud.hud_id \x3d \x22shadow-hud-container\x22;\nshadow.cljs.devtools.client.hud.load_id \x3d \x22shadow-hud-loading-container\x22;\nshadow.cljs.devtools.client.hud.logo_svg \x3d (new cljs.core.Delay((function (){\nvar s_path \x3d \x22M247.183941,141.416413 C247.183941,74.7839971 148.383423,78.9723529 148.383423,141.416413 C148.383423,203.860473 265.090698,171.864644 265.090698,248.900057 C265.090698,325.93547 135,325.851749 135,251.708304\x22;\nreturn shadow.dom.svg.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),\x22shadow-cljs-logo\x22,new cljs.core.Keyword(null,\x22version\x22,\x22version\x22,425292698),\x221.1\x22,new cljs.core.Keyword(null,\x22viewBox\x22,\x22viewBox\x22,-469489477),\x220 0 400 400\x22,new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22display\x22,\x22display\x22,242065432),\x22block\x22], null),new cljs.core.Keyword(null,\x22height\x22,\x22height\x22,1025178622),\x2260px\x22,new cljs.core.Keyword(null,\x22width\x22,\x22width\x22,-384071477),\x2260px\x22], null),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22title\x22,\x22title\x22,636505583),\x22shadow-cljs\x22], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22defs\x22,\x22defs\x22,1398449717),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22mask#shadow-cljs-logo-mask\x22,\x22mask#shadow-cljs-logo-mask\x22,1690487509),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),\x22#fff\x22], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22circle\x22,\x22circle\x22,1903212362),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22r\x22,\x22r\x22,-471384190),\x22200\x22,new cljs.core.Keyword(null,\x22cy\x22,\x22cy\x22,755331060),\x22200\x22,new cljs.core.Keyword(null,\x22cx\x22,\x22cx\x22,1272694324),\x22200\x22], null)], null)], null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22g\x22,\x22g\x22,1738089905),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22fill-rule\x22,\x22fill-rule\x22,-1824841598),\x22evenodd\x22,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),\x22none\x22,new cljs.core.Keyword(null,\x22stroke-width\x22,\x22stroke-width\x22,716836435),\x220\x22,new cljs.core.Keyword(null,\x22stroke\x22,\x22stroke\x22,1741823555),\x22none\x22,new cljs.core.Keyword(null,\x22mask\x22,\x22mask\x22,-585748447),\x22url(#shadow-cljs-logo-mask)\x22], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22g.circles\x22,\x22g.circles\x22,374463200),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22circle.blue\x22,\x22circle.blue\x22,1902916291),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22r\x22,\x22r\x22,-471384190),\x22200\x22,new cljs.core.Keyword(null,\x22cy\x22,\x22cy\x22,755331060),\x22200\x22,new cljs.core.Keyword(null,\x22cx\x22,\x22cx\x22,1272694324),\x22200\x22,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),\x22#4F80DF\x22], null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22circle.light-blue\x22,\x22circle.light-blue\x22,438137342),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22r\x22,\x22r\x22,-471384190),\x2271.5\x22,new cljs.core.Keyword(null,\x22cy\x22,\x22cy\x22,755331060),\x22200\x22,new cljs.core.Keyword(null,\x22cx\x22,\x22cx\x22,1272694324),\x22370\x22,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),\x22#89B4FF\x22], null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22circle.dark-green\x22,\x22circle.dark-green\x22,608465767),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22r\x22,\x22r\x22,-471384190),\x22180\x22,new cljs.core.Keyword(null,\x22cy\x22,\x22cy\x22,755331060),\x22360\x22,new cljs.core.Keyword(null,\x22cx\x22,\x22cx\x22,1272694324),\x2260\x22,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),\x22#40B400\x22], null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22circle.light-green\x22,\x22circle.light-green\x22,-1663041285),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22r\x22,\x22r\x22,-471384190),\x22129\x22,new cljs.core.Keyword(null,\x22cy\x22,\x22cy\x22,755331060),\x22320\x22,new cljs.core.Keyword(null,\x22cx\x22,\x22cx\x22,1272694324),\x22280\x22,new cljs.core.Keyword(null,\x22fill\x22,\x22fill\x22,883462889),\x22#76E013\x22], null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22animateTransform\x22,\x22animateTransform\x22,759329815),new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,\x22attributeType\x22,\x22attributeType\x22,1055561918),\x22xml\x22,new cljs.core.Keyword(null,\x22attributeName\x22,\x22attributeName\x22,-400177890),\x22transform\x22,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),\x22rotate\x22,new cljs.core.Keyword(null,\x22from\x22,\x22from\x22,1815293044),\x220 200 200\x22,new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),\x22360 200 200\x22,new cljs.core.Keyword(null,\x22dur\x22,\x22dur\x22,1464522452),\x223s\x22,new cljs.core.Keyword(null,\x22repeatCount\x22,\x22repeatCount\x22,1447663848),\x22indefinite\x22], null)], null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22g\x22,\x22g\x22,1738089905),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22transform\x22,\x22transform\x22,1381301764),\x22translate(10,10)\x22], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22stroke-linecap\x22,\x22stroke-linecap\x22,-1201103248),\x22square\x22,new cljs.core.Keyword(null,\x22stroke-width\x22,\x22stroke-width\x22,716836435),\x2216\x22,new cljs.core.Keyword(null,\x22stroke\x22,\x22stroke\x22,1741823555),\x22#aaa\x22,new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),s_path], null)], null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22path\x22,\x22path\x22,-188191168),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22stroke-linecap\x22,\x22stroke-linecap\x22,-1201103248),\x22square\x22,new cljs.core.Keyword(null,\x22stroke-width\x22,\x22stroke-width\x22,716836435),\x2216\x22,new cljs.core.Keyword(null,\x22stroke\x22,\x22stroke\x22,1741823555),\x22#FFFFFF\x22,new cljs.core.Keyword(null,\x22d\x22,\x22d\x22,1972142424),s_path], null)], null)], null)], 0));\n}),null));\nshadow.cljs.devtools.client.hud.load_start \x3d (function shadow$cljs$devtools$client$hud$load_start(){\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nif(shadow.cljs.devtools.client.hud.show_progress){\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),shadow.cljs.devtools.client.hud.load_id,new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22position\x22,\x22position\x22,-2011731912),\x22fixed\x22,new cljs.core.Keyword(null,\x22pointer-events\x22,\x22pointer-events\x22,-1053858853),\x22none\x22,new cljs.core.Keyword(null,\x22left\x22,\x22left\x22,-399115937),\x220px\x22,new cljs.core.Keyword(null,\x22bottom\x22,\x22bottom\x22,-1550509018),\x2220px\x22,new cljs.core.Keyword(null,\x22z-index\x22,\x22z-index\x22,1892827090),\x2210000\x22], null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22background\x22,\x22background\x22,-863952629),\x22#eee\x22,new cljs.core.Keyword(null,\x22border-top-right-radius\x22,\x22border-top-right-radius\x22,1678770792),\x2240px\x22,new cljs.core.Keyword(null,\x22border-bottom-right-radius\x22,\x22border-bottom-right-radius\x22,414899772),\x2240px\x22,new cljs.core.Keyword(null,\x22box-shadow\x22,\x22box-shadow\x22,1600206755),\x222px 2px 10px #aaa\x22,new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x2210px\x22], null)], null),cljs.core.deref(shadow.cljs.devtools.client.hud.logo_svg)], null)], null));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.load_end_success \x3d (function shadow$cljs$devtools$client$hud$load_end_success(){\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nif(shadow.cljs.devtools.client.hud.show_progress){\nvar temp__5757__auto__ \x3d shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.hud.load_id);\nif((temp__5757__auto__ \x3d\x3d null)){\nreturn null;\n} else {\nvar container_el \x3d temp__5757__auto__;\nvar el \x3d container_el.firstChild;\nshadow.animate.start((500),cljs.core.PersistentArrayMap.createAsIfByAssoc([el,shadow.animate.transition.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(null,\x22background\x22,\x22background\x22,-863952629),\x22#eee\x22,\x22#40B400\x22,\x22ease-out\x22)]));\n\nvar c__42953__auto__ \x3d cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((1));\ncljs.core.async.impl.dispatch.run((function (){\nvar f__42954__auto__ \x3d (function (){var switch__42702__auto__ \x3d (function (state_51585){\nvar state_val_51586 \x3d (state_51585[(1)]);\nif((state_val_51586 \x3d\x3d\x3d (1))){\nvar inst_51568 \x3d cljs.core.async.timeout((250));\nvar state_51585__$1 \x3d state_51585;\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_51585__$1,(2),inst_51568);\n} else {\nif((state_val_51586 \x3d\x3d\x3d (2))){\nvar inst_51570 \x3d (state_51585[(2)]);\nvar inst_51576 \x3d [el];\nvar inst_51577 \x3d shadow.animate.transition.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(null,\x22opacity\x22,\x22opacity\x22,397153780),\x221\x22,\x220\x22,\x22ease-in\x22);\nvar inst_51578 \x3d [inst_51577];\nvar inst_51579 \x3d cljs.core.PersistentHashMap.fromArrays(inst_51576,inst_51578);\nvar inst_51580 \x3d shadow.animate.start((250),inst_51579);\nvar state_51585__$1 \x3d (function (){var statearr_51599 \x3d state_51585;\n(statearr_51599[(7)] \x3d inst_51570);\n\nreturn statearr_51599;\n})();\nreturn cljs.core.async.impl.ioc_helpers.take_BANG_(state_51585__$1,(3),inst_51580);\n} else {\nif((state_val_51586 \x3d\x3d\x3d (3))){\nvar inst_51582 \x3d (state_51585[(2)]);\nvar inst_51583 \x3d shadow.dom.remove(container_el);\nvar state_51585__$1 \x3d (function (){var statearr_51630 \x3d state_51585;\n(statearr_51630[(8)] \x3d inst_51582);\n\nreturn statearr_51630;\n})();\nreturn cljs.core.async.impl.ioc_helpers.return_chan(state_51585__$1,inst_51583);\n} else {\nreturn null;\n}\n}\n}\n});\nreturn (function() {\nvar shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto__ \x3d null;\nvar shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto____0 \x3d (function (){\nvar statearr_51632 \x3d [null,null,null,null,null,null,null,null,null];\n(statearr_51632[(0)] \x3d shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto__);\n\n(statearr_51632[(1)] \x3d (1));\n\nreturn statearr_51632;\n});\nvar shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto____1 \x3d (function (state_51585){\nwhile(true){\nvar ret_value__42704__auto__ \x3d (function (){try{while(true){\nvar result__42705__auto__ \x3d switch__42702__auto__(state_51585);\nif(cljs.core.keyword_identical_QMARK_(result__42705__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\ncontinue;\n} else {\nreturn result__42705__auto__;\n}\nbreak;\n}\n}catch (e51634){var ex__42707__auto__ \x3d e51634;\nvar statearr_51636_51965 \x3d state_51585;\n(statearr_51636_51965[(2)] \x3d ex__42707__auto__);\n\n\nif(cljs.core.seq((state_51585[(4)]))){\nvar statearr_51639_51966 \x3d state_51585;\n(statearr_51639_51966[(1)] \x3d cljs.core.first((state_51585[(4)])));\n\n} else {\nthrow ex__42707__auto__;\n}\n\nreturn new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268);\n}})();\nif(cljs.core.keyword_identical_QMARK_(ret_value__42704__auto__,new cljs.core.Keyword(null,\x22recur\x22,\x22recur\x22,-437573268))){\nvar G__51968 \x3d state_51585;\nstate_51585 \x3d G__51968;\ncontinue;\n} else {\nreturn ret_value__42704__auto__;\n}\nbreak;\n}\n});\nshadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto__ \x3d function(state_51585){\nswitch(arguments.length){\ncase 0:\nreturn shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto____0.call(this);\ncase 1:\nreturn shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto____1.call(this,state_51585);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nshadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$0 \x3d shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto____0;\nshadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto__.cljs$core$IFn$_invoke$arity$1 \x3d shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto____1;\nreturn shadow$cljs$devtools$client$hud$load_end_success_$_state_machine__42703__auto__;\n})()\n})();\nvar state__42955__auto__ \x3d (function (){var statearr_51640 \x3d f__42954__auto__();\n(statearr_51640[(6)] \x3d c__42953__auto__);\n\nreturn statearr_51640;\n})();\nreturn cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped(state__42955__auto__);\n}));\n\nreturn c__42953__auto__;\n}\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.load_end \x3d (function shadow$cljs$devtools$client$hud$load_end(){\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nvar temp__5757__auto__ \x3d shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.hud.load_id);\nif((temp__5757__auto__ \x3d\x3d null)){\nreturn null;\n} else {\nvar el \x3d temp__5757__auto__;\nreturn shadow.dom.remove(el);\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.hud_hide \x3d (function shadow$cljs$devtools$client$hud$hud_hide(){\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nvar temp__5757__auto__ \x3d shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.hud.hud_id);\nif((temp__5757__auto__ \x3d\x3d null)){\nreturn null;\n} else {\nvar d \x3d temp__5757__auto__;\nreturn shadow.dom.remove(d);\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.source_line_styles \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x220\x22,new cljs.core.Keyword(null,\x22margin\x22,\x22margin\x22,-995903681),\x220\x22], null);\nshadow.cljs.devtools.client.hud.source_highlight_styles \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(shadow.cljs.devtools.client.hud.source_line_styles,new cljs.core.Keyword(null,\x22font-weight\x22,\x22font-weight\x22,2085804583),\x22bold\x22);\nshadow.cljs.devtools.client.hud.source_line_html \x3d (function shadow$cljs$devtools$client$hud$source_line_html(start_idx,lines,styles){\nvar iter__4564__auto__ \x3d (function shadow$cljs$devtools$client$hud$source_line_html_$_iter__51645(s__51646){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__51646__$1 \x3d s__51646;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__51646__$1);\nif(temp__5753__auto__){\nvar s__51646__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__51646__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__51646__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__51648 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__51647 \x3d (0);\nwhile(true){\nif((i__51647 \x3c size__4563__auto__)){\nvar vec__51649 \x3d cljs.core._nth(c__4562__auto__,i__51647);\nvar idx \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51649,(0),null);\nvar text \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51649,(1),null);\ncljs.core.chunk_append(b__51648,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22pre\x22,\x22pre\x22,2118456869),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),styles], null),goog.string.format(\x22%4d | %s\x22,(((1) + idx) + start_idx),text)], null));\n\nvar G__51995 \x3d (i__51647 + (1));\ni__51647 \x3d G__51995;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__51648),shadow$cljs$devtools$client$hud$source_line_html_$_iter__51645(cljs.core.chunk_rest(s__51646__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__51648),null);\n}\n} else {\nvar vec__51684 \x3d cljs.core.first(s__51646__$2);\nvar idx \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51684,(0),null);\nvar text \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51684,(1),null);\nreturn cljs.core.cons(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22pre\x22,\x22pre\x22,2118456869),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),styles], null),goog.string.format(\x22%4d | %s\x22,(((1) + idx) + start_idx),text)], null),shadow$cljs$devtools$client$hud$source_line_html_$_iter__51645(cljs.core.rest(s__51646__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(cljs.core.map_indexed.cljs$core$IFn$_invoke$arity$2(cljs.core.vector,lines));\n});\nshadow.cljs.devtools.client.hud.sep_length \x3d (80);\nshadow.cljs.devtools.client.hud.sep_line \x3d (function shadow$cljs$devtools$client$hud$sep_line(var_args){\nvar G__51688 \x3d arguments.length;\nswitch (G__51688) {\ncase 0:\nreturn shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase 2:\nreturn shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nreturn shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$2(\x22\x22,(0));\n}));\n\n(shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$2 \x3d (function (label,offset){\nvar sep_len \x3d Math.max(shadow.cljs.devtools.client.hud.sep_length,offset);\nvar len \x3d cljs.core.count(label);\nvar sep \x3d (function (c){\nreturn clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22\x22,cljs.core.repeat.cljs$core$IFn$_invoke$arity$2(c,\x22-\x22));\n});\nreturn [sep(offset),cljs.core.str.cljs$core$IFn$_invoke$arity$1(label),sep((sep_len - (offset + len)))].join(\x27\x27);\n}));\n\n(shadow.cljs.devtools.client.hud.sep_line.cljs$lang$maxFixedArity \x3d 2);\n\nshadow.cljs.devtools.client.hud.file_link \x3d (function shadow$cljs$devtools$client$hud$file_link(p__51690){\nvar map__51691 \x3d p__51690;\nvar map__51691__$1 \x3d cljs.core.__destructure_map(map__51691);\nvar warning \x3d map__51691__$1;\nvar resource_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51691__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nvar file \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51691__$1,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878));\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51691__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar column \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51691__$1,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095));\nif(cljs.core.not(file)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),resource_name], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22text-decoration\x22,\x22text-decoration\x22,1836813207),\x22underline\x22,new cljs.core.Keyword(null,\x22color\x22,\x22color\x22,1011675173),\x22blue\x22,new cljs.core.Keyword(null,\x22cursor\x22,\x22cursor\x22,1011937484),\x22pointer\x22], null),new cljs.core.Keyword(null,\x22on\x22,\x22on\x22,173873944),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22click\x22,\x22click\x22,1912301393),(function (e){\nshadow.dom.ev_stop.cljs$core$IFn$_invoke$arity$1(e);\n\nreturn shadow.cljs.devtools.client.hud.open_file(file,line,column);\n})], null)], null),resource_name], null);\n}\n});\nshadow.cljs.devtools.client.hud.html_for_warning \x3d (function shadow$cljs$devtools$client$hud$html_for_warning(p__51725){\nvar map__51726 \x3d p__51725;\nvar map__51726__$1 \x3d cljs.core.__destructure_map(map__51726);\nvar warning \x3d map__51726__$1;\nvar resource_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51726__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nvar msg \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51726__$1,new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444));\nvar file \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51726__$1,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878));\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51726__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar column \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51726__$1,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095));\nvar source_excerpt \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51726__$1,new cljs.core.Keyword(null,\x22source-excerpt\x22,\x22source-excerpt\x22,5665576));\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22border\x22,\x22border\x22,1444987323),\x222px solid #ccc\x22,new cljs.core.Keyword(null,\x22margin-bottom\x22,\x22margin-bottom\x22,388334941),\x2210px\x22], null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22line-height\x22,\x22line-height\x22,1870784992),\x2216px\x22,new cljs.core.Keyword(null,\x22background-color\x22,\x22background-color\x22,570434026),\x22#fadb64\x22,new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x2210px\x22,new cljs.core.Keyword(null,\x22font-size\x22,\x22font-size\x22,-1847940346),\x221.2em\x22,new cljs.core.Keyword(null,\x22font-weight\x22,\x22font-weight\x22,2085804583),\x22bold\x22], null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22span\x22,\x22span\x22,1394872991),\x22WARNING in \x22], null),shadow.cljs.devtools.client.hud.file_link(warning)], null),(cljs.core.truth_(source_excerpt)?(function (){var map__51727 \x3d source_excerpt;\nvar map__51727__$1 \x3d cljs.core.__destructure_map(map__51727);\nvar start_idx \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51727__$1,new cljs.core.Keyword(null,\x22start-idx\x22,\x22start-idx\x22,-1600773745));\nvar before \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51727__$1,new cljs.core.Keyword(null,\x22before\x22,\x22before\x22,-1633692388));\nvar line__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51727__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar after \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51727__$1,new cljs.core.Keyword(null,\x22after\x22,\x22after\x22,594996914));\nreturn new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x2210px 10px\x22,new cljs.core.Keyword(null,\x22background-color\x22,\x22background-color\x22,570434026),\x22#fff\x22,new cljs.core.Keyword(null,\x22border-top\x22,\x22border-top\x22,-158897573),\x222px solid #ccc\x22], null)], null),shadow.cljs.devtools.client.hud.source_line_html(start_idx,before,shadow.cljs.devtools.client.hud.source_line_styles),shadow.cljs.devtools.client.hud.source_line_html((start_idx + cljs.core.count(before)),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [line__$1], null),shadow.cljs.devtools.client.hud.source_highlight_styles),(function (){var arrow_idx \x3d ((6) + (function (){var or__4160__auto__ \x3d column;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (1);\n}\n})());\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22pre\x22,\x22pre\x22,2118456869),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),shadow.cljs.devtools.client.hud.source_highlight_styles], null),shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$2(\x22^\x22,arrow_idx)], null);\n})(),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22font-weight\x22,\x22font-weight\x22,2085804583),\x22bold\x22,new cljs.core.Keyword(null,\x22font-size\x22,\x22font-size\x22,-1847940346),\x221.2em\x22,new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x2210px 0\x22], null)], null),msg], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22pre\x22,\x22pre\x22,2118456869),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),shadow.cljs.devtools.client.hud.source_highlight_styles], null),shadow.cljs.devtools.client.hud.sep_line.cljs$core$IFn$_invoke$arity$0()], null),shadow.cljs.devtools.client.hud.source_line_html(((start_idx + cljs.core.count(before)) + (1)),after,shadow.cljs.devtools.client.hud.source_line_styles)], null);\n})():null)], null);\n});\nshadow.cljs.devtools.client.hud.hud_warnings \x3d (function shadow$cljs$devtools$client$hud$hud_warnings(p__51732){\nvar map__51733 \x3d p__51732;\nvar map__51733__$1 \x3d cljs.core.__destructure_map(map__51733);\nvar msg \x3d map__51733__$1;\nvar type \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51733__$1,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348));\nvar info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51733__$1,new cljs.core.Keyword(null,\x22info\x22,\x22info\x22,-317069002));\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nvar map__51734 \x3d info;\nvar map__51734__$1 \x3d cljs.core.__destructure_map(map__51734);\nvar sources \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51734__$1,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424));\nvar sources_with_warnings \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__51728_SHARP_){\nreturn cljs.core.seq(new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651).cljs$core$IFn$_invoke$arity$1(p1__51728_SHARP_));\n}),cljs.core.remove.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22from-jar\x22,\x22from-jar\x22,1050932827),sources)));\nif(cljs.core.seq(sources_with_warnings)){\nshadow.cljs.devtools.client.hud.load_end();\n\nif(shadow.cljs.devtools.client.hud.show_warnings){\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),shadow.cljs.devtools.client.hud.hud_id,new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22color\x22,\x22color\x22,1011675173),new cljs.core.Keyword(null,\x22bottom\x22,\x22bottom\x22,-1550509018),new cljs.core.Keyword(null,\x22font-size\x22,\x22font-size\x22,-1847940346),new cljs.core.Keyword(null,\x22z-index\x22,\x22z-index\x22,1892827090),new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833),new cljs.core.Keyword(null,\x22display\x22,\x22display\x22,242065432),new cljs.core.Keyword(null,\x22position\x22,\x22position\x22,-2011731912),new cljs.core.Keyword(null,\x22font-family\x22,\x22font-family\x22,-667419874),new cljs.core.Keyword(null,\x22flex-direction\x22,\x22flex-direction\x22,364609438),new cljs.core.Keyword(null,\x22left\x22,\x22left\x22,-399115937)],[\x22#000\x22,\x220px\x22,\x2212px\x22,\x2210000\x22,\x220px\x22,\x22flex\x22,\x22fixed\x22,\x22monospace\x22,\x22column\x22,\x220px\x22])], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 8, [new cljs.core.Keyword(null,\x22align-self\x22,\x22align-self\x22,1475936794),\x22flex-end\x22,new cljs.core.Keyword(null,\x22background\x22,\x22background\x22,-863952629),\x22#fff\x22,new cljs.core.Keyword(null,\x22border\x22,\x22border\x22,1444987323),\x222px solid #ccc\x22,new cljs.core.Keyword(null,\x22border-bottom\x22,\x22border-bottom\x22,2110948415),\x220px\x22,new cljs.core.Keyword(null,\x22cursor\x22,\x22cursor\x22,1011937484),\x22pointer\x22,new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x226px\x22,new cljs.core.Keyword(null,\x22margin-bottom\x22,\x22margin-bottom\x22,388334941),\x22-2px\x22,new cljs.core.Keyword(null,\x22z-index\x22,\x22z-index\x22,1892827090),\x2210000\x22], null),new cljs.core.Keyword(null,\x22on\x22,\x22on\x22,173873944),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22click\x22,\x22click\x22,1912301393),shadow.cljs.devtools.client.hud.hud_hide], null)], null),\x22Close\x22], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22background\x22,\x22background\x22,-863952629),\x22#fff\x22,new cljs.core.Keyword(null,\x22border-top\x22,\x22border-top\x22,-158897573),\x222px solid #ccc\x22,new cljs.core.Keyword(null,\x22flex\x22,\x22flex\x22,-1425124628),\x221\x22,new cljs.core.Keyword(null,\x22max-height\x22,\x22max-height\x22,-612563804),\x22300px\x22,new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),\x2210px 10px 0\x22,new cljs.core.Keyword(null,\x22overflow\x22,\x22overflow\x22,2058931880),\x22auto\x22], null)], null),(function (){var iter__4564__auto__ \x3d (function shadow$cljs$devtools$client$hud$hud_warnings_$_iter__51783(s__51784){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__51784__$1 \x3d s__51784;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__51784__$1);\nif(temp__5753__auto__){\nvar xs__6308__auto__ \x3d temp__5753__auto__;\nvar map__51802 \x3d cljs.core.first(xs__6308__auto__);\nvar map__51802__$1 \x3d cljs.core.__destructure_map(map__51802);\nvar warnings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51802__$1,new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651));\nvar iterys__4560__auto__ \x3d ((function (s__51784__$1,map__51802,map__51802__$1,warnings,xs__6308__auto__,temp__5753__auto__,map__51734,map__51734__$1,sources,sources_with_warnings,map__51733,map__51733__$1,msg,type,info){\nreturn (function shadow$cljs$devtools$client$hud$hud_warnings_$_iter__51783_$_iter__51785(s__51786){\nreturn (new cljs.core.LazySeq(null,((function (s__51784__$1,map__51802,map__51802__$1,warnings,xs__6308__auto__,temp__5753__auto__,map__51734,map__51734__$1,sources,sources_with_warnings,map__51733,map__51733__$1,msg,type,info){\nreturn (function (){\nvar s__51786__$1 \x3d s__51786;\nwhile(true){\nvar temp__5753__auto____$1 \x3d cljs.core.seq(s__51786__$1);\nif(temp__5753__auto____$1){\nvar s__51786__$2 \x3d temp__5753__auto____$1;\nif(cljs.core.chunked_seq_QMARK_(s__51786__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__51786__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__51788 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__51787 \x3d (0);\nwhile(true){\nif((i__51787 \x3c size__4563__auto__)){\nvar warning \x3d cljs.core._nth(c__4562__auto__,i__51787);\ncljs.core.chunk_append(b__51788,shadow.cljs.devtools.client.hud.html_for_warning(warning));\n\nvar G__52088 \x3d (i__51787 + (1));\ni__51787 \x3d G__52088;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__51788),shadow$cljs$devtools$client$hud$hud_warnings_$_iter__51783_$_iter__51785(cljs.core.chunk_rest(s__51786__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__51788),null);\n}\n} else {\nvar warning \x3d cljs.core.first(s__51786__$2);\nreturn cljs.core.cons(shadow.cljs.devtools.client.hud.html_for_warning(warning),shadow$cljs$devtools$client$hud$hud_warnings_$_iter__51783_$_iter__51785(cljs.core.rest(s__51786__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});})(s__51784__$1,map__51802,map__51802__$1,warnings,xs__6308__auto__,temp__5753__auto__,map__51734,map__51734__$1,sources,sources_with_warnings,map__51733,map__51733__$1,msg,type,info))\n,null,null));\n});})(s__51784__$1,map__51802,map__51802__$1,warnings,xs__6308__auto__,temp__5753__auto__,map__51734,map__51734__$1,sources,sources_with_warnings,map__51733,map__51733__$1,msg,type,info))\n;\nvar fs__4561__auto__ \x3d cljs.core.seq(iterys__4560__auto__(warnings));\nif(fs__4561__auto__){\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2(fs__4561__auto__,shadow$cljs$devtools$client$hud$hud_warnings_$_iter__51783(cljs.core.rest(s__51784__$1)));\n} else {\nvar G__52093 \x3d cljs.core.rest(s__51784__$1);\ns__51784__$1 \x3d G__52093;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(sources_with_warnings);\n})()], null)], null));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.hud_error \x3d (function shadow$cljs$devtools$client$hud$hud_error(p__51880){\nvar map__51881 \x3d p__51880;\nvar map__51881__$1 \x3d cljs.core.__destructure_map(map__51881);\nvar msg \x3d map__51881__$1;\nvar report \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51881__$1,new cljs.core.Keyword(null,\x22report\x22,\x22report\x22,1394055010));\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nif(shadow.cljs.devtools.client.hud.show_errors){\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),shadow.cljs.devtools.client.hud.hud_id,new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22color\x22,\x22color\x22,1011675173),new cljs.core.Keyword(null,\x22bottom\x22,\x22bottom\x22,-1550509018),new cljs.core.Keyword(null,\x22font-size\x22,\x22font-size\x22,-1847940346),new cljs.core.Keyword(null,\x22top\x22,\x22top\x22,-1856271961),new cljs.core.Keyword(null,\x22overflow\x22,\x22overflow\x22,2058931880),new cljs.core.Keyword(null,\x22background-color\x22,\x22background-color\x22,570434026),new cljs.core.Keyword(null,\x22z-index\x22,\x22z-index\x22,1892827090),new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),new cljs.core.Keyword(null,\x22right\x22,\x22right\x22,-452581833),new cljs.core.Keyword(null,\x22position\x22,\x22position\x22,-2011731912),new cljs.core.Keyword(null,\x22border\x22,\x22border\x22,1444987323),new cljs.core.Keyword(null,\x22font-family\x22,\x22font-family\x22,-667419874),new cljs.core.Keyword(null,\x22left\x22,\x22left\x22,-399115937)],[\x22#000\x22,\x220px\x22,\x2212px\x22,\x220px\x22,\x22auto\x22,\x22#fff\x22,\x2210000\x22,\x2220px\x22,\x220px\x22,\x22fixed\x22,\x225px solid red\x22,\x22monospace\x22,\x220px\x22])], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),\x22color: red; margin-bottom: 10px; font-size: 2em;\x22], null),\x22Compilation failed!\x22], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22pre\x22,\x22pre\x22,2118456869),report], null)], null));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.connection_error_id \x3d \x22shadow-connection-error\x22;\nshadow.cljs.devtools.client.hud.connection_error_clear_BANG_ \x3d (function shadow$cljs$devtools$client$hud$connection_error_clear_BANG_(){\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nvar temp__5757__auto__ \x3d shadow.dom.by_id.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.hud.connection_error_id);\nif((temp__5757__auto__ \x3d\x3d null)){\nreturn null;\n} else {\nvar x \x3d temp__5757__auto__;\nreturn shadow.dom.remove(x);\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.connection_error \x3d (function shadow$cljs$devtools$client$hud$connection_error(msg){\nif(shadow.cljs.devtools.client.hud.dom_available_QMARK_){\nif(shadow.cljs.devtools.client.hud.show_errors){\nreturn shadow.cljs.devtools.client.hud.dom_insert.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),shadow.cljs.devtools.client.hud.connection_error_id,new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22position\x22,\x22position\x22,-2011731912),\x22fixed\x22,new cljs.core.Keyword(null,\x22pointer-events\x22,\x22pointer-events\x22,-1053858853),\x22none\x22,new cljs.core.Keyword(null,\x22left\x22,\x22left\x22,-399115937),\x220px\x22,new cljs.core.Keyword(null,\x22bottom\x22,\x22bottom\x22,-1550509018),\x2220px\x22,new cljs.core.Keyword(null,\x22z-index\x22,\x22z-index\x22,1892827090),\x2210000\x22], null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22div\x22,\x22div\x22,1057191632),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22style\x22,\x22style\x22,-496642736),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22box-shadow\x22,\x22box-shadow\x22,1600206755),new cljs.core.Keyword(null,\x22color\x22,\x22color\x22,1011675173),new cljs.core.Keyword(null,\x22font-size\x22,\x22font-size\x22,-1847940346),new cljs.core.Keyword(null,\x22font-weight\x22,\x22font-weight\x22,2085804583),new cljs.core.Keyword(null,\x22border-top-right-radius\x22,\x22border-top-right-radius\x22,1678770792),new cljs.core.Keyword(null,\x22background\x22,\x22background\x22,-863952629),new cljs.core.Keyword(null,\x22padding\x22,\x22padding\x22,1660304693),new cljs.core.Keyword(null,\x22border-bottom-right-radius\x22,\x22border-bottom-right-radius\x22,414899772),new cljs.core.Keyword(null,\x22font-family\x22,\x22font-family\x22,-667419874)],[\x222px 2px 10px #aaa\x22,\x22#fff\x22,\x2214px\x22,\x22bold\x22,\x2240px\x22,\x22#c00\x22,\x2210px\x22,\x2240px\x22,\x22monospace\x22])], null),[\x22shadow-cljs - \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg)].join(\x27\x27)], null)], null));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\nshadow.cljs.devtools.client.hud.load_failure \x3d (function shadow$cljs$devtools$client$hud$load_failure(error,task,remaining){\nshadow.cljs.devtools.client.hud.load_end();\n\nconsole.error(\x22reload-failed\x22,error);\n\nreturn shadow.cljs.devtools.client.hud.connection_error([\x22[reload failed] \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(error.message)].join(\x27\x27));\n});\n");
SHADOW_ENV.evalLoad("shadow.cljs.devtools.client.websocket.js", true , "goog.provide(\x27shadow.cljs.devtools.client.websocket\x27);\nshadow.cljs.devtools.client.websocket.start \x3d (function shadow$cljs$devtools$client$websocket$start(runtime){\nvar ws_url \x3d shadow.cljs.devtools.client.env.get_ws_relay_url();\nvar socket \x3d (new WebSocket(ws_url));\n(socket.onmessage \x3d (function (e){\nreturn shadow.cljs.devtools.client.shared.remote_msg(runtime,e.data);\n}));\n\n(socket.onopen \x3d (function (e){\nreturn shadow.cljs.devtools.client.shared.remote_open(runtime,e);\n}));\n\n(socket.onclose \x3d (function (e){\nreturn shadow.cljs.devtools.client.shared.remote_close(runtime,e,ws_url);\n}));\n\n(socket.onerror \x3d (function (e){\nreturn shadow.cljs.devtools.client.shared.remote_error(runtime,e);\n}));\n\nreturn socket;\n});\nshadow.cljs.devtools.client.websocket.send \x3d (function shadow$cljs$devtools$client$websocket$send(socket,msg){\nreturn socket.send(msg);\n});\nshadow.cljs.devtools.client.websocket.stop \x3d (function shadow$cljs$devtools$client$websocket$stop(socket){\n(socket.onopen \x3d null);\n\n(socket.onclose \x3d null);\n\n(socket.onmessage \x3d null);\n\n(socket.onerror \x3d null);\n\nreturn socket.close();\n});\n");
SHADOW_ENV.evalLoad("shadow.cljs.devtools.client.browser.js", true , "goog.provide(\x27shadow.cljs.devtools.client.browser\x27);\nshadow.cljs.devtools.client.browser.devtools_msg \x3d (function shadow$cljs$devtools$client$browser$devtools_msg(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___52596 \x3d arguments.length;\nvar i__4772__auto___52597 \x3d (0);\nwhile(true){\nif((i__4772__auto___52597 \x3c len__4771__auto___52596)){\nargs__4777__auto__.push((arguments[i__4772__auto___52597]));\n\nvar G__52598 \x3d (i__4772__auto___52597 + (1));\ni__4772__auto___52597 \x3d G__52598;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn shadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(shadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic \x3d (function (msg,args){\nif(shadow.cljs.devtools.client.env.log){\nif(cljs.core.seq(shadow.cljs.devtools.client.env.log_style)){\nreturn console.log.apply(console,cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(cljs.core.into.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [[\x22%cshadow-cljs: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg)].join(\x27\x27),shadow.cljs.devtools.client.env.log_style], null),args)));\n} else {\nreturn console.log.apply(console,cljs.core.into_array.cljs$core$IFn$_invoke$arity$1(cljs.core.into.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [[\x22shadow-cljs: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg)].join(\x27\x27)], null),args)));\n}\n} else {\nreturn null;\n}\n}));\n\n(shadow.cljs.devtools.client.browser.devtools_msg.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(shadow.cljs.devtools.client.browser.devtools_msg.cljs$lang$applyTo \x3d (function (seq51942){\nvar G__51943 \x3d cljs.core.first(seq51942);\nvar seq51942__$1 \x3d cljs.core.next(seq51942);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51943,seq51942__$1);\n}));\n\nshadow.cljs.devtools.client.browser.script_eval \x3d (function shadow$cljs$devtools$client$browser$script_eval(code){\nreturn goog.globalEval(code);\n});\nshadow.cljs.devtools.client.browser.do_js_load \x3d (function shadow$cljs$devtools$client$browser$do_js_load(sources){\nvar seq__51948 \x3d cljs.core.seq(sources);\nvar chunk__51949 \x3d null;\nvar count__51950 \x3d (0);\nvar i__51951 \x3d (0);\nwhile(true){\nif((i__51951 \x3c count__51950)){\nvar map__51969 \x3d chunk__51949.cljs$core$IIndexed$_nth$arity$2(null,i__51951);\nvar map__51969__$1 \x3d cljs.core.__destructure_map(map__51969);\nvar src \x3d map__51969__$1;\nvar resource_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51969__$1,new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582));\nvar output_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51969__$1,new cljs.core.Keyword(null,\x22output-name\x22,\x22output-name\x22,-1769107767));\nvar resource_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51969__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nvar js \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51969__$1,new cljs.core.Keyword(null,\x22js\x22,\x22js\x22,1768080579));\n$CLJS.SHADOW_ENV.setLoaded(output_name);\n\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22load JS\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([resource_name], 0));\n\nshadow.cljs.devtools.client.env.before_load_src(src);\n\ntry{shadow.cljs.devtools.client.browser.script_eval([cljs.core.str.cljs$core$IFn$_invoke$arity$1(js),\x22\\n//# sourceURL\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1($CLJS.SHADOW_ENV.scriptBase),cljs.core.str.cljs$core$IFn$_invoke$arity$1(output_name)].join(\x27\x27));\n}catch (e51971){var e_52610 \x3d e51971;\nif(shadow.cljs.devtools.client.env.log){\nconsole.error([\x22Failed to load \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(resource_name)].join(\x27\x27),e_52610);\n} else {\n}\n\nthrow (new Error([\x22Failed to load \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(resource_name),\x22: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(e_52610.message)].join(\x27\x27)));\n}\n\nvar G__52613 \x3d seq__51948;\nvar G__52614 \x3d chunk__51949;\nvar G__52615 \x3d count__51950;\nvar G__52616 \x3d (i__51951 + (1));\nseq__51948 \x3d G__52613;\nchunk__51949 \x3d G__52614;\ncount__51950 \x3d G__52615;\ni__51951 \x3d G__52616;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__51948);\nif(temp__5753__auto__){\nvar seq__51948__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__51948__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__51948__$1);\nvar G__52621 \x3d cljs.core.chunk_rest(seq__51948__$1);\nvar G__52622 \x3d c__4591__auto__;\nvar G__52623 \x3d cljs.core.count(c__4591__auto__);\nvar G__52624 \x3d (0);\nseq__51948 \x3d G__52621;\nchunk__51949 \x3d G__52622;\ncount__51950 \x3d G__52623;\ni__51951 \x3d G__52624;\ncontinue;\n} else {\nvar map__51974 \x3d cljs.core.first(seq__51948__$1);\nvar map__51974__$1 \x3d cljs.core.__destructure_map(map__51974);\nvar src \x3d map__51974__$1;\nvar resource_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51974__$1,new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582));\nvar output_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51974__$1,new cljs.core.Keyword(null,\x22output-name\x22,\x22output-name\x22,-1769107767));\nvar resource_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51974__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nvar js \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51974__$1,new cljs.core.Keyword(null,\x22js\x22,\x22js\x22,1768080579));\n$CLJS.SHADOW_ENV.setLoaded(output_name);\n\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22load JS\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([resource_name], 0));\n\nshadow.cljs.devtools.client.env.before_load_src(src);\n\ntry{shadow.cljs.devtools.client.browser.script_eval([cljs.core.str.cljs$core$IFn$_invoke$arity$1(js),\x22\\n//# sourceURL\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1($CLJS.SHADOW_ENV.scriptBase),cljs.core.str.cljs$core$IFn$_invoke$arity$1(output_name)].join(\x27\x27));\n}catch (e51976){var e_52634 \x3d e51976;\nif(shadow.cljs.devtools.client.env.log){\nconsole.error([\x22Failed to load \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(resource_name)].join(\x27\x27),e_52634);\n} else {\n}\n\nthrow (new Error([\x22Failed to load \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(resource_name),\x22: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(e_52634.message)].join(\x27\x27)));\n}\n\nvar G__52651 \x3d cljs.core.next(seq__51948__$1);\nvar G__52652 \x3d null;\nvar G__52653 \x3d (0);\nvar G__52654 \x3d (0);\nseq__51948 \x3d G__52651;\nchunk__51949 \x3d G__52652;\ncount__51950 \x3d G__52653;\ni__51951 \x3d G__52654;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.cljs.devtools.client.browser.do_js_reload \x3d (function shadow$cljs$devtools$client$browser$do_js_reload(msg,sources,complete_fn,failure_fn){\nreturn shadow.cljs.devtools.client.env.do_js_reload.cljs$core$IFn$_invoke$arity$4(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(msg,new cljs.core.Keyword(null,\x22log-missing-fn\x22,\x22log-missing-fn\x22,732676765),(function (fn_sym){\nreturn null;\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22log-call-async\x22,\x22log-call-async\x22,183826192),(function (fn_sym){\nreturn shadow.cljs.devtools.client.browser.devtools_msg([\x22call async \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(fn_sym)].join(\x27\x27));\n}),new cljs.core.Keyword(null,\x22log-call\x22,\x22log-call\x22,412404391),(function (fn_sym){\nreturn shadow.cljs.devtools.client.browser.devtools_msg([\x22call \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(fn_sym)].join(\x27\x27));\n})], 0)),(function (){\nreturn shadow.cljs.devtools.client.browser.do_js_load(sources);\n}),complete_fn,failure_fn);\n});\n/**\n * when (require \x27[\x22some-str\x22 :as x]) is done at the REPL we need to manually call the shadow.js.require for it\n * since the file only adds the shadow$provide. only need to do this for shadow-js.\n */\nshadow.cljs.devtools.client.browser.do_js_requires \x3d (function shadow$cljs$devtools$client$browser$do_js_requires(js_requires){\nvar seq__52019 \x3d cljs.core.seq(js_requires);\nvar chunk__52020 \x3d null;\nvar count__52021 \x3d (0);\nvar i__52022 \x3d (0);\nwhile(true){\nif((i__52022 \x3c count__52021)){\nvar js_ns \x3d chunk__52020.cljs$core$IIndexed$_nth$arity$2(null,i__52022);\nvar require_str_52679 \x3d [\x22var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(js_ns),\x22 \x3d shadow.js.require(\\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(js_ns),\x22\\\x22);\x22].join(\x27\x27);\nshadow.cljs.devtools.client.browser.script_eval(require_str_52679);\n\n\nvar G__52681 \x3d seq__52019;\nvar G__52682 \x3d chunk__52020;\nvar G__52683 \x3d count__52021;\nvar G__52684 \x3d (i__52022 + (1));\nseq__52019 \x3d G__52681;\nchunk__52020 \x3d G__52682;\ncount__52021 \x3d G__52683;\ni__52022 \x3d G__52684;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__52019);\nif(temp__5753__auto__){\nvar seq__52019__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__52019__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__52019__$1);\nvar G__52689 \x3d cljs.core.chunk_rest(seq__52019__$1);\nvar G__52690 \x3d c__4591__auto__;\nvar G__52691 \x3d cljs.core.count(c__4591__auto__);\nvar G__52692 \x3d (0);\nseq__52019 \x3d G__52689;\nchunk__52020 \x3d G__52690;\ncount__52021 \x3d G__52691;\ni__52022 \x3d G__52692;\ncontinue;\n} else {\nvar js_ns \x3d cljs.core.first(seq__52019__$1);\nvar require_str_52697 \x3d [\x22var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(js_ns),\x22 \x3d shadow.js.require(\\\x22\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(js_ns),\x22\\\x22);\x22].join(\x27\x27);\nshadow.cljs.devtools.client.browser.script_eval(require_str_52697);\n\n\nvar G__52700 \x3d cljs.core.next(seq__52019__$1);\nvar G__52701 \x3d null;\nvar G__52702 \x3d (0);\nvar G__52703 \x3d (0);\nseq__52019 \x3d G__52700;\nchunk__52020 \x3d G__52701;\ncount__52021 \x3d G__52702;\ni__52022 \x3d G__52703;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.cljs.devtools.client.browser.handle_build_complete \x3d (function shadow$cljs$devtools$client$browser$handle_build_complete(runtime,p__52030){\nvar map__52032 \x3d p__52030;\nvar map__52032__$1 \x3d cljs.core.__destructure_map(map__52032);\nvar msg \x3d map__52032__$1;\nvar info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52032__$1,new cljs.core.Keyword(null,\x22info\x22,\x22info\x22,-317069002));\nvar reload_info \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52032__$1,new cljs.core.Keyword(null,\x22reload-info\x22,\x22reload-info\x22,1648088086));\nvar warnings \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.distinct.cljs$core$IFn$_invoke$arity$1((function (){var iter__4564__auto__ \x3d (function shadow$cljs$devtools$client$browser$handle_build_complete_$_iter__52033(s__52034){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__52034__$1 \x3d s__52034;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__52034__$1);\nif(temp__5753__auto__){\nvar xs__6308__auto__ \x3d temp__5753__auto__;\nvar map__52040 \x3d cljs.core.first(xs__6308__auto__);\nvar map__52040__$1 \x3d cljs.core.__destructure_map(map__52040);\nvar src \x3d map__52040__$1;\nvar resource_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52040__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nvar warnings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52040__$1,new cljs.core.Keyword(null,\x22warnings\x22,\x22warnings\x22,-735437651));\nif(cljs.core.not(new cljs.core.Keyword(null,\x22from-jar\x22,\x22from-jar\x22,1050932827).cljs$core$IFn$_invoke$arity$1(src))){\nvar iterys__4560__auto__ \x3d ((function (s__52034__$1,map__52040,map__52040__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__52032,map__52032__$1,msg,info,reload_info){\nreturn (function shadow$cljs$devtools$client$browser$handle_build_complete_$_iter__52033_$_iter__52035(s__52036){\nreturn (new cljs.core.LazySeq(null,((function (s__52034__$1,map__52040,map__52040__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__52032,map__52032__$1,msg,info,reload_info){\nreturn (function (){\nvar s__52036__$1 \x3d s__52036;\nwhile(true){\nvar temp__5753__auto____$1 \x3d cljs.core.seq(s__52036__$1);\nif(temp__5753__auto____$1){\nvar s__52036__$2 \x3d temp__5753__auto____$1;\nif(cljs.core.chunked_seq_QMARK_(s__52036__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__52036__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__52038 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__52037 \x3d (0);\nwhile(true){\nif((i__52037 \x3c size__4563__auto__)){\nvar warning \x3d cljs.core._nth(c__4562__auto__,i__52037);\ncljs.core.chunk_append(b__52038,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(warning,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100),resource_name));\n\nvar G__52759 \x3d (i__52037 + (1));\ni__52037 \x3d G__52759;\ncontinue;\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__52038),shadow$cljs$devtools$client$browser$handle_build_complete_$_iter__52033_$_iter__52035(cljs.core.chunk_rest(s__52036__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__52038),null);\n}\n} else {\nvar warning \x3d cljs.core.first(s__52036__$2);\nreturn cljs.core.cons(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(warning,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100),resource_name),shadow$cljs$devtools$client$browser$handle_build_complete_$_iter__52033_$_iter__52035(cljs.core.rest(s__52036__$2)));\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});})(s__52034__$1,map__52040,map__52040__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__52032,map__52032__$1,msg,info,reload_info))\n,null,null));\n});})(s__52034__$1,map__52040,map__52040__$1,src,resource_name,warnings,xs__6308__auto__,temp__5753__auto__,map__52032,map__52032__$1,msg,info,reload_info))\n;\nvar fs__4561__auto__ \x3d cljs.core.seq(iterys__4560__auto__(warnings));\nif(fs__4561__auto__){\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2(fs__4561__auto__,shadow$cljs$devtools$client$browser$handle_build_complete_$_iter__52033(cljs.core.rest(s__52034__$1)));\n} else {\nvar G__52775 \x3d cljs.core.rest(s__52034__$1);\ns__52034__$1 \x3d G__52775;\ncontinue;\n}\n} else {\nvar G__52776 \x3d cljs.core.rest(s__52034__$1);\ns__52034__$1 \x3d G__52776;\ncontinue;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424).cljs$core$IFn$_invoke$arity$1(info));\n})()));\nif(shadow.cljs.devtools.client.env.log){\nvar seq__52083_52780 \x3d cljs.core.seq(warnings);\nvar chunk__52084_52781 \x3d null;\nvar count__52085_52782 \x3d (0);\nvar i__52086_52783 \x3d (0);\nwhile(true){\nif((i__52086_52783 \x3c count__52085_52782)){\nvar map__52152_52788 \x3d chunk__52084_52781.cljs$core$IIndexed$_nth$arity$2(null,i__52086_52783);\nvar map__52152_52789__$1 \x3d cljs.core.__destructure_map(map__52152_52788);\nvar w_52790 \x3d map__52152_52789__$1;\nvar msg_52791__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52152_52789__$1,new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444));\nvar line_52792 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52152_52789__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar column_52793 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52152_52789__$1,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095));\nvar resource_name_52794 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52152_52789__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nconsole.warn([\x22BUILD-WARNING in \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(resource_name_52794),\x22 at [\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(line_52792),\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(column_52793),\x22]\\n\\t\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg_52791__$1)].join(\x27\x27));\n\n\nvar G__52810 \x3d seq__52083_52780;\nvar G__52811 \x3d chunk__52084_52781;\nvar G__52812 \x3d count__52085_52782;\nvar G__52813 \x3d (i__52086_52783 + (1));\nseq__52083_52780 \x3d G__52810;\nchunk__52084_52781 \x3d G__52811;\ncount__52085_52782 \x3d G__52812;\ni__52086_52783 \x3d G__52813;\ncontinue;\n} else {\nvar temp__5753__auto___52814 \x3d cljs.core.seq(seq__52083_52780);\nif(temp__5753__auto___52814){\nvar seq__52083_52816__$1 \x3d temp__5753__auto___52814;\nif(cljs.core.chunked_seq_QMARK_(seq__52083_52816__$1)){\nvar c__4591__auto___52817 \x3d cljs.core.chunk_first(seq__52083_52816__$1);\nvar G__52820 \x3d cljs.core.chunk_rest(seq__52083_52816__$1);\nvar G__52821 \x3d c__4591__auto___52817;\nvar G__52822 \x3d cljs.core.count(c__4591__auto___52817);\nvar G__52823 \x3d (0);\nseq__52083_52780 \x3d G__52820;\nchunk__52084_52781 \x3d G__52821;\ncount__52085_52782 \x3d G__52822;\ni__52086_52783 \x3d G__52823;\ncontinue;\n} else {\nvar map__52156_52824 \x3d cljs.core.first(seq__52083_52816__$1);\nvar map__52156_52825__$1 \x3d cljs.core.__destructure_map(map__52156_52824);\nvar w_52826 \x3d map__52156_52825__$1;\nvar msg_52827__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52156_52825__$1,new cljs.core.Keyword(null,\x22msg\x22,\x22msg\x22,-1386103444));\nvar line_52828 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52156_52825__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar column_52829 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52156_52825__$1,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095));\nvar resource_name_52830 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52156_52825__$1,new cljs.core.Keyword(null,\x22resource-name\x22,\x22resource-name\x22,2001617100));\nconsole.warn([\x22BUILD-WARNING in \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(resource_name_52830),\x22 at [\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(line_52828),\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(column_52829),\x22]\\n\\t\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg_52827__$1)].join(\x27\x27));\n\n\nvar G__52832 \x3d cljs.core.next(seq__52083_52816__$1);\nvar G__52833 \x3d null;\nvar G__52834 \x3d (0);\nvar G__52835 \x3d (0);\nseq__52083_52780 \x3d G__52832;\nchunk__52084_52781 \x3d G__52833;\ncount__52085_52782 \x3d G__52834;\ni__52086_52783 \x3d G__52835;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n} else {\n}\n\nif((!(shadow.cljs.devtools.client.env.autoload))){\nreturn shadow.cljs.devtools.client.hud.load_end_success();\n} else {\nif(((cljs.core.empty_QMARK_(warnings)) || (shadow.cljs.devtools.client.env.ignore_warnings))){\nvar sources_to_get \x3d shadow.cljs.devtools.client.env.filter_reload_sources(info,reload_info);\nif(cljs.core.not(cljs.core.seq(sources_to_get))){\nreturn shadow.cljs.devtools.client.hud.load_end_success();\n} else {\nif(cljs.core.seq(cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(msg,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22reload-info\x22,\x22reload-info\x22,1648088086),new cljs.core.Keyword(null,\x22after-load\x22,\x22after-load\x22,-1278503285)], null)))){\n} else {\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22reloading code but no :after-load hooks are configured!\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22https://shadow-cljs.github.io/docs/UsersGuide.html#_lifecycle_hooks\x22], 0));\n}\n\nreturn shadow.cljs.devtools.client.shared.load_sources(runtime,sources_to_get,(function (p1__52028_SHARP_){\nreturn shadow.cljs.devtools.client.browser.do_js_reload(msg,p1__52028_SHARP_,shadow.cljs.devtools.client.hud.load_end_success,shadow.cljs.devtools.client.hud.load_failure);\n}));\n}\n} else {\nreturn null;\n}\n}\n});\nshadow.cljs.devtools.client.browser.page_load_uri \x3d (cljs.core.truth_(goog.global.document)?goog.Uri.parse(document.location.href):null);\nshadow.cljs.devtools.client.browser.match_paths \x3d (function shadow$cljs$devtools$client$browser$match_paths(old,new$){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22file\x22,shadow.cljs.devtools.client.browser.page_load_uri.getScheme())){\nvar rel_new \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$2(new$,(1));\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(old,rel_new)) || (clojure.string.starts_with_QMARK_(old,[rel_new,\x22?\x22].join(\x27\x27))))){\nreturn rel_new;\n} else {\nreturn null;\n}\n} else {\nvar node_uri \x3d goog.Uri.parse(old);\nvar node_uri_resolved \x3d shadow.cljs.devtools.client.browser.page_load_uri.resolve(node_uri);\nvar node_abs \x3d node_uri_resolved.getPath();\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$1(shadow.cljs.devtools.client.browser.page_load_uri.hasSameDomainAs(node_uri))) || (cljs.core.not(node_uri.hasDomain())))){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(node_abs,new$)){\nreturn new$;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n}\n});\nshadow.cljs.devtools.client.browser.handle_asset_update \x3d (function shadow$cljs$devtools$client$browser$handle_asset_update(p__52211){\nvar map__52215 \x3d p__52211;\nvar map__52215__$1 \x3d cljs.core.__destructure_map(map__52215);\nvar msg \x3d map__52215__$1;\nvar updates \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52215__$1,new cljs.core.Keyword(null,\x22updates\x22,\x22updates\x22,2013983452));\nvar seq__52220 \x3d cljs.core.seq(updates);\nvar chunk__52222 \x3d null;\nvar count__52223 \x3d (0);\nvar i__52224 \x3d (0);\nwhile(true){\nif((i__52224 \x3c count__52223)){\nvar path \x3d chunk__52222.cljs$core$IIndexed$_nth$arity$2(null,i__52224);\nif(clojure.string.ends_with_QMARK_(path,\x22css\x22)){\nvar seq__52376_52854 \x3d cljs.core.seq(cljs.core.array_seq.cljs$core$IFn$_invoke$arity$1(document.querySelectorAll(\x22link[rel\x3d\\\x22stylesheet\\\x22]\x22)));\nvar chunk__52380_52855 \x3d null;\nvar count__52381_52856 \x3d (0);\nvar i__52382_52857 \x3d (0);\nwhile(true){\nif((i__52382_52857 \x3c count__52381_52856)){\nvar node_52858 \x3d chunk__52380_52855.cljs$core$IIndexed$_nth$arity$2(null,i__52382_52857);\nif(cljs.core.not(node_52858.shadow$old)){\nvar path_match_52859 \x3d shadow.cljs.devtools.client.browser.match_paths(node_52858.getAttribute(\x22href\x22),path);\nif(cljs.core.truth_(path_match_52859)){\nvar new_link_52871 \x3d (function (){var G__52406 \x3d node_52858.cloneNode(true);\nG__52406.setAttribute(\x22href\x22,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(path_match_52859),\x22?r\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.rand.cljs$core$IFn$_invoke$arity$0())].join(\x27\x27));\n\nreturn G__52406;\n})();\n(node_52858.shadow$old \x3d true);\n\n(new_link_52871.onload \x3d ((function (seq__52376_52854,chunk__52380_52855,count__52381_52856,i__52382_52857,seq__52220,chunk__52222,count__52223,i__52224,new_link_52871,path_match_52859,node_52858,path,map__52215,map__52215__$1,msg,updates){\nreturn (function (e){\nreturn goog.dom.removeNode(node_52858);\n});})(seq__52376_52854,chunk__52380_52855,count__52381_52856,i__52382_52857,seq__52220,chunk__52222,count__52223,i__52224,new_link_52871,path_match_52859,node_52858,path,map__52215,map__52215__$1,msg,updates))\n);\n\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22load CSS\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_match_52859], 0));\n\ngoog.dom.insertSiblingAfter(new_link_52871,node_52858);\n\n\nvar G__52873 \x3d seq__52376_52854;\nvar G__52874 \x3d chunk__52380_52855;\nvar G__52875 \x3d count__52381_52856;\nvar G__52876 \x3d (i__52382_52857 + (1));\nseq__52376_52854 \x3d G__52873;\nchunk__52380_52855 \x3d G__52874;\ncount__52381_52856 \x3d G__52875;\ni__52382_52857 \x3d G__52876;\ncontinue;\n} else {\nvar G__52879 \x3d seq__52376_52854;\nvar G__52880 \x3d chunk__52380_52855;\nvar G__52881 \x3d count__52381_52856;\nvar G__52882 \x3d (i__52382_52857 + (1));\nseq__52376_52854 \x3d G__52879;\nchunk__52380_52855 \x3d G__52880;\ncount__52381_52856 \x3d G__52881;\ni__52382_52857 \x3d G__52882;\ncontinue;\n}\n} else {\nvar G__52883 \x3d seq__52376_52854;\nvar G__52884 \x3d chunk__52380_52855;\nvar G__52885 \x3d count__52381_52856;\nvar G__52886 \x3d (i__52382_52857 + (1));\nseq__52376_52854 \x3d G__52883;\nchunk__52380_52855 \x3d G__52884;\ncount__52381_52856 \x3d G__52885;\ni__52382_52857 \x3d G__52886;\ncontinue;\n}\n} else {\nvar temp__5753__auto___52888 \x3d cljs.core.seq(seq__52376_52854);\nif(temp__5753__auto___52888){\nvar seq__52376_52890__$1 \x3d temp__5753__auto___52888;\nif(cljs.core.chunked_seq_QMARK_(seq__52376_52890__$1)){\nvar c__4591__auto___52891 \x3d cljs.core.chunk_first(seq__52376_52890__$1);\nvar G__52892 \x3d cljs.core.chunk_rest(seq__52376_52890__$1);\nvar G__52893 \x3d c__4591__auto___52891;\nvar G__52894 \x3d cljs.core.count(c__4591__auto___52891);\nvar G__52895 \x3d (0);\nseq__52376_52854 \x3d G__52892;\nchunk__52380_52855 \x3d G__52893;\ncount__52381_52856 \x3d G__52894;\ni__52382_52857 \x3d G__52895;\ncontinue;\n} else {\nvar node_52896 \x3d cljs.core.first(seq__52376_52890__$1);\nif(cljs.core.not(node_52896.shadow$old)){\nvar path_match_52898 \x3d shadow.cljs.devtools.client.browser.match_paths(node_52896.getAttribute(\x22href\x22),path);\nif(cljs.core.truth_(path_match_52898)){\nvar new_link_52900 \x3d (function (){var G__52409 \x3d node_52896.cloneNode(true);\nG__52409.setAttribute(\x22href\x22,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(path_match_52898),\x22?r\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.rand.cljs$core$IFn$_invoke$arity$0())].join(\x27\x27));\n\nreturn G__52409;\n})();\n(node_52896.shadow$old \x3d true);\n\n(new_link_52900.onload \x3d ((function (seq__52376_52854,chunk__52380_52855,count__52381_52856,i__52382_52857,seq__52220,chunk__52222,count__52223,i__52224,new_link_52900,path_match_52898,node_52896,seq__52376_52890__$1,temp__5753__auto___52888,path,map__52215,map__52215__$1,msg,updates){\nreturn (function (e){\nreturn goog.dom.removeNode(node_52896);\n});})(seq__52376_52854,chunk__52380_52855,count__52381_52856,i__52382_52857,seq__52220,chunk__52222,count__52223,i__52224,new_link_52900,path_match_52898,node_52896,seq__52376_52890__$1,temp__5753__auto___52888,path,map__52215,map__52215__$1,msg,updates))\n);\n\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22load CSS\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_match_52898], 0));\n\ngoog.dom.insertSiblingAfter(new_link_52900,node_52896);\n\n\nvar G__52925 \x3d cljs.core.next(seq__52376_52890__$1);\nvar G__52926 \x3d null;\nvar G__52927 \x3d (0);\nvar G__52928 \x3d (0);\nseq__52376_52854 \x3d G__52925;\nchunk__52380_52855 \x3d G__52926;\ncount__52381_52856 \x3d G__52927;\ni__52382_52857 \x3d G__52928;\ncontinue;\n} else {\nvar G__52929 \x3d cljs.core.next(seq__52376_52890__$1);\nvar G__52930 \x3d null;\nvar G__52931 \x3d (0);\nvar G__52932 \x3d (0);\nseq__52376_52854 \x3d G__52929;\nchunk__52380_52855 \x3d G__52930;\ncount__52381_52856 \x3d G__52931;\ni__52382_52857 \x3d G__52932;\ncontinue;\n}\n} else {\nvar G__52933 \x3d cljs.core.next(seq__52376_52890__$1);\nvar G__52934 \x3d null;\nvar G__52935 \x3d (0);\nvar G__52936 \x3d (0);\nseq__52376_52854 \x3d G__52933;\nchunk__52380_52855 \x3d G__52934;\ncount__52381_52856 \x3d G__52935;\ni__52382_52857 \x3d G__52936;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n\n\nvar G__52938 \x3d seq__52220;\nvar G__52939 \x3d chunk__52222;\nvar G__52940 \x3d count__52223;\nvar G__52941 \x3d (i__52224 + (1));\nseq__52220 \x3d G__52938;\nchunk__52222 \x3d G__52939;\ncount__52223 \x3d G__52940;\ni__52224 \x3d G__52941;\ncontinue;\n} else {\nvar G__52942 \x3d seq__52220;\nvar G__52943 \x3d chunk__52222;\nvar G__52944 \x3d count__52223;\nvar G__52945 \x3d (i__52224 + (1));\nseq__52220 \x3d G__52942;\nchunk__52222 \x3d G__52943;\ncount__52223 \x3d G__52944;\ni__52224 \x3d G__52945;\ncontinue;\n}\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__52220);\nif(temp__5753__auto__){\nvar seq__52220__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__52220__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__52220__$1);\nvar G__52946 \x3d cljs.core.chunk_rest(seq__52220__$1);\nvar G__52947 \x3d c__4591__auto__;\nvar G__52948 \x3d cljs.core.count(c__4591__auto__);\nvar G__52949 \x3d (0);\nseq__52220 \x3d G__52946;\nchunk__52222 \x3d G__52947;\ncount__52223 \x3d G__52948;\ni__52224 \x3d G__52949;\ncontinue;\n} else {\nvar path \x3d cljs.core.first(seq__52220__$1);\nif(clojure.string.ends_with_QMARK_(path,\x22css\x22)){\nvar seq__52415_52951 \x3d cljs.core.seq(cljs.core.array_seq.cljs$core$IFn$_invoke$arity$1(document.querySelectorAll(\x22link[rel\x3d\\\x22stylesheet\\\x22]\x22)));\nvar chunk__52419_52952 \x3d null;\nvar count__52420_52953 \x3d (0);\nvar i__52421_52954 \x3d (0);\nwhile(true){\nif((i__52421_52954 \x3c count__52420_52953)){\nvar node_52956 \x3d chunk__52419_52952.cljs$core$IIndexed$_nth$arity$2(null,i__52421_52954);\nif(cljs.core.not(node_52956.shadow$old)){\nvar path_match_52957 \x3d shadow.cljs.devtools.client.browser.match_paths(node_52956.getAttribute(\x22href\x22),path);\nif(cljs.core.truth_(path_match_52957)){\nvar new_link_52958 \x3d (function (){var G__52438 \x3d node_52956.cloneNode(true);\nG__52438.setAttribute(\x22href\x22,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(path_match_52957),\x22?r\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.rand.cljs$core$IFn$_invoke$arity$0())].join(\x27\x27));\n\nreturn G__52438;\n})();\n(node_52956.shadow$old \x3d true);\n\n(new_link_52958.onload \x3d ((function (seq__52415_52951,chunk__52419_52952,count__52420_52953,i__52421_52954,seq__52220,chunk__52222,count__52223,i__52224,new_link_52958,path_match_52957,node_52956,path,seq__52220__$1,temp__5753__auto__,map__52215,map__52215__$1,msg,updates){\nreturn (function (e){\nreturn goog.dom.removeNode(node_52956);\n});})(seq__52415_52951,chunk__52419_52952,count__52420_52953,i__52421_52954,seq__52220,chunk__52222,count__52223,i__52224,new_link_52958,path_match_52957,node_52956,path,seq__52220__$1,temp__5753__auto__,map__52215,map__52215__$1,msg,updates))\n);\n\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22load CSS\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_match_52957], 0));\n\ngoog.dom.insertSiblingAfter(new_link_52958,node_52956);\n\n\nvar G__52975 \x3d seq__52415_52951;\nvar G__52976 \x3d chunk__52419_52952;\nvar G__52977 \x3d count__52420_52953;\nvar G__52978 \x3d (i__52421_52954 + (1));\nseq__52415_52951 \x3d G__52975;\nchunk__52419_52952 \x3d G__52976;\ncount__52420_52953 \x3d G__52977;\ni__52421_52954 \x3d G__52978;\ncontinue;\n} else {\nvar G__52979 \x3d seq__52415_52951;\nvar G__52980 \x3d chunk__52419_52952;\nvar G__52981 \x3d count__52420_52953;\nvar G__52982 \x3d (i__52421_52954 + (1));\nseq__52415_52951 \x3d G__52979;\nchunk__52419_52952 \x3d G__52980;\ncount__52420_52953 \x3d G__52981;\ni__52421_52954 \x3d G__52982;\ncontinue;\n}\n} else {\nvar G__52983 \x3d seq__52415_52951;\nvar G__52984 \x3d chunk__52419_52952;\nvar G__52985 \x3d count__52420_52953;\nvar G__52986 \x3d (i__52421_52954 + (1));\nseq__52415_52951 \x3d G__52983;\nchunk__52419_52952 \x3d G__52984;\ncount__52420_52953 \x3d G__52985;\ni__52421_52954 \x3d G__52986;\ncontinue;\n}\n} else {\nvar temp__5753__auto___52987__$1 \x3d cljs.core.seq(seq__52415_52951);\nif(temp__5753__auto___52987__$1){\nvar seq__52415_52989__$1 \x3d temp__5753__auto___52987__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__52415_52989__$1)){\nvar c__4591__auto___52990 \x3d cljs.core.chunk_first(seq__52415_52989__$1);\nvar G__52991 \x3d cljs.core.chunk_rest(seq__52415_52989__$1);\nvar G__52992 \x3d c__4591__auto___52990;\nvar G__52993 \x3d cljs.core.count(c__4591__auto___52990);\nvar G__52994 \x3d (0);\nseq__52415_52951 \x3d G__52991;\nchunk__52419_52952 \x3d G__52992;\ncount__52420_52953 \x3d G__52993;\ni__52421_52954 \x3d G__52994;\ncontinue;\n} else {\nvar node_52995 \x3d cljs.core.first(seq__52415_52989__$1);\nif(cljs.core.not(node_52995.shadow$old)){\nvar path_match_52996 \x3d shadow.cljs.devtools.client.browser.match_paths(node_52995.getAttribute(\x22href\x22),path);\nif(cljs.core.truth_(path_match_52996)){\nvar new_link_52997 \x3d (function (){var G__52446 \x3d node_52995.cloneNode(true);\nG__52446.setAttribute(\x22href\x22,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(path_match_52996),\x22?r\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.rand.cljs$core$IFn$_invoke$arity$0())].join(\x27\x27));\n\nreturn G__52446;\n})();\n(node_52995.shadow$old \x3d true);\n\n(new_link_52997.onload \x3d ((function (seq__52415_52951,chunk__52419_52952,count__52420_52953,i__52421_52954,seq__52220,chunk__52222,count__52223,i__52224,new_link_52997,path_match_52996,node_52995,seq__52415_52989__$1,temp__5753__auto___52987__$1,path,seq__52220__$1,temp__5753__auto__,map__52215,map__52215__$1,msg,updates){\nreturn (function (e){\nreturn goog.dom.removeNode(node_52995);\n});})(seq__52415_52951,chunk__52419_52952,count__52420_52953,i__52421_52954,seq__52220,chunk__52222,count__52223,i__52224,new_link_52997,path_match_52996,node_52995,seq__52415_52989__$1,temp__5753__auto___52987__$1,path,seq__52220__$1,temp__5753__auto__,map__52215,map__52215__$1,msg,updates))\n);\n\nshadow.cljs.devtools.client.browser.devtools_msg.cljs$core$IFn$_invoke$arity$variadic(\x22load CSS\x22,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_match_52996], 0));\n\ngoog.dom.insertSiblingAfter(new_link_52997,node_52995);\n\n\nvar G__53002 \x3d cljs.core.next(seq__52415_52989__$1);\nvar G__53003 \x3d null;\nvar G__53004 \x3d (0);\nvar G__53005 \x3d (0);\nseq__52415_52951 \x3d G__53002;\nchunk__52419_52952 \x3d G__53003;\ncount__52420_52953 \x3d G__53004;\ni__52421_52954 \x3d G__53005;\ncontinue;\n} else {\nvar G__53006 \x3d cljs.core.next(seq__52415_52989__$1);\nvar G__53007 \x3d null;\nvar G__53008 \x3d (0);\nvar G__53009 \x3d (0);\nseq__52415_52951 \x3d G__53006;\nchunk__52419_52952 \x3d G__53007;\ncount__52420_52953 \x3d G__53008;\ni__52421_52954 \x3d G__53009;\ncontinue;\n}\n} else {\nvar G__53010 \x3d cljs.core.next(seq__52415_52989__$1);\nvar G__53011 \x3d null;\nvar G__53012 \x3d (0);\nvar G__53013 \x3d (0);\nseq__52415_52951 \x3d G__53010;\nchunk__52419_52952 \x3d G__53011;\ncount__52420_52953 \x3d G__53012;\ni__52421_52954 \x3d G__53013;\ncontinue;\n}\n}\n} else {\n}\n}\nbreak;\n}\n\n\nvar G__53014 \x3d cljs.core.next(seq__52220__$1);\nvar G__53015 \x3d null;\nvar G__53016 \x3d (0);\nvar G__53017 \x3d (0);\nseq__52220 \x3d G__53014;\nchunk__52222 \x3d G__53015;\ncount__52223 \x3d G__53016;\ni__52224 \x3d G__53017;\ncontinue;\n} else {\nvar G__53018 \x3d cljs.core.next(seq__52220__$1);\nvar G__53019 \x3d null;\nvar G__53020 \x3d (0);\nvar G__53021 \x3d (0);\nseq__52220 \x3d G__53018;\nchunk__52222 \x3d G__53019;\ncount__52223 \x3d G__53020;\ni__52224 \x3d G__53021;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nshadow.cljs.devtools.client.browser.global_eval \x3d (function shadow$cljs$devtools$client$browser$global_eval(js){\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(\x22undefined\x22,typeof(module))){\nreturn eval(js);\n} else {\nreturn (0,eval)(js);;\n}\n});\nshadow.cljs.devtools.client.browser.repl_init \x3d (function shadow$cljs$devtools$client$browser$repl_init(runtime,p__52466){\nvar map__52467 \x3d p__52466;\nvar map__52467__$1 \x3d cljs.core.__destructure_map(map__52467);\nvar repl_state \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52467__$1,new cljs.core.Keyword(null,\x22repl-state\x22,\x22repl-state\x22,-1733780387));\nreturn shadow.cljs.devtools.client.shared.load_sources(runtime,cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.remove.cljs$core$IFn$_invoke$arity$2(shadow.cljs.devtools.client.env.src_is_loaded_QMARK_,new cljs.core.Keyword(null,\x22repl-sources\x22,\x22repl-sources\x22,723867535).cljs$core$IFn$_invoke$arity$1(repl_state))),(function (sources){\nshadow.cljs.devtools.client.browser.do_js_load(sources);\n\nreturn shadow.cljs.devtools.client.browser.devtools_msg(\x22ready!\x22);\n}));\n});\nshadow.cljs.devtools.client.browser.runtime_info \x3d (((typeof SHADOW_CONFIG !\x3d\x3d \x27undefined\x27))?shadow.json.to_clj.cljs$core$IFn$_invoke$arity$1(SHADOW_CONFIG):null);\nshadow.cljs.devtools.client.browser.client_info \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([shadow.cljs.devtools.client.browser.runtime_info,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22host\x22,\x22host\x22,-1558485167),(cljs.core.truth_(goog.global.document)?new cljs.core.Keyword(null,\x22browser\x22,\x22browser\x22,828191719):new cljs.core.Keyword(null,\x22browser-worker\x22,\x22browser-worker\x22,1638998282)),new cljs.core.Keyword(null,\x22user-agent\x22,\x22user-agent\x22,1220426212),[(cljs.core.truth_(goog.userAgent.OPERA)?\x22Opera\x22:(cljs.core.truth_(goog.userAgent.product.CHROME)?\x22Chrome\x22:(cljs.core.truth_(goog.userAgent.IE)?\x22MSIE\x22:(cljs.core.truth_(goog.userAgent.EDGE)?\x22Edge\x22:(cljs.core.truth_(goog.userAgent.GECKO)?\x22Firefox\x22:(cljs.core.truth_(goog.userAgent.SAFARI)?\x22Safari\x22:(cljs.core.truth_(goog.userAgent.WEBKIT)?\x22Webkit\x22:null))))))),\x22 \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(goog.userAgent.VERSION),\x22 [\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(goog.userAgent.PLATFORM),\x22]\x22].join(\x27\x27),new cljs.core.Keyword(null,\x22dom\x22,\x22dom\x22,-1236537922),(!((goog.global.document \x3d\x3d null)))], null)], 0));\nif((typeof shadow !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.browser !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof shadow.cljs.devtools.client.browser.ws_was_welcome_ref !\x3d\x3d \x27undefined\x27)){\n} else {\nshadow.cljs.devtools.client.browser.ws_was_welcome_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(false);\n}\nif(((shadow.cljs.devtools.client.env.enabled) \x26\x26 ((shadow.cljs.devtools.client.env.worker_client_id \x3e (0))))){\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IEvalJS$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$remote$runtime$api$IEvalJS$_js_eval$arity$2 \x3d (function (this$,code){\nvar this$__$1 \x3d this;\nreturn shadow.cljs.devtools.client.browser.global_eval(code);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IHostSpecific$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IHostSpecific$do_invoke$arity$2 \x3d (function (this$,p__52494){\nvar map__52495 \x3d p__52494;\nvar map__52495__$1 \x3d cljs.core.__destructure_map(map__52495);\nvar _ \x3d map__52495__$1;\nvar js \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52495__$1,new cljs.core.Keyword(null,\x22js\x22,\x22js\x22,1768080579));\nvar this$__$1 \x3d this;\nreturn shadow.cljs.devtools.client.browser.global_eval(js);\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_init$arity$4 \x3d (function (runtime,p__52498,done,error){\nvar map__52499 \x3d p__52498;\nvar map__52499__$1 \x3d cljs.core.__destructure_map(map__52499);\nvar repl_sources \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52499__$1,new cljs.core.Keyword(null,\x22repl-sources\x22,\x22repl-sources\x22,723867535));\nvar runtime__$1 \x3d this;\nreturn shadow.cljs.devtools.client.shared.load_sources(runtime__$1,cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.remove.cljs$core$IFn$_invoke$arity$2(shadow.cljs.devtools.client.env.src_is_loaded_QMARK_,repl_sources)),(function (sources){\nshadow.cljs.devtools.client.browser.do_js_load(sources);\n\nreturn (done.cljs$core$IFn$_invoke$arity$0 ? done.cljs$core$IFn$_invoke$arity$0() : done.call(null));\n}));\n}));\n\n(shadow.cljs.devtools.client.shared.Runtime.prototype.shadow$cljs$devtools$client$shared$IHostSpecific$do_repl_require$arity$4 \x3d (function (runtime,p__52505,done,error){\nvar map__52506 \x3d p__52505;\nvar map__52506__$1 \x3d cljs.core.__destructure_map(map__52506);\nvar msg \x3d map__52506__$1;\nvar sources \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52506__$1,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424));\nvar reload_namespaces \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52506__$1,new cljs.core.Keyword(null,\x22reload-namespaces\x22,\x22reload-namespaces\x22,250210134));\nvar js_requires \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52506__$1,new cljs.core.Keyword(null,\x22js-requires\x22,\x22js-requires\x22,-1311472051));\nvar runtime__$1 \x3d this;\nvar sources_to_load \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentVector.EMPTY,cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p__52510){\nvar map__52511 \x3d p__52510;\nvar map__52511__$1 \x3d cljs.core.__destructure_map(map__52511);\nvar src \x3d map__52511__$1;\nvar provides \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52511__$1,new cljs.core.Keyword(null,\x22provides\x22,\x22provides\x22,-1634397992));\nvar and__4149__auto__ \x3d shadow.cljs.devtools.client.env.src_is_loaded_QMARK_(src);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not(cljs.core.some(reload_namespaces,provides));\n} else {\nreturn and__4149__auto__;\n}\n}),sources));\nif(cljs.core.not(cljs.core.seq(sources_to_load))){\nvar G__52515 \x3d cljs.core.PersistentVector.EMPTY;\nreturn (done.cljs$core$IFn$_invoke$arity$1 ? done.cljs$core$IFn$_invoke$arity$1(G__52515) : done.call(null,G__52515));\n} else {\nreturn shadow.remote.runtime.shared.call.cljs$core$IFn$_invoke$arity$3(runtime__$1,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22op\x22,\x22op\x22,-1882987955),new cljs.core.Keyword(null,\x22cljs-load-sources\x22,\x22cljs-load-sources\x22,-1458295962),new cljs.core.Keyword(null,\x22to\x22,\x22to\x22,192099007),shadow.cljs.devtools.client.env.worker_client_id,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424),cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentVector.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22resource-id\x22,\x22resource-id\x22,-1308422582)),sources_to_load)], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22cljs-sources\x22,\x22cljs-sources\x22,31121610),(function (p__52522){\nvar map__52523 \x3d p__52522;\nvar map__52523__$1 \x3d cljs.core.__destructure_map(map__52523);\nvar msg__$1 \x3d map__52523__$1;\nvar sources__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52523__$1,new cljs.core.Keyword(null,\x22sources\x22,\x22sources\x22,-321166424));\ntry{shadow.cljs.devtools.client.browser.do_js_load(sources__$1);\n\nif(cljs.core.seq(js_requires)){\nshadow.cljs.devtools.client.browser.do_js_requires(js_requires);\n} else {\n}\n\nreturn (done.cljs$core$IFn$_invoke$arity$1 ? done.cljs$core$IFn$_invoke$arity$1(sources_to_load) : done.call(null,sources_to_load));\n}catch (e52524){var ex \x3d e52524;\nreturn (error.cljs$core$IFn$_invoke$arity$1 ? error.cljs$core$IFn$_invoke$arity$1(ex) : error.call(null,ex));\n}})], null));\n}\n}));\n\nshadow.cljs.devtools.client.shared.add_plugin_BANG_(new cljs.core.Keyword(\x22shadow.cljs.devtools.client.browser\x22,\x22client\x22,\x22shadow.cljs.devtools.client.browser/client\x22,-1461019282),cljs.core.PersistentHashSet.EMPTY,(function (p__52525){\nvar map__52526 \x3d p__52525;\nvar map__52526__$1 \x3d cljs.core.__destructure_map(map__52526);\nvar env \x3d map__52526__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52526__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nvar svc \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996),runtime], null);\nshadow.remote.runtime.api.add_extension(runtime,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.browser\x22,\x22client\x22,\x22shadow.cljs.devtools.client.browser/client\x22,-1461019282),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22on-welcome\x22,\x22on-welcome\x22,1895317125),(function (){\ncljs.core.reset_BANG_(shadow.cljs.devtools.client.browser.ws_was_welcome_ref,true);\n\nshadow.cljs.devtools.client.hud.connection_error_clear_BANG_();\n\nshadow.cljs.devtools.client.env.patch_goog_BANG_();\n\nreturn shadow.cljs.devtools.client.browser.devtools_msg([\x22#\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(new cljs.core.Keyword(null,\x22state-ref\x22,\x22state-ref\x22,2127874952).cljs$core$IFn$_invoke$arity$1(runtime)))),\x22 ready!\x22].join(\x27\x27));\n}),new cljs.core.Keyword(null,\x22on-disconnect\x22,\x22on-disconnect\x22,-809021814),(function (e){\nif(cljs.core.truth_(cljs.core.deref(shadow.cljs.devtools.client.browser.ws_was_welcome_ref))){\nshadow.cljs.devtools.client.hud.connection_error(\x22The Websocket connection was closed!\x22);\n\nreturn cljs.core.reset_BANG_(shadow.cljs.devtools.client.browser.ws_was_welcome_ref,false);\n} else {\nreturn null;\n}\n}),new cljs.core.Keyword(null,\x22on-reconnect\x22,\x22on-reconnect\x22,1239988702),(function (e){\nreturn shadow.cljs.devtools.client.hud.connection_error(\x22Reconnecting ...\x22);\n}),new cljs.core.Keyword(null,\x22ops\x22,\x22ops\x22,1237330063),new cljs.core.PersistentArrayMap(null, 8, [new cljs.core.Keyword(null,\x22access-denied\x22,\x22access-denied\x22,959449406),(function (msg){\ncljs.core.reset_BANG_(shadow.cljs.devtools.client.browser.ws_was_welcome_ref,false);\n\nreturn shadow.cljs.devtools.client.hud.connection_error([\x22Stale Output! Your loaded JS was not produced by the running shadow-cljs instance.\x22,\x22 Is the watch for this build running?\x22].join(\x27\x27));\n}),new cljs.core.Keyword(null,\x22cljs-runtime-init\x22,\x22cljs-runtime-init\x22,1305890232),(function (msg){\nreturn shadow.cljs.devtools.client.browser.repl_init(runtime,msg);\n}),new cljs.core.Keyword(null,\x22cljs-asset-update\x22,\x22cljs-asset-update\x22,1224093028),(function (p__52542){\nvar map__52544 \x3d p__52542;\nvar map__52544__$1 \x3d cljs.core.__destructure_map(map__52544);\nvar msg \x3d map__52544__$1;\nvar updates \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52544__$1,new cljs.core.Keyword(null,\x22updates\x22,\x22updates\x22,2013983452));\nreturn shadow.cljs.devtools.client.browser.handle_asset_update(msg);\n}),new cljs.core.Keyword(null,\x22cljs-build-configure\x22,\x22cljs-build-configure\x22,-2089891268),(function (msg){\nreturn null;\n}),new cljs.core.Keyword(null,\x22cljs-build-start\x22,\x22cljs-build-start\x22,-725781241),(function (msg){\nshadow.cljs.devtools.client.hud.hud_hide();\n\nshadow.cljs.devtools.client.hud.load_start();\n\nreturn shadow.cljs.devtools.client.env.run_custom_notify_BANG_(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(msg,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22build-start\x22,\x22build-start\x22,-959649480)));\n}),new cljs.core.Keyword(null,\x22cljs-build-complete\x22,\x22cljs-build-complete\x22,273626153),(function (msg){\nvar msg__$1 \x3d shadow.cljs.devtools.client.env.add_warnings_to_info(msg);\nshadow.cljs.devtools.client.hud.hud_warnings(msg__$1);\n\nshadow.cljs.devtools.client.browser.handle_build_complete(runtime,msg__$1);\n\nreturn shadow.cljs.devtools.client.env.run_custom_notify_BANG_(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(msg__$1,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22build-complete\x22,\x22build-complete\x22,-501868472)));\n}),new cljs.core.Keyword(null,\x22cljs-build-failure\x22,\x22cljs-build-failure\x22,1718154990),(function (msg){\nshadow.cljs.devtools.client.hud.load_end();\n\nshadow.cljs.devtools.client.hud.hud_error(msg);\n\nreturn shadow.cljs.devtools.client.env.run_custom_notify_BANG_(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(msg,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22build-failure\x22,\x22build-failure\x22,-2107487466)));\n}),new cljs.core.Keyword(\x22shadow.cljs.devtools.client.env\x22,\x22worker-notify\x22,\x22shadow.cljs.devtools.client.env/worker-notify\x22,-1456820670),(function (p__52559){\nvar map__52560 \x3d p__52559;\nvar map__52560__$1 \x3d cljs.core.__destructure_map(map__52560);\nvar event_op \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52560__$1,new cljs.core.Keyword(null,\x22event-op\x22,\x22event-op\x22,200358057));\nvar client_id \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52560__$1,new cljs.core.Keyword(null,\x22client-id\x22,\x22client-id\x22,-464622140));\nif(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22client-disconnect\x22,\x22client-disconnect\x22,640227957),event_op)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(client_id,shadow.cljs.devtools.client.env.worker_client_id)))){\nshadow.cljs.devtools.client.hud.connection_error_clear_BANG_();\n\nreturn shadow.cljs.devtools.client.hud.connection_error(\x22The watch for this build was stopped!\x22);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22client-connect\x22,\x22client-connect\x22,-1113973888),event_op)){\nshadow.cljs.devtools.client.hud.connection_error_clear_BANG_();\n\nreturn shadow.cljs.devtools.client.hud.connection_error(\x22The watch for this build was restarted. Reload required!\x22);\n} else {\nreturn null;\n}\n}\n})], null)], null));\n\nreturn svc;\n}),(function (p__52573){\nvar map__52574 \x3d p__52573;\nvar map__52574__$1 \x3d cljs.core.__destructure_map(map__52574);\nvar svc \x3d map__52574__$1;\nvar runtime \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52574__$1,new cljs.core.Keyword(null,\x22runtime\x22,\x22runtime\x22,-1331573996));\nreturn shadow.remote.runtime.api.del_extension(runtime,new cljs.core.Keyword(\x22shadow.cljs.devtools.client.browser\x22,\x22client\x22,\x22shadow.cljs.devtools.client.browser/client\x22,-1461019282));\n}));\n\nshadow.cljs.devtools.client.shared.init_runtime_BANG_(shadow.cljs.devtools.client.browser.client_info,shadow.cljs.devtools.client.websocket.start,shadow.cljs.devtools.client.websocket.send,shadow.cljs.devtools.client.websocket.stop);\n} else {\n}\n");
SHADOW_ENV.evalLoad("sci.impl.destructure.js", true , "goog.provide(\x27sci.impl.destructure\x27);\nsci.impl.destructure.destructure_STAR_ \x3d (function sci$impl$destructure$destructure_STAR_(bindings){\nvar bents \x3d cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),bindings);\nvar pb \x3d (function sci$impl$destructure$destructure_STAR__$_pb(bvec,b,v){\nvar pvec \x3d (function (bvec__$1,b__$1,val){\nvar gvec \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22vec__\x22);\nvar gseq \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22seq__\x22);\nvar gfirst \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22first__\x22);\nvar has_rest \x3d cljs.core.some(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),null], null), null),b__$1);\nvar ret \x3d (function (){var ret \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(bvec__$1,gvec,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val], 0));\nif(cljs.core.truth_(has_rest)){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(ret,gseq,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.seq,(new cljs.core.List(null,gvec,null,(1),null)),(2),null))], 0));\n} else {\nreturn ret;\n}\n})();\nvar n \x3d (0);\nvar bs \x3d b__$1;\nvar seen_rest_QMARK_ \x3d false;\nwhile(true){\nif(cljs.core.seq(bs)){\nvar firstb \x3d cljs.core.first(bs);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(firstb,new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null))){\nvar G__45668 \x3d sci$impl$destructure$destructure_STAR__$_pb(ret,cljs.core.second(bs),gseq);\nvar G__45669 \x3d n;\nvar G__45670 \x3d cljs.core.nnext(bs);\nvar G__45671 \x3d true;\nret \x3d G__45668;\nn \x3d G__45669;\nbs \x3d G__45670;\nseen_rest_QMARK_ \x3d G__45671;\ncontinue;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(firstb,new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641))){\nreturn sci$impl$destructure$destructure_STAR__$_pb(ret,cljs.core.second(bs),gvec);\n} else {\nif(cljs.core.truth_(seen_rest_QMARK_)){\nthrow (new Error(\x22Unsupported binding form, only :as can follow \x26 parameter\x22));\n} else {\nvar G__45674 \x3d sci$impl$destructure$destructure_STAR__$_pb((cljs.core.truth_(has_rest)?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(ret,gfirst,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,cljs.core.first,null,(1),null)),(new cljs.core.List(null,gseq,null,(1),null))))),gseq,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,cljs.core.next,null,(1),null)),(new cljs.core.List(null,gseq,null,(1),null)))))], 0)):ret),firstb,(cljs.core.truth_(has_rest)?gfirst:(new cljs.core.List(null,cljs.core.nth,(new cljs.core.List(null,gvec,(new cljs.core.List(null,n,(new cljs.core.List(null,null,null,(1),null)),(2),null)),(3),null)),(4),null))));\nvar G__45675 \x3d (n + (1));\nvar G__45676 \x3d cljs.core.next(bs);\nvar G__45677 \x3d seen_rest_QMARK_;\nret \x3d G__45674;\nn \x3d G__45675;\nbs \x3d G__45676;\nseen_rest_QMARK_ \x3d G__45677;\ncontinue;\n}\n\n}\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n});\nvar pmap \x3d (function (bvec__$1,b__$1,v__$1){\nvar gmap \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22map__\x22);\nvar defaults \x3d new cljs.core.Keyword(null,\x22or\x22,\x22or\x22,235744169).cljs$core$IFn$_invoke$arity$1(b__$1);\nvar ret \x3d ((function (gmap,defaults,pvec,bents){\nreturn (function (ret){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641).cljs$core$IFn$_invoke$arity$1(b__$1))){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(ret,new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641).cljs$core$IFn$_invoke$arity$1(b__$1),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([gmap], 0));\n} else {\nreturn ret;\n}\n});})(gmap,defaults,pvec,bents))\n(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(bvec__$1,gmap),v__$1),gmap),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),(new cljs.core.List(null,(new cljs.core.List(null,cljs.core.seq_QMARK_,(new cljs.core.List(null,gmap,null,(1),null)),(2),null)),(new cljs.core.List(null,(new cljs.core.List(null,cljs.core.apply,(new cljs.core.List(null,cljs.core.hash_map,(new cljs.core.List(null,gmap,null,(1),null)),(2),null)),(3),null)),(new cljs.core.List(null,gmap,null,(1),null)),(2),null)),(3),null)),(4),null))));\nvar bes \x3d (function (){var transforms \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (ret,gmap,defaults,pvec,bents){\nreturn (function (transforms,mk){\nif((mk instanceof cljs.core.Keyword)){\nvar mkns \x3d cljs.core.namespace(mk);\nvar mkn \x3d cljs.core.name(mk);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(mkn,\x22keys\x22)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(transforms,mk,(function (p1__45500_SHARP_){\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2((function (){var or__4160__auto__ \x3d mkns;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.namespace(p1__45500_SHARP_);\n}\n})(),cljs.core.name(p1__45500_SHARP_));\n}));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(mkn,\x22syms\x22)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(transforms,mk,(function (p1__45501_SHARP_){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2((function (){var or__4160__auto__ \x3d mkns;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.namespace(p1__45501_SHARP_);\n}\n})(),cljs.core.name(p1__45501_SHARP_));\n}));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(mkn,\x22strs\x22)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(transforms,mk,cljs.core.str);\n} else {\nreturn transforms;\n\n}\n}\n}\n} else {\nreturn transforms;\n}\n});})(ret,gmap,defaults,pvec,bents))\n,cljs.core.PersistentArrayMap.EMPTY,cljs.core.keys(b__$1));\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (transforms,ret,gmap,defaults,pvec,bents){\nreturn (function (bes,entry){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p1__45502_SHARP_,p2__45503_SHARP_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__45502_SHARP_,p2__45503_SHARP_,(function (){var fexpr__45595 \x3d cljs.core.val(entry);\nreturn (fexpr__45595.cljs$core$IFn$_invoke$arity$1 ? fexpr__45595.cljs$core$IFn$_invoke$arity$1(p2__45503_SHARP_) : fexpr__45595.call(null,p2__45503_SHARP_));\n})());\n}),cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(bes,cljs.core.key(entry)),(function (){var fexpr__45597 \x3d cljs.core.key(entry);\nreturn (fexpr__45597.cljs$core$IFn$_invoke$arity$1 ? fexpr__45597.cljs$core$IFn$_invoke$arity$1(bes) : fexpr__45597.call(null,bes));\n})());\n});})(transforms,ret,gmap,defaults,pvec,bents))\n,cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(b__$1,new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22or\x22,\x22or\x22,235744169)], 0)),transforms);\n})();\nwhile(true){\nif(cljs.core.seq(bes)){\nvar bb \x3d cljs.core.key(cljs.core.first(bes));\nvar bk \x3d cljs.core.val(cljs.core.first(bes));\nvar local \x3d (((((!((bb \x3d\x3d null))))?(((((bb.cljs$lang$protocol_mask$partition1$ \x26 (4096))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d bb.cljs$core$INamed$))))?true:false):false))?cljs.core.with_meta(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(null,cljs.core.name(bb)),cljs.core.meta(bb)):bb);\nvar bk__$1 \x3d ((cljs.core.not(cljs.core.meta(bk)))?(new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,bk,null,(1),null)),(2),null)):bk);\nvar bv \x3d (function (){var temp__5751__auto__ \x3d cljs.core.find(defaults,local);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar entry \x3d temp__5751__auto__;\nreturn (new cljs.core.List(null,cljs.core.get,(new cljs.core.List(null,gmap,(new cljs.core.List(null,bk__$1,(new cljs.core.List(null,cljs.core.val(entry),null,(1),null)),(2),null)),(3),null)),(4),null));\n} else {\nreturn (new cljs.core.List(null,cljs.core.get,(new cljs.core.List(null,gmap,(new cljs.core.List(null,bk__$1,null,(1),null)),(2),null)),(3),null));\n}\n})();\nvar G__45714 \x3d (((((bb instanceof cljs.core.Keyword)) || ((bb instanceof cljs.core.Symbol))))?cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(ret,local,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([bv], 0)):sci$impl$destructure$destructure_STAR__$_pb(ret,bb,bv));\nvar G__45715 \x3d cljs.core.next(bes);\nret \x3d G__45714;\nbes \x3d G__45715;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n});\nif((b instanceof cljs.core.Symbol)){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(bvec,(cljs.core.truth_(cljs.core.namespace(b))?cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(b)):b)),v);\n} else {\nif((b instanceof cljs.core.Keyword)){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(bvec,cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(b))),v);\n} else {\nif(cljs.core.vector_QMARK_(b)){\nreturn pvec(bvec,b,v);\n} else {\nif(cljs.core.map_QMARK_(b)){\nreturn pmap(bvec,b,v);\n} else {\nthrow (new Error([\x22Unsupported binding form: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(b)].join(\x27\x27)));\n\n}\n}\n}\n}\n});\nvar process_entry \x3d (function (bvec,b){\nreturn pb(bvec,cljs.core.first(b),cljs.core.second(b));\n});\nif(cljs.core.every_QMARK_(cljs.core.symbol_QMARK_,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,bents))){\nreturn bindings;\n} else {\nvar temp__5751__auto__ \x3d cljs.core.seq(cljs.core.filter.cljs$core$IFn$_invoke$arity$2((function (p1__45508_SHARP_){\nreturn (cljs.core.first(p1__45508_SHARP_) instanceof cljs.core.Keyword);\n}),bents));\nif(temp__5751__auto__){\nvar kwbs \x3d temp__5751__auto__;\nthrow (new Error([\x22Unsupported binding key: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.ffirst(kwbs))].join(\x27\x27)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(process_entry,cljs.core.PersistentVector.EMPTY,bents);\n}\n}\n});\nsci.impl.destructure.destructure \x3d (function sci$impl$destructure$destructure(b){\nreturn sci.impl.destructure.destructure_STAR_(b);\n});\n");
SHADOW_ENV.evalLoad("sci.impl.types.js", true , "goog.provide(\x27sci.impl.types\x27);\n\n/**\n * @interface\n */\nsci.impl.types.IBox \x3d function(){};\n\nvar sci$impl$types$IBox$setVal$dyn_46149 \x3d (function (_this,_v){\nvar x__4463__auto__ \x3d (((_this \x3d\x3d null))?null:_this);\nvar m__4464__auto__ \x3d (sci.impl.types.setVal[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(_this,_v) : m__4464__auto__.call(null,_this,_v));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.types.setVal[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(_this,_v) : m__4461__auto__.call(null,_this,_v));\n} else {\nthrow cljs.core.missing_protocol(\x22IBox.setVal\x22,_this);\n}\n}\n});\nsci.impl.types.setVal \x3d (function sci$impl$types$setVal(_this,_v){\nif((((!((_this \x3d\x3d null)))) \x26\x26 ((!((_this.sci$impl$types$IBox$setVal$arity$2 \x3d\x3d null)))))){\nreturn _this.sci$impl$types$IBox$setVal$arity$2(_this,_v);\n} else {\nreturn sci$impl$types$IBox$setVal$dyn_46149(_this,_v);\n}\n});\n\nvar sci$impl$types$IBox$getVal$dyn_46153 \x3d (function (_this){\nvar x__4463__auto__ \x3d (((_this \x3d\x3d null))?null:_this);\nvar m__4464__auto__ \x3d (sci.impl.types.getVal[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_this) : m__4464__auto__.call(null,_this));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.types.getVal[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_this) : m__4461__auto__.call(null,_this));\n} else {\nthrow cljs.core.missing_protocol(\x22IBox.getVal\x22,_this);\n}\n}\n});\nsci.impl.types.getVal \x3d (function sci$impl$types$getVal(_this){\nif((((!((_this \x3d\x3d null)))) \x26\x26 ((!((_this.sci$impl$types$IBox$getVal$arity$1 \x3d\x3d null)))))){\nreturn _this.sci$impl$types$IBox$getVal$arity$1(_this);\n} else {\nreturn sci$impl$types$IBox$getVal$dyn_46153(_this);\n}\n});\n\n\n/**\n* @constructor\n * @implements {sci.impl.types.IBox}\n*/\nsci.impl.types.EvalVar \x3d (function (v){\nthis.v \x3d v;\n});\n(sci.impl.types.EvalVar.prototype.sci$impl$types$IBox$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.types.EvalVar.prototype.sci$impl$types$IBox$getVal$arity$1 \x3d (function (_this){\nvar self__ \x3d this;\nvar _this__$1 \x3d this;\nreturn self__.v;\n}));\n\n(sci.impl.types.EvalVar.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null);\n}));\n\n(sci.impl.types.EvalVar.cljs$lang$type \x3d true);\n\n(sci.impl.types.EvalVar.cljs$lang$ctorStr \x3d \x22sci.impl.types/EvalVar\x22);\n\n(sci.impl.types.EvalVar.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.types/EvalVar\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.types/EvalVar.\n */\nsci.impl.types.__GT_EvalVar \x3d (function sci$impl$types$__GT_EvalVar(v){\nreturn (new sci.impl.types.EvalVar(v));\n});\n\n\n/**\n * @interface\n */\nsci.impl.types.IReified \x3d function(){};\n\nvar sci$impl$types$IReified$getInterfaces$dyn_46158 \x3d (function (_){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (sci.impl.types.getInterfaces[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4464__auto__.call(null,_));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.types.getInterfaces[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4461__auto__.call(null,_));\n} else {\nthrow cljs.core.missing_protocol(\x22IReified.getInterfaces\x22,_);\n}\n}\n});\nsci.impl.types.getInterfaces \x3d (function sci$impl$types$getInterfaces(_){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.sci$impl$types$IReified$getInterfaces$arity$1 \x3d\x3d null)))))){\nreturn _.sci$impl$types$IReified$getInterfaces$arity$1(_);\n} else {\nreturn sci$impl$types$IReified$getInterfaces$dyn_46158(_);\n}\n});\n\nvar sci$impl$types$IReified$getMethods$dyn_46164 \x3d (function (_){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (sci.impl.types.getMethods[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4464__auto__.call(null,_));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.types.getMethods[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4461__auto__.call(null,_));\n} else {\nthrow cljs.core.missing_protocol(\x22IReified.getMethods\x22,_);\n}\n}\n});\nsci.impl.types.getMethods \x3d (function sci$impl$types$getMethods(_){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.sci$impl$types$IReified$getMethods$arity$1 \x3d\x3d null)))))){\nreturn _.sci$impl$types$IReified$getMethods$arity$1(_);\n} else {\nreturn sci$impl$types$IReified$getMethods$dyn_46164(_);\n}\n});\n\nvar sci$impl$types$IReified$getProtocols$dyn_46169 \x3d (function (_){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (sci.impl.types.getProtocols[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4464__auto__.call(null,_));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.types.getProtocols[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4461__auto__.call(null,_));\n} else {\nthrow cljs.core.missing_protocol(\x22IReified.getProtocols\x22,_);\n}\n}\n});\nsci.impl.types.getProtocols \x3d (function sci$impl$types$getProtocols(_){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.sci$impl$types$IReified$getProtocols$arity$1 \x3d\x3d null)))))){\nreturn _.sci$impl$types$IReified$getProtocols$arity$1(_);\n} else {\nreturn sci$impl$types$IReified$getProtocols$dyn_46169(_);\n}\n});\n\n\n/**\n* @constructor\n * @implements {sci.impl.types.IReified}\n*/\nsci.impl.types.Reified \x3d (function (interfaces,meths,protocols){\nthis.interfaces \x3d interfaces;\nthis.meths \x3d meths;\nthis.protocols \x3d protocols;\n});\n(sci.impl.types.Reified.prototype.sci$impl$types$IReified$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.types.Reified.prototype.sci$impl$types$IReified$getInterfaces$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.interfaces;\n}));\n\n(sci.impl.types.Reified.prototype.sci$impl$types$IReified$getMethods$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.meths;\n}));\n\n(sci.impl.types.Reified.prototype.sci$impl$types$IReified$getProtocols$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.protocols;\n}));\n\n(sci.impl.types.Reified.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22interfaces\x22,\x22interfaces\x22,1469182407,null),new cljs.core.Symbol(null,\x22meths\x22,\x22meths\x22,1226876764,null),new cljs.core.Symbol(null,\x22protocols\x22,\x22protocols\x22,1634915631,null)], null);\n}));\n\n(sci.impl.types.Reified.cljs$lang$type \x3d true);\n\n(sci.impl.types.Reified.cljs$lang$ctorStr \x3d \x22sci.impl.types/Reified\x22);\n\n(sci.impl.types.Reified.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.types/Reified\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.types/Reified.\n */\nsci.impl.types.__GT_Reified \x3d (function sci$impl$types$__GT_Reified(interfaces,meths,protocols){\nreturn (new sci.impl.types.Reified(interfaces,meths,protocols));\n});\n\nsci.impl.types.type_impl \x3d (function sci$impl$types$type_impl(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___46215 \x3d arguments.length;\nvar i__4772__auto___46216 \x3d (0);\nwhile(true){\nif((i__4772__auto___46216 \x3c len__4771__auto___46215)){\nargs__4777__auto__.push((arguments[i__4772__auto___46216]));\n\nvar G__46218 \x3d (i__4772__auto___46216 + (1));\ni__4772__auto___46216 \x3d G__46218;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.types.type_impl.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.types.type_impl.cljs$core$IFn$_invoke$arity$variadic \x3d (function (x,_xs){\nvar or__4160__auto__ \x3d (((x instanceof sci.impl.types.Reified))?new cljs.core.Keyword(\x22sci.impl.protocols\x22,\x22reified\x22,\x22sci.impl.protocols/reified\x22,-2019939396):null);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (function (){var G__46067 \x3d x;\nvar G__46067__$1 \x3d (((G__46067 \x3d\x3d null))?null:cljs.core.meta(G__46067));\nif((G__46067__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(G__46067__$1);\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn cljs.core.type(x);\n}\n}\n}));\n\n(sci.impl.types.type_impl.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.types.type_impl.cljs$lang$applyTo \x3d (function (seq46058){\nvar G__46059 \x3d cljs.core.first(seq46058);\nvar seq46058__$1 \x3d cljs.core.next(seq46058);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__46059,seq46058__$1);\n}));\n\n\n/**\n* @constructor\n * @implements {sci.impl.types.IBox}\n*/\nsci.impl.types.EvalForm \x3d (function (form){\nthis.form \x3d form;\n});\n(sci.impl.types.EvalForm.prototype.sci$impl$types$IBox$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.types.EvalForm.prototype.sci$impl$types$IBox$getVal$arity$1 \x3d (function (_this){\nvar self__ \x3d this;\nvar _this__$1 \x3d this;\nreturn self__.form;\n}));\n\n(sci.impl.types.EvalForm.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null);\n}));\n\n(sci.impl.types.EvalForm.cljs$lang$type \x3d true);\n\n(sci.impl.types.EvalForm.cljs$lang$ctorStr \x3d \x22sci.impl.types/EvalForm\x22);\n\n(sci.impl.types.EvalForm.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.types/EvalForm\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.types/EvalForm.\n */\nsci.impl.types.__GT_EvalForm \x3d (function sci$impl$types$__GT_EvalForm(form){\nreturn (new sci.impl.types.EvalForm(form));\n});\n\n\n/**\n * @interface\n */\nsci.impl.types.Sexpr \x3d function(){};\n\nvar sci$impl$types$Sexpr$sexpr$dyn_46239 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.types.sexpr[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.types.sexpr[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22Sexpr.sexpr\x22,this$);\n}\n}\n});\nsci.impl.types.sexpr \x3d (function sci$impl$types$sexpr(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$types$Sexpr$sexpr$arity$1 \x3d\x3d null)))))){\nreturn this$.sci$impl$types$Sexpr$sexpr$arity$1(this$);\n} else {\nreturn sci$impl$types$Sexpr$sexpr$dyn_46239(this$);\n}\n});\n\ngoog.object.set(sci.impl.types.Sexpr,\x22_\x22,true);\n\ngoog.object.set(sci.impl.types.sexpr,\x22_\x22,(function (this$){\nreturn this$;\n}));\n\n/**\n* @constructor\n * @implements {cljs.core.IMeta}\n * @implements {sci.impl.types.IBox}\n * @implements {cljs.core.IWithMeta}\n * @implements {sci.impl.types.Sexpr}\n*/\nsci.impl.types.EvalFn \x3d (function (f,m,expr){\nthis.f \x3d f;\nthis.m \x3d m;\nthis.expr \x3d expr;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 393216;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(sci.impl.types.EvalFn.prototype.sci$impl$types$IBox$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.types.EvalFn.prototype.sci$impl$types$IBox$getVal$arity$1 \x3d (function (_this){\nvar self__ \x3d this;\nvar _this__$1 \x3d this;\nreturn self__.f;\n}));\n\n(sci.impl.types.EvalFn.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_this){\nvar self__ \x3d this;\nvar _this__$1 \x3d this;\nreturn cljs.core.meta(self__.expr);\n}));\n\n(sci.impl.types.EvalFn.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (_this,m__$1){\nvar self__ \x3d this;\nvar _this__$1 \x3d this;\nvar G__46136 \x3d self__.f;\nvar G__46137 \x3d m__$1;\nvar G__46138 \x3d cljs.core.with_meta(self__.expr,m__$1);\nreturn (sci.impl.types.__GT_EvalFn.cljs$core$IFn$_invoke$arity$3 ? sci.impl.types.__GT_EvalFn.cljs$core$IFn$_invoke$arity$3(G__46136,G__46137,G__46138) : sci.impl.types.__GT_EvalFn.call(null,G__46136,G__46137,G__46138));\n}));\n\n(sci.impl.types.EvalFn.prototype.sci$impl$types$Sexpr$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.types.EvalFn.prototype.sci$impl$types$Sexpr$sexpr$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.expr;\n}));\n\n(sci.impl.types.EvalFn.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _this \x3d this;\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.expr);\n}));\n\n(sci.impl.types.EvalFn.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22expr\x22,\x22expr\x22,-1908713478,null)], null);\n}));\n\n(sci.impl.types.EvalFn.cljs$lang$type \x3d true);\n\n(sci.impl.types.EvalFn.cljs$lang$ctorStr \x3d \x22sci.impl.types/EvalFn\x22);\n\n(sci.impl.types.EvalFn.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.types/EvalFn\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.types/EvalFn.\n */\nsci.impl.types.__GT_EvalFn \x3d (function sci$impl$types$__GT_EvalFn(f,m,expr){\nreturn (new sci.impl.types.EvalFn(f,m,expr));\n});\n\n");
SHADOW_ENV.evalLoad("sci.impl.macros.js", true , "goog.provide(\x27sci.impl.macros\x27);\n");
SHADOW_ENV.evalLoad("sci.impl.unrestrict.js", true , "goog.provide(\x27sci.impl.unrestrict\x27);\nsci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d false;\n");
SHADOW_ENV.evalLoad("sci.lang.js", true , "goog.provide(\x27sci.lang\x27);\n");
SHADOW_ENV.evalLoad("sci.impl.vars.js", true , "goog.provide(\x27sci.impl.vars\x27);\n\n/**\n * @interface\n */\nsci.impl.vars.HasName \x3d function(){};\n\nvar sci$impl$vars$HasName$getName$dyn_49068 \x3d (function (_){\nvar x__4463__auto__ \x3d (((_ \x3d\x3d null))?null:_);\nvar m__4464__auto__ \x3d (sci.impl.vars.getName[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4464__auto__.call(null,_));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.getName[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4461__auto__.call(null,_));\n} else {\nthrow cljs.core.missing_protocol(\x22HasName.getName\x22,_);\n}\n}\n});\nsci.impl.vars.getName \x3d (function sci$impl$vars$getName(_){\nif((((!((_ \x3d\x3d null)))) \x26\x26 ((!((_.sci$impl$vars$HasName$getName$arity$1 \x3d\x3d null)))))){\nreturn _.sci$impl$vars$HasName$getName$arity$1(_);\n} else {\nreturn sci$impl$vars$HasName$getName$dyn_49068(_);\n}\n});\n\n\n/**\n* @constructor\n * @implements {sci.impl.vars.HasName}\n * @implements {cljs.core.IMeta}\n*/\nsci.impl.vars.SciNamespace \x3d (function (name,meta){\nthis.name \x3d name;\nthis.meta \x3d meta;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 131072;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(sci.impl.vars.SciNamespace.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.name);\n}));\n\n(sci.impl.vars.SciNamespace.prototype.sci$impl$vars$HasName$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.vars.SciNamespace.prototype.sci$impl$vars$HasName$getName$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.name;\n}));\n\n(sci.impl.vars.SciNamespace.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.meta;\n}));\n\n(sci.impl.vars.SciNamespace.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(sci.impl.vars.SciNamespace.cljs$lang$type \x3d true);\n\n(sci.impl.vars.SciNamespace.cljs$lang$ctorStr \x3d \x22sci.impl.vars/SciNamespace\x22);\n\n(sci.impl.vars.SciNamespace.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.vars/SciNamespace\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.vars/SciNamespace.\n */\nsci.impl.vars.__GT_SciNamespace \x3d (function sci$impl$vars$__GT_SciNamespace(name,meta){\nreturn (new sci.impl.vars.SciNamespace(name,meta));\n});\n\nsci.impl.vars.namespace_QMARK_ \x3d (function sci$impl$vars$namespace_QMARK_(x){\nreturn (x instanceof sci.impl.vars.SciNamespace);\n});\n\n/**\n* @constructor\n*/\nsci.impl.vars.Frame \x3d (function (bindings,prev){\nthis.bindings \x3d bindings;\nthis.prev \x3d prev;\n});\n\n(sci.impl.vars.Frame.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22bindings\x22,\x22bindings\x22,-1383038577,null),new cljs.core.Symbol(null,\x22prev\x22,\x22prev\x22,43462301,null)], null);\n}));\n\n(sci.impl.vars.Frame.cljs$lang$type \x3d true);\n\n(sci.impl.vars.Frame.cljs$lang$ctorStr \x3d \x22sci.impl.vars/Frame\x22);\n\n(sci.impl.vars.Frame.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.vars/Frame\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.vars/Frame.\n */\nsci.impl.vars.__GT_Frame \x3d (function sci$impl$vars$__GT_Frame(bindings,prev){\nreturn (new sci.impl.vars.Frame(bindings,prev));\n});\n\nsci.impl.vars.top_frame \x3d (new sci.impl.vars.Frame(cljs.core.PersistentArrayMap.EMPTY,null));\nsci.impl.vars.dvals \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.top_frame);\nsci.impl.vars.get_thread_binding_frame \x3d (function sci$impl$vars$get_thread_binding_frame(){\nreturn cljs.core.deref(sci.impl.vars.dvals);\n});\n\n/**\n* @constructor\n * @implements {sci.impl.types.IBox}\n*/\nsci.impl.vars.TBox \x3d (function (thread,val){\nthis.thread \x3d thread;\nthis.val \x3d val;\n});\n(sci.impl.vars.TBox.prototype.sci$impl$types$IBox$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.vars.TBox.prototype.sci$impl$types$IBox$setVal$arity$2 \x3d (function (this$,v){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (self__.val \x3d v);\n}));\n\n(sci.impl.vars.TBox.prototype.sci$impl$types$IBox$getVal$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.val;\n}));\n\n(sci.impl.vars.TBox.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22thread\x22,\x22thread\x22,-1707434245,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(sci.impl.vars.TBox.cljs$lang$type \x3d true);\n\n(sci.impl.vars.TBox.cljs$lang$ctorStr \x3d \x22sci.impl.vars/TBox\x22);\n\n(sci.impl.vars.TBox.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.vars/TBox\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.vars/TBox.\n */\nsci.impl.vars.__GT_TBox \x3d (function sci$impl$vars$__GT_TBox(thread,val){\nreturn (new sci.impl.vars.TBox(thread,val));\n});\n\nsci.impl.vars.clone_thread_binding_frame \x3d (function sci$impl$vars$clone_thread_binding_frame(){\nvar f \x3d cljs.core.deref(sci.impl.vars.dvals);\nreturn (new sci.impl.vars.Frame(f.bindings,null));\n});\nsci.impl.vars.reset_thread_binding_frame \x3d (function sci$impl$vars$reset_thread_binding_frame(frame){\nreturn cljs.core.reset_BANG_(sci.impl.vars.dvals,frame);\n});\nsci.impl.vars.dynamic_var_QMARK_ \x3d (function sci$impl$vars$dynamic_var_QMARK_(v){\nvar and__4149__auto__ \x3d (sci.impl.vars.var_QMARK_.cljs$core$IFn$_invoke$arity$1 ? sci.impl.vars.var_QMARK_.cljs$core$IFn$_invoke$arity$1(v) : sci.impl.vars.var_QMARK_.call(null,v));\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(v));\n} else {\nreturn and__4149__auto__;\n}\n});\n\n/**\n * @interface\n */\nsci.impl.vars.IVar \x3d function(){};\n\nvar sci$impl$vars$IVar$bindRoot$dyn_49125 \x3d (function (this$,v){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.bindRoot[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,v) : m__4464__auto__.call(null,this$,v));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.bindRoot[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,v) : m__4461__auto__.call(null,this$,v));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.bindRoot\x22,this$);\n}\n}\n});\nsci.impl.vars.bindRoot \x3d (function sci$impl$vars$bindRoot(this$,v){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$bindRoot$arity$2 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$bindRoot$arity$2(this$,v);\n} else {\nreturn sci$impl$vars$IVar$bindRoot$dyn_49125(this$,v);\n}\n});\n\nvar sci$impl$vars$IVar$getRawRoot$dyn_49153 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.getRawRoot[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.getRawRoot[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.getRawRoot\x22,this$);\n}\n}\n});\nsci.impl.vars.getRawRoot \x3d (function sci$impl$vars$getRawRoot(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$getRawRoot$arity$1 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$getRawRoot$arity$1(this$);\n} else {\nreturn sci$impl$vars$IVar$getRawRoot$dyn_49153(this$);\n}\n});\n\nvar sci$impl$vars$IVar$toSymbol$dyn_49166 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.toSymbol[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.toSymbol[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.toSymbol\x22,this$);\n}\n}\n});\nsci.impl.vars.toSymbol \x3d (function sci$impl$vars$toSymbol(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$toSymbol$arity$1 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$toSymbol$arity$1(this$);\n} else {\nreturn sci$impl$vars$IVar$toSymbol$dyn_49166(this$);\n}\n});\n\nvar sci$impl$vars$IVar$isMacro$dyn_49184 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.isMacro[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.isMacro[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.isMacro\x22,this$);\n}\n}\n});\nsci.impl.vars.isMacro \x3d (function sci$impl$vars$isMacro(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$isMacro$arity$1 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$isMacro$arity$1(this$);\n} else {\nreturn sci$impl$vars$IVar$isMacro$dyn_49184(this$);\n}\n});\n\nvar sci$impl$vars$IVar$hasRoot$dyn_49204 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.hasRoot[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.hasRoot[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.hasRoot\x22,this$);\n}\n}\n});\nsci.impl.vars.hasRoot \x3d (function sci$impl$vars$hasRoot(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$hasRoot$arity$1 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$hasRoot$arity$1(this$);\n} else {\nreturn sci$impl$vars$IVar$hasRoot$dyn_49204(this$);\n}\n});\n\nvar sci$impl$vars$IVar$setThreadBound$dyn_49222 \x3d (function (this$,v){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.setThreadBound[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$2(this$,v) : m__4464__auto__.call(null,this$,v));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.setThreadBound[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$2(this$,v) : m__4461__auto__.call(null,this$,v));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.setThreadBound\x22,this$);\n}\n}\n});\nsci.impl.vars.setThreadBound \x3d (function sci$impl$vars$setThreadBound(this$,v){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$setThreadBound$arity$2 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$setThreadBound$arity$2(this$,v);\n} else {\nreturn sci$impl$vars$IVar$setThreadBound$dyn_49222(this$,v);\n}\n});\n\nvar sci$impl$vars$IVar$unbind$dyn_49237 \x3d (function (this$){\nvar x__4463__auto__ \x3d (((this$ \x3d\x3d null))?null:this$);\nvar m__4464__auto__ \x3d (sci.impl.vars.unbind[goog.typeOf(x__4463__auto__)]);\nif((!((m__4464__auto__ \x3d\x3d null)))){\nreturn (m__4464__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4464__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4464__auto__.call(null,this$));\n} else {\nvar m__4461__auto__ \x3d (sci.impl.vars.unbind[\x22_\x22]);\nif((!((m__4461__auto__ \x3d\x3d null)))){\nreturn (m__4461__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4461__auto__.cljs$core$IFn$_invoke$arity$1(this$) : m__4461__auto__.call(null,this$));\n} else {\nthrow cljs.core.missing_protocol(\x22IVar.unbind\x22,this$);\n}\n}\n});\nsci.impl.vars.unbind \x3d (function sci$impl$vars$unbind(this$){\nif((((!((this$ \x3d\x3d null)))) \x26\x26 ((!((this$.sci$impl$vars$IVar$unbind$arity$1 \x3d\x3d null)))))){\nreturn this$.sci$impl$vars$IVar$unbind$arity$1(this$);\n} else {\nreturn sci$impl$vars$IVar$unbind$dyn_49237(this$);\n}\n});\n\nsci.impl.vars.push_thread_bindings \x3d (function sci$impl$vars$push_thread_bindings(bindings){\nvar frame \x3d sci.impl.vars.get_thread_binding_frame();\nvar bmap \x3d frame.bindings;\nvar bmap__$1 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (acc,p__48389){\nvar vec__48391 \x3d p__48389;\nvar var_STAR_ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48391,(0),null);\nvar val_STAR_ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48391,(1),null);\nif(cljs.core.truth_(sci.impl.vars.dynamic_var_QMARK_(var_STAR_))){\n} else {\nthrow (new Error([\x22Can\x27t dynamically bind non-dynamic var \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(var_STAR_)].join(\x27\x27)));\n}\n\nsci.impl.vars.setThreadBound(var_STAR_,true);\n\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(acc,var_STAR_,(new sci.impl.vars.TBox(null,val_STAR_)));\n}),bmap,bindings);\nreturn sci.impl.vars.reset_thread_binding_frame((new sci.impl.vars.Frame(bmap__$1,frame)));\n});\nsci.impl.vars.pop_thread_bindings \x3d (function sci$impl$vars$pop_thread_bindings(){\nvar temp__5751__auto__ \x3d sci.impl.vars.get_thread_binding_frame().prev;\nif(cljs.core.truth_(temp__5751__auto__)){\nvar f \x3d temp__5751__auto__;\nif((sci.impl.vars.top_frame \x3d\x3d\x3d f)){\nreturn cljs.core.reset_BANG_(sci.impl.vars.dvals,sci.impl.vars.top_frame);\n} else {\nreturn sci.impl.vars.reset_thread_binding_frame(f);\n}\n} else {\nthrow (new Error(\x22No frame to pop.\x22));\n}\n});\nsci.impl.vars.get_thread_bindings \x3d (function sci$impl$vars$get_thread_bindings(){\nvar f \x3d sci.impl.vars.get_thread_binding_frame();\nvar ret \x3d cljs.core.PersistentArrayMap.EMPTY;\nvar kvs \x3d cljs.core.seq(f.bindings);\nwhile(true){\nif(kvs){\nvar vec__48426 \x3d cljs.core.first(kvs);\nvar var_STAR_ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48426,(0),null);\nvar tbox \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__48426,(1),null);\nvar tbox_val \x3d tbox.sci$impl$types$IBox$getVal$arity$1(null);\nvar G__49256 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,var_STAR_,tbox_val);\nvar G__49257 \x3d cljs.core.next(kvs);\nret \x3d G__49256;\nkvs \x3d G__49257;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n});\nsci.impl.vars.get_thread_binding \x3d (function sci$impl$vars$get_thread_binding(sci_var){\nvar temp__5753__auto__ \x3d cljs.core.deref(sci.impl.vars.dvals);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar f \x3d temp__5753__auto__;\nreturn f.bindings.get(sci_var);\n} else {\nreturn null;\n}\n});\nsci.impl.vars.binding_conveyor_fn \x3d (function sci$impl$vars$binding_conveyor_fn(f){\nvar frame \x3d sci.impl.vars.clone_thread_binding_frame();\nreturn (function() {\nvar G__49261 \x3d null;\nvar G__49261__0 \x3d (function (){\nsci.impl.vars.reset_thread_binding_frame(frame);\n\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n});\nvar G__49261__1 \x3d (function (x){\nsci.impl.vars.reset_thread_binding_frame(frame);\n\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(x) : f.call(null,x));\n});\nvar G__49261__2 \x3d (function (x,y){\nsci.impl.vars.reset_thread_binding_frame(frame);\n\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(x,y) : f.call(null,x,y));\n});\nvar G__49261__3 \x3d (function (x,y,z){\nsci.impl.vars.reset_thread_binding_frame(frame);\n\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(x,y,z) : f.call(null,x,y,z));\n});\nvar G__49261__4 \x3d (function() { \nvar G__49270__delegate \x3d function (x,y,z,args){\nsci.impl.vars.reset_thread_binding_frame(frame);\n\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f,x,y,z,args);\n};\nvar G__49270 \x3d function (x,y,z,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 3) {\nvar G__49271__i \x3d 0, G__49271__a \x3d new Array(arguments.length -  3);\nwhile (G__49271__i \x3c G__49271__a.length) {G__49271__a[G__49271__i] \x3d arguments[G__49271__i + 3]; ++G__49271__i;}\n  args \x3d new cljs.core.IndexedSeq(G__49271__a,0,null);\n} \nreturn G__49270__delegate.call(this,x,y,z,args);};\nG__49270.cljs$lang$maxFixedArity \x3d 3;\nG__49270.cljs$lang$applyTo \x3d (function (arglist__49273){\nvar x \x3d cljs.core.first(arglist__49273);\narglist__49273 \x3d cljs.core.next(arglist__49273);\nvar y \x3d cljs.core.first(arglist__49273);\narglist__49273 \x3d cljs.core.next(arglist__49273);\nvar z \x3d cljs.core.first(arglist__49273);\nvar args \x3d cljs.core.rest(arglist__49273);\nreturn G__49270__delegate(x,y,z,args);\n});\nG__49270.cljs$core$IFn$_invoke$arity$variadic \x3d G__49270__delegate;\nreturn G__49270;\n})()\n;\nG__49261 \x3d function(x,y,z,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 0:\nreturn G__49261__0.call(this);\ncase 1:\nreturn G__49261__1.call(this,x);\ncase 2:\nreturn G__49261__2.call(this,x,y);\ncase 3:\nreturn G__49261__3.call(this,x,y,z);\ndefault:\nvar G__49283 \x3d null;\nif (arguments.length \x3e 3) {\nvar G__49284__i \x3d 0, G__49284__a \x3d new Array(arguments.length -  3);\nwhile (G__49284__i \x3c G__49284__a.length) {G__49284__a[G__49284__i] \x3d arguments[G__49284__i + 3]; ++G__49284__i;}\nG__49283 \x3d new cljs.core.IndexedSeq(G__49284__a,0,null);\n}\nreturn G__49261__4.cljs$core$IFn$_invoke$arity$variadic(x,y,z, G__49283);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__49261.cljs$lang$maxFixedArity \x3d 3;\nG__49261.cljs$lang$applyTo \x3d G__49261__4.cljs$lang$applyTo;\nG__49261.cljs$core$IFn$_invoke$arity$0 \x3d G__49261__0;\nG__49261.cljs$core$IFn$_invoke$arity$1 \x3d G__49261__1;\nG__49261.cljs$core$IFn$_invoke$arity$2 \x3d G__49261__2;\nG__49261.cljs$core$IFn$_invoke$arity$3 \x3d G__49261__3;\nG__49261.cljs$core$IFn$_invoke$arity$variadic \x3d G__49261__4.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__49261;\n})()\n});\nsci.impl.vars.throw_unbound_call_exception \x3d (function sci$impl$vars$throw_unbound_call_exception(the_var){\nthrow (new Error([\x22Attempting to call unbound fn: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(the_var)].join(\x27\x27)));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IFn}\n*/\nsci.impl.vars.SciUnbound \x3d (function (the_var){\nthis.the_var \x3d the_var;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 1;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(sci.impl.vars.SciUnbound.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn [\x22Unbound: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.the_var)].join(\x27\x27);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__48467 \x3d (arguments.length - (1));\nswitch (G__48467) {\ncase (0):\nreturn self__.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase (3):\nreturn self__.cljs$core$IFn$_invoke$arity$3((arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase (4):\nreturn self__.cljs$core$IFn$_invoke$arity$4((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase (5):\nreturn self__.cljs$core$IFn$_invoke$arity$5((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase (6):\nreturn self__.cljs$core$IFn$_invoke$arity$6((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ncase (7):\nreturn self__.cljs$core$IFn$_invoke$arity$7((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]));\n\nbreak;\ncase (8):\nreturn self__.cljs$core$IFn$_invoke$arity$8((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]));\n\nbreak;\ncase (9):\nreturn self__.cljs$core$IFn$_invoke$arity$9((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]));\n\nbreak;\ncase (10):\nreturn self__.cljs$core$IFn$_invoke$arity$10((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]));\n\nbreak;\ncase (11):\nreturn self__.cljs$core$IFn$_invoke$arity$11((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]));\n\nbreak;\ncase (12):\nreturn self__.cljs$core$IFn$_invoke$arity$12((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]));\n\nbreak;\ncase (13):\nreturn self__.cljs$core$IFn$_invoke$arity$13((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]));\n\nbreak;\ncase (14):\nreturn self__.cljs$core$IFn$_invoke$arity$14((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]));\n\nbreak;\ncase (15):\nreturn self__.cljs$core$IFn$_invoke$arity$15((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]));\n\nbreak;\ncase (16):\nreturn self__.cljs$core$IFn$_invoke$arity$16((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]));\n\nbreak;\ncase (17):\nreturn self__.cljs$core$IFn$_invoke$arity$17((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]));\n\nbreak;\ncase (18):\nreturn self__.cljs$core$IFn$_invoke$arity$18((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]));\n\nbreak;\ncase (19):\nreturn self__.cljs$core$IFn$_invoke$arity$19((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]));\n\nbreak;\ncase (20):\nreturn self__.cljs$core$IFn$_invoke$arity$20((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]));\n\nbreak;\ncase (21):\nreturn self__.cljs$core$IFn$_invoke$arity$21((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]),(arguments[(21)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(sci.impl.vars.SciUnbound.prototype.apply \x3d (function (self__,args48461){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args48461)));\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (a){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,b){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,c){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,b,c,d){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$5 \x3d (function (a,b,c,d,e){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$6 \x3d (function (a,b,c,d,e,f){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$7 \x3d (function (a,b,c,d,e,f,g){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$8 \x3d (function (a,b,c,d,e,f,g,h){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$9 \x3d (function (a,b,c,d,e,f,g,h,i){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$10 \x3d (function (a,b,c,d,e,f,g,h,i,j){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$11 \x3d (function (a,b,c,d,e,f,g,h,i,j,k){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$12 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$13 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$14 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$15 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$16 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$17 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$18 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$19 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$20 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.prototype.cljs$core$IFn$_invoke$arity$21 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn sci.impl.vars.throw_unbound_call_exception(self__.the_var);\n}));\n\n(sci.impl.vars.SciUnbound.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22the-var\x22,\x22the-var\x22,-1226020156,null)], null);\n}));\n\n(sci.impl.vars.SciUnbound.cljs$lang$type \x3d true);\n\n(sci.impl.vars.SciUnbound.cljs$lang$ctorStr \x3d \x22sci.impl.vars/SciUnbound\x22);\n\n(sci.impl.vars.SciUnbound.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.vars/SciUnbound\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.vars/SciUnbound.\n */\nsci.impl.vars.__GT_SciUnbound \x3d (function sci$impl$vars$__GT_SciUnbound(the_var){\nreturn (new sci.impl.vars.SciUnbound(the_var));\n});\n\nsci.impl.vars.built_in_var_QMARK_ \x3d (function sci$impl$vars$built_in_var_QMARK_(var_meta){\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843).cljs$core$IFn$_invoke$arity$1(var_meta);\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IFn}\n * @implements {sci.impl.vars.HasName}\n * @implements {cljs.core.IMeta}\n * @implements {sci.impl.vars.IVar}\n * @implements {cljs.core.IDeref}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {sci.impl.types.IBox}\n*/\nsci.impl.vars.SciVar \x3d (function (root,sym,meta,thread_bound){\nthis.root \x3d root;\nthis.sym \x3d sym;\nthis.meta \x3d meta;\nthis.thread_bound \x3d thread_bound;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2147647489;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 0;\n});\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$HasName$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$HasName$getName$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.sym;\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$bindRoot$arity$2 \x3d (function (this$,v){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar vm__48042__auto__ \x3d self__.meta;\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d sci.impl.unrestrict._STAR_unrestricted_STAR_;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.not(new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843).cljs$core$IFn$_invoke$arity$1(vm__48042__auto__));\n}\n})())){\nreturn (this$__$1.root \x3d v);\n} else {\nvar the_var__48043__auto__ \x3d this$__$1;\nvar ns__48044__auto__ \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(vm__48042__auto__);\nvar ns_name__48045__auto__ \x3d sci.impl.vars.getName(ns__48044__auto__);\nvar name__48046__auto__ \x3d the_var__48043__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2([\x22Built-in var #\x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48045__auto__),\x22/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48046__auto__),\x22 is read-only.\x22].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),this$__$1], null));\n}\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$getRawRoot$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.root;\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$toSymbol$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.sym;\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$isMacro$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(self__.root));\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$setThreadBound$arity$2 \x3d (function (this$,v){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (this$__$1.thread_bound \x3d v);\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$unbind$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar vm__48042__auto__ \x3d self__.meta;\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d sci.impl.unrestrict._STAR_unrestricted_STAR_;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.not(new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843).cljs$core$IFn$_invoke$arity$1(vm__48042__auto__));\n}\n})())){\nreturn (this$__$1.root \x3d (new sci.impl.vars.SciUnbound(this$__$1)));\n} else {\nvar the_var__48043__auto__ \x3d this$__$1;\nvar ns__48044__auto__ \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(vm__48042__auto__);\nvar ns_name__48045__auto__ \x3d sci.impl.vars.getName(ns__48044__auto__);\nvar name__48046__auto__ \x3d the_var__48043__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2([\x22Built-in var #\x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48045__auto__),\x22/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48046__auto__),\x22 is read-only.\x22].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),this$__$1], null));\n}\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$vars$IVar$hasRoot$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn (!((self__.root instanceof sci.impl.vars.SciUnbound)));\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$types$IBox$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.vars.SciVar.prototype.sci$impl$types$IBox$setVal$arity$2 \x3d (function (this$,v){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nvar temp__5751__auto__ \x3d sci.impl.vars.get_thread_binding(this$__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar b \x3d temp__5751__auto__;\nreturn sci.impl.types.setVal(b,v);\n} else {\nthrow (new Error([\x22Can\x27t change/establish root binding of \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(this$__$1),\x22 with set\x22].join(\x27\x27)));\n}\n}));\n\n(sci.impl.vars.SciVar.prototype.sci$impl$types$IBox$getVal$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nreturn self__.root;\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IDeref$_deref$arity$1 \x3d (function (this$){\nvar self__ \x3d this;\nvar this$__$1 \x3d this;\nif(cljs.core.truth_(self__.thread_bound)){\nvar temp__5751__auto__ \x3d sci.impl.vars.get_thread_binding(this$__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar tbox \x3d temp__5751__auto__;\nreturn sci.impl.types.getVal(tbox);\n} else {\nreturn self__.root;\n}\n} else {\nreturn self__.root;\n}\n}));\n\n(sci.impl.vars.SciVar.prototype.toString \x3d (function (){\nvar self__ \x3d this;\nvar _ \x3d this;\nreturn [\x22#\x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(self__.sym)].join(\x27\x27);\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (a,writer,opts){\nvar self__ \x3d this;\nvar a__$1 \x3d this;\ncljs.core._write(writer,\x22#\x27\x22);\n\nreturn cljs.core.pr_writer(self__.sym,writer,opts);\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.meta;\n}));\n\n(sci.impl.vars.SciVar.prototype.call \x3d (function (unused__10790__auto__){\nvar self__ \x3d this;\nvar self__ \x3d this;\nvar G__48735 \x3d (arguments.length - (1));\nswitch (G__48735) {\ncase (0):\nreturn self__.cljs$core$IFn$_invoke$arity$0();\n\nbreak;\ncase (1):\nreturn self__.cljs$core$IFn$_invoke$arity$1((arguments[(1)]));\n\nbreak;\ncase (2):\nreturn self__.cljs$core$IFn$_invoke$arity$2((arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase (3):\nreturn self__.cljs$core$IFn$_invoke$arity$3((arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase (4):\nreturn self__.cljs$core$IFn$_invoke$arity$4((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase (5):\nreturn self__.cljs$core$IFn$_invoke$arity$5((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ncase (6):\nreturn self__.cljs$core$IFn$_invoke$arity$6((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]));\n\nbreak;\ncase (7):\nreturn self__.cljs$core$IFn$_invoke$arity$7((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]));\n\nbreak;\ncase (8):\nreturn self__.cljs$core$IFn$_invoke$arity$8((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]));\n\nbreak;\ncase (9):\nreturn self__.cljs$core$IFn$_invoke$arity$9((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]));\n\nbreak;\ncase (10):\nreturn self__.cljs$core$IFn$_invoke$arity$10((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]));\n\nbreak;\ncase (11):\nreturn self__.cljs$core$IFn$_invoke$arity$11((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]));\n\nbreak;\ncase (12):\nreturn self__.cljs$core$IFn$_invoke$arity$12((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]));\n\nbreak;\ncase (13):\nreturn self__.cljs$core$IFn$_invoke$arity$13((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]));\n\nbreak;\ncase (14):\nreturn self__.cljs$core$IFn$_invoke$arity$14((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]));\n\nbreak;\ncase (15):\nreturn self__.cljs$core$IFn$_invoke$arity$15((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]));\n\nbreak;\ncase (16):\nreturn self__.cljs$core$IFn$_invoke$arity$16((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]));\n\nbreak;\ncase (17):\nreturn self__.cljs$core$IFn$_invoke$arity$17((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]));\n\nbreak;\ncase (18):\nreturn self__.cljs$core$IFn$_invoke$arity$18((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]));\n\nbreak;\ncase (19):\nreturn self__.cljs$core$IFn$_invoke$arity$19((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]));\n\nbreak;\ncase (20):\nreturn self__.cljs$core$IFn$_invoke$arity$20((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]));\n\nbreak;\ncase (21):\nreturn self__.cljs$core$IFn$_invoke$arity$21((arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]),(arguments[(6)]),(arguments[(7)]),(arguments[(8)]),(arguments[(9)]),(arguments[(10)]),(arguments[(11)]),(arguments[(12)]),(arguments[(13)]),(arguments[(14)]),(arguments[(15)]),(arguments[(16)]),(arguments[(17)]),(arguments[(18)]),(arguments[(19)]),(arguments[(20)]),(arguments[(21)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1((arguments.length - (1)))].join(\x27\x27)));\n\n}\n}));\n\n(sci.impl.vars.SciVar.prototype.apply \x3d (function (self__,args48617){\nvar self__ \x3d this;\nvar self____$1 \x3d this;\nreturn self____$1.call.apply(self____$1,[self____$1].concat(cljs.core.aclone(args48617)));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$0 \x3d (function (){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48815 \x3d cljs.core.deref(this$);\nreturn (fexpr__48815.cljs$core$IFn$_invoke$arity$0 ? fexpr__48815.cljs$core$IFn$_invoke$arity$0() : fexpr__48815.call(null));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$1 \x3d (function (a){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48827 \x3d cljs.core.deref(this$);\nreturn (fexpr__48827.cljs$core$IFn$_invoke$arity$1 ? fexpr__48827.cljs$core$IFn$_invoke$arity$1(a) : fexpr__48827.call(null,a));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$2 \x3d (function (a,b){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48844 \x3d cljs.core.deref(this$);\nreturn (fexpr__48844.cljs$core$IFn$_invoke$arity$2 ? fexpr__48844.cljs$core$IFn$_invoke$arity$2(a,b) : fexpr__48844.call(null,a,b));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$3 \x3d (function (a,b,c){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48855 \x3d cljs.core.deref(this$);\nreturn (fexpr__48855.cljs$core$IFn$_invoke$arity$3 ? fexpr__48855.cljs$core$IFn$_invoke$arity$3(a,b,c) : fexpr__48855.call(null,a,b,c));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$4 \x3d (function (a,b,c,d){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48875 \x3d cljs.core.deref(this$);\nreturn (fexpr__48875.cljs$core$IFn$_invoke$arity$4 ? fexpr__48875.cljs$core$IFn$_invoke$arity$4(a,b,c,d) : fexpr__48875.call(null,a,b,c,d));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$5 \x3d (function (a,b,c,d,e){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48887 \x3d cljs.core.deref(this$);\nreturn (fexpr__48887.cljs$core$IFn$_invoke$arity$5 ? fexpr__48887.cljs$core$IFn$_invoke$arity$5(a,b,c,d,e) : fexpr__48887.call(null,a,b,c,d,e));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$6 \x3d (function (a,b,c,d,e,f){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48899 \x3d cljs.core.deref(this$);\nreturn (fexpr__48899.cljs$core$IFn$_invoke$arity$6 ? fexpr__48899.cljs$core$IFn$_invoke$arity$6(a,b,c,d,e,f) : fexpr__48899.call(null,a,b,c,d,e,f));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$7 \x3d (function (a,b,c,d,e,f,g){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48909 \x3d cljs.core.deref(this$);\nreturn (fexpr__48909.cljs$core$IFn$_invoke$arity$7 ? fexpr__48909.cljs$core$IFn$_invoke$arity$7(a,b,c,d,e,f,g) : fexpr__48909.call(null,a,b,c,d,e,f,g));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$8 \x3d (function (a,b,c,d,e,f,g,h){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48917 \x3d cljs.core.deref(this$);\nreturn (fexpr__48917.cljs$core$IFn$_invoke$arity$8 ? fexpr__48917.cljs$core$IFn$_invoke$arity$8(a,b,c,d,e,f,g,h) : fexpr__48917.call(null,a,b,c,d,e,f,g,h));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$9 \x3d (function (a,b,c,d,e,f,g,h,i){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48920 \x3d cljs.core.deref(this$);\nreturn (fexpr__48920.cljs$core$IFn$_invoke$arity$9 ? fexpr__48920.cljs$core$IFn$_invoke$arity$9(a,b,c,d,e,f,g,h,i) : fexpr__48920.call(null,a,b,c,d,e,f,g,h,i));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$10 \x3d (function (a,b,c,d,e,f,g,h,i,j){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48927 \x3d cljs.core.deref(this$);\nreturn (fexpr__48927.cljs$core$IFn$_invoke$arity$10 ? fexpr__48927.cljs$core$IFn$_invoke$arity$10(a,b,c,d,e,f,g,h,i,j) : fexpr__48927.call(null,a,b,c,d,e,f,g,h,i,j));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$11 \x3d (function (a,b,c,d,e,f,g,h,i,j,k){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48938 \x3d cljs.core.deref(this$);\nreturn (fexpr__48938.cljs$core$IFn$_invoke$arity$11 ? fexpr__48938.cljs$core$IFn$_invoke$arity$11(a,b,c,d,e,f,g,h,i,j,k) : fexpr__48938.call(null,a,b,c,d,e,f,g,h,i,j,k));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$12 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48952 \x3d cljs.core.deref(this$);\nreturn (fexpr__48952.cljs$core$IFn$_invoke$arity$12 ? fexpr__48952.cljs$core$IFn$_invoke$arity$12(a,b,c,d,e,f,g,h,i,j,k,l) : fexpr__48952.call(null,a,b,c,d,e,f,g,h,i,j,k,l));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$13 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48964 \x3d cljs.core.deref(this$);\nreturn (fexpr__48964.cljs$core$IFn$_invoke$arity$13 ? fexpr__48964.cljs$core$IFn$_invoke$arity$13(a,b,c,d,e,f,g,h,i,j,k,l,m) : fexpr__48964.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$14 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48974 \x3d cljs.core.deref(this$);\nreturn (fexpr__48974.cljs$core$IFn$_invoke$arity$14 ? fexpr__48974.cljs$core$IFn$_invoke$arity$14(a,b,c,d,e,f,g,h,i,j,k,l,m,n) : fexpr__48974.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$15 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48982 \x3d cljs.core.deref(this$);\nreturn (fexpr__48982.cljs$core$IFn$_invoke$arity$15 ? fexpr__48982.cljs$core$IFn$_invoke$arity$15(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) : fexpr__48982.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$16 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48985 \x3d cljs.core.deref(this$);\nreturn (fexpr__48985.cljs$core$IFn$_invoke$arity$16 ? fexpr__48985.cljs$core$IFn$_invoke$arity$16(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) : fexpr__48985.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$17 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48988 \x3d cljs.core.deref(this$);\nreturn (fexpr__48988.cljs$core$IFn$_invoke$arity$17 ? fexpr__48988.cljs$core$IFn$_invoke$arity$17(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q) : fexpr__48988.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$18 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48990 \x3d cljs.core.deref(this$);\nreturn (fexpr__48990.cljs$core$IFn$_invoke$arity$18 ? fexpr__48990.cljs$core$IFn$_invoke$arity$18(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r) : fexpr__48990.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$19 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48994 \x3d cljs.core.deref(this$);\nreturn (fexpr__48994.cljs$core$IFn$_invoke$arity$19 ? fexpr__48994.cljs$core$IFn$_invoke$arity$19(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s) : fexpr__48994.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$20 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){\nvar self__ \x3d this;\nvar this$ \x3d this;\nvar fexpr__48996 \x3d cljs.core.deref(this$);\nreturn (fexpr__48996.cljs$core$IFn$_invoke$arity$20 ? fexpr__48996.cljs$core$IFn$_invoke$arity$20(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t) : fexpr__48996.call(null,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t));\n}));\n\n(sci.impl.vars.SciVar.prototype.cljs$core$IFn$_invoke$arity$21 \x3d (function (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest){\nvar self__ \x3d this;\nvar this$ \x3d this;\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(cljs.core.deref(this$),a,b,c,d,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,rest], 0));\n}));\n\n(sci.impl.vars.SciVar.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22root\x22,\x22root\x22,1191874074,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),new cljs.core.Symbol(null,\x22sym\x22,\x22sym\x22,195671222,null),cljs.core.with_meta(new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null)),cljs.core.with_meta(new cljs.core.Symbol(null,\x22thread-bound\x22,\x22thread-bound\x22,1232527493,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22mutable\x22,\x22mutable\x22,875778266),true], null))], null);\n}));\n\n(sci.impl.vars.SciVar.cljs$lang$type \x3d true);\n\n(sci.impl.vars.SciVar.cljs$lang$ctorStr \x3d \x22sci.impl.vars/SciVar\x22);\n\n(sci.impl.vars.SciVar.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.vars/SciVar\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.vars/SciVar.\n */\nsci.impl.vars.__GT_SciVar \x3d (function sci$impl$vars$__GT_SciVar(root,sym,meta,thread_bound){\nreturn (new sci.impl.vars.SciVar(root,sym,meta,thread_bound));\n});\n\nsci.impl.vars.var_get \x3d (function sci$impl$vars$var_get(v){\nreturn cljs.core.deref(v);\n});\nsci.impl.vars.var_set \x3d (function sci$impl$vars$var_set(v,val){\nreturn sci.impl.types.setVal(v,val);\n});\nsci.impl.vars.var_QMARK_ \x3d (function sci$impl$vars$var_QMARK_(x){\nreturn (x instanceof sci.impl.vars.SciVar);\n});\nsci.impl.vars.dynamic_var \x3d (function sci$impl$vars$dynamic_var(var_args){\nvar G__49031 \x3d arguments.length;\nswitch (G__49031) {\ncase 1:\nreturn sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nreturn sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$3(name,null,cljs.core.meta(name));\n}));\n\n(sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2 \x3d (function (name,init_val){\nreturn sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$3(name,init_val,cljs.core.meta(name));\n}));\n\n(sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$3 \x3d (function (name,init_val,meta){\nvar meta__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(meta,new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true);\nreturn (new sci.impl.vars.SciVar(init_val,name,meta__$1,false));\n}));\n\n(sci.impl.vars.dynamic_var.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.vars.current_file \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22*file*\x22,\x22*file*\x22,624866474,null),null);\nsci.impl.vars.user_ns \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22user\x22,\x22user\x22,-1122004413,null),null);\nsci.impl.vars.current_ns \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22*ns*\x22,\x22*ns*\x22,740153818,null),sci.impl.vars.user_ns);\nsci.impl.vars.current_ns_name \x3d (function sci$impl$vars$current_ns_name(){\nreturn sci.impl.vars.getName(cljs.core.deref(sci.impl.vars.current_ns));\n});\nsci.impl.vars.alter_var_root \x3d (function sci$impl$vars$alter_var_root(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49511 \x3d arguments.length;\nvar i__4772__auto___49512 \x3d (0);\nwhile(true){\nif((i__4772__auto___49512 \x3c len__4771__auto___49511)){\nargs__4777__auto__.push((arguments[i__4772__auto___49512]));\n\nvar G__49513 \x3d (i__4772__auto___49512 + (1));\ni__4772__auto___49512 \x3d G__49513;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.vars.alter_var_root.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.vars.alter_var_root.cljs$core$IFn$_invoke$arity$variadic \x3d (function (v,f,args){\nreturn sci.impl.vars.bindRoot(v,cljs.core.apply.cljs$core$IFn$_invoke$arity$3(f,sci.impl.vars.getRawRoot(v),args));\n}));\n\n(sci.impl.vars.alter_var_root.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.vars.alter_var_root.cljs$lang$applyTo \x3d (function (seq49042){\nvar G__49043 \x3d cljs.core.first(seq49042);\nvar seq49042__$1 \x3d cljs.core.next(seq49042);\nvar G__49044 \x3d cljs.core.first(seq49042__$1);\nvar seq49042__$2 \x3d cljs.core.next(seq49042__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__49043,G__49044,seq49042__$2);\n}));\n\n/**\n * Returns a new sci var.\n */\nsci.impl.vars.new_var \x3d (function sci$impl$vars$new_var(var_args){\nvar G__49053 \x3d arguments.length;\nswitch (G__49053) {\ncase 1:\nreturn sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nvar G__49059 \x3d sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3(name,null,null);\nsci.impl.vars.unbind(G__49059);\n\nreturn G__49059;\n}));\n\n(sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$2 \x3d (function (name,init_val){\nreturn sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3(name,init_val,cljs.core.meta(name));\n}));\n\n(sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3 \x3d (function (name,init_val,meta){\nreturn sci.impl.vars.__GT_SciVar(init_val,name,meta,false);\n}));\n\n(sci.impl.vars.new_var.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("sci.impl.utils.js", true , "goog.provide(\x27sci.impl.utils\x27);\ncljs.core.derive.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.error\x22,\x22realized-beyond-max\x22,\x22sci.error/realized-beyond-max\x22,-1094268187),new cljs.core.Keyword(\x22sci\x22,\x22error\x22,\x22sci/error\x22,-979082803));\ncljs.core.derive.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.error\x22,\x22parse\x22,\x22sci.error/parse\x22,-264338844),new cljs.core.Keyword(\x22sci\x22,\x22error\x22,\x22sci/error\x22,-979082803));\nsci.impl.utils.constant_QMARK_ \x3d (function sci$impl$utils$constant_QMARK_(x){\nreturn ((typeof x \x3d\x3d\x3d \x27number\x27) || (typeof x \x3d\x3d\x3d \x27string\x27) || ((x instanceof cljs.core.Keyword)) || (cljs.core.boolean_QMARK_(x)));\n});\nsci.impl.utils.eval_QMARK_ \x3d (function sci$impl$utils$eval_QMARK_(x){\nvar G__49096 \x3d x;\nvar G__49096__$1 \x3d (((G__49096 \x3d\x3d null))?null:cljs.core.meta(G__49096));\nif((G__49096__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978).cljs$core$IFn$_invoke$arity$1(G__49096__$1);\n}\n});\nsci.impl.utils.kw_identical_QMARK_ \x3d cljs.core.keyword_identical_QMARK_;\nsci.impl.utils.mark_eval_call \x3d (function sci$impl$utils$mark_eval_call(var_args){\nvar G__49111 \x3d arguments.length;\nswitch (G__49111) {\ncase 1:\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 3:\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1 \x3d (function (expr){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(expr,(function (m){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22call\x22,\x22call\x22,-519999866)),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),cljs.core.deref(sci.impl.vars.current_ns)),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.core.deref(sci.impl.vars.current_file));\n}));\n}));\n\n(sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$3 \x3d (function (expr,extra_key,extra_val){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(expr,(function (m){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22call\x22,\x22call\x22,-519999866)),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),cljs.core.deref(sci.impl.vars.current_ns)),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.core.deref(sci.impl.vars.current_file)),extra_key,extra_val);\n}));\n}));\n\n(sci.impl.utils.mark_eval_call.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.utils.mark_eval \x3d (function sci$impl$utils$mark_eval(expr){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(expr,(function (m){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22eval\x22,\x22eval\x22,-1103567905));\n}));\n});\nsci.impl.utils.throw_error_with_location \x3d (function sci$impl$utils$throw_error_with_location(var_args){\nvar G__49173 \x3d arguments.length;\nswitch (G__49173) {\ncase 2:\nreturn sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2 \x3d (function (msg,iobj){\nreturn sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$3(msg,iobj,cljs.core.PersistentArrayMap.EMPTY);\n}));\n\n(sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$3 \x3d (function (msg,iobj,data){\nvar map__49197 \x3d cljs.core.meta(iobj);\nvar map__49197__$1 \x3d cljs.core.__destructure_map(map__49197);\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49197__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar column \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49197__$1,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095));\nvar file \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__49197__$1,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.core.deref(sci.impl.vars.current_file));\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(msg,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(\x22sci\x22,\x22error\x22,\x22sci/error\x22,-979082803),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file], null),data], 0)));\n}));\n\n(sci.impl.utils.throw_error_with_location.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.utils._STAR_in_try_STAR_ \x3d false;\nsci.impl.utils.macro_QMARK_ \x3d (function sci$impl$utils$macro_QMARK_(f){\nvar temp__5753__auto__ \x3d cljs.core.meta(f);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar m \x3d temp__5753__auto__;\nvar or__4160__auto__ \x3d new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m);\n}\n} else {\nreturn null;\n}\n});\nsci.impl.utils.needs_ctx \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(\x22needs-ctx\x22);\nsci.impl.utils.rethrow_with_location_of_node \x3d (function sci$impl$utils$rethrow_with_location_of_node(ctx,e,raw_node){\nif(cljs.core.truth_(sci.impl.utils._STAR_in_try_STAR_)){\nthrow e;\n} else {\nvar node \x3d sci.impl.types.sexpr(raw_node);\nvar m \x3d cljs.core.meta(node);\nvar f \x3d ((cljs.core.seqable_QMARK_(node))?cljs.core.first(node):null);\nvar fm \x3d (function (){var G__49241 \x3d f;\nif((G__49241 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.meta(G__49241);\n}\n})();\nvar op \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d fm;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn m;\n} else {\nreturn and__4149__auto__;\n}\n})())?m.get(new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978)):null);\nvar special_QMARK_ \x3d (function (){var or__4160__auto__ \x3d (((f instanceof cljs.core.Symbol)) \x26\x26 (cljs.core.not(op)));\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),op) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),op));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (sci.impl.utils.needs_ctx \x3d\x3d\x3d op);\n}\n}\n})();\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar id \x3d new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.not(special_QMARK_)){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.update_in,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22sci.impl\x22,\x22callstack\x22,\x22sci.impl/callstack\x22,-1621010557),id], null),(function (vt){\nif(cljs.core.truth_(vt)){\ncljs.core._vreset_BANG_(vt,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core._deref(vt),node));\n\nreturn vt;\n} else {\nreturn cljs.core.volatile_BANG_((new cljs.core.List(null,node,null,(1),null)));\n}\n}));\n} else {\n}\n\nvar d \x3d cljs.core.ex_data(e);\nvar wrapping_sci_error_QMARK_ \x3d cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(d),new cljs.core.Keyword(\x22sci\x22,\x22error\x22,\x22sci/error\x22,-979082803));\nif(wrapping_sci_error_QMARK_){\nthrow e;\n} else {\nvar ex_msg \x3d e.message;\nvar map__49253 \x3d (function (){var or__4160__auto__ \x3d (function (){var G__49262 \x3d env;\nvar G__49262__$1 \x3d (((G__49262 \x3d\x3d null))?null:cljs.core.deref(G__49262));\nvar G__49262__$2 \x3d (((G__49262__$1 \x3d\x3d null))?null:new cljs.core.Keyword(\x22sci.impl\x22,\x22callstack\x22,\x22sci.impl/callstack\x22,-1621010557).cljs$core$IFn$_invoke$arity$1(G__49262__$1));\nvar G__49262__$3 \x3d (((G__49262__$2 \x3d\x3d null))?null:cljs.core.get.cljs$core$IFn$_invoke$arity$2(G__49262__$2,id));\nvar G__49262__$4 \x3d (((G__49262__$3 \x3d\x3d null))?null:cljs.core.deref(G__49262__$3));\nvar G__49262__$5 \x3d (((G__49262__$4 \x3d\x3d null))?null:cljs.core.last(G__49262__$4));\nif((G__49262__$5 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.meta(G__49262__$5);\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.meta(node);\n}\n})();\nvar map__49253__$1 \x3d cljs.core.__destructure_map(map__49253);\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49253__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar column \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49253__$1,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095));\nvar file \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__49253__$1,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d line;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn column;\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar ex_msg__$1 \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d ex_msg;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(fm);\n} else {\nreturn and__4149__auto__;\n}\n})())?clojure.string.replace(ex_msg,/(sci\\.impl\\.)?fns\\/fun\\/[a-zA-Z0-9-]+--\\d+/,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(fm)),\x22/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(fm))].join(\x27\x27)):ex_msg);\nvar new_exception \x3d (function (){var new_d \x3d new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(\x22sci\x22,\x22error\x22,\x22sci/error\x22,-979082803),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),line,new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),column,new cljs.core.Keyword(null,\x22message\x22,\x22message\x22,-406056002),ex_msg__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22callstack\x22,\x22sci.impl/callstack\x22,-1621010557),(new cljs.core.Delay((function (){\nvar temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22sci.impl\x22,\x22callstack\x22,\x22sci.impl/callstack\x22,-1621010557),new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092).cljs$core$IFn$_invoke$arity$1(ctx)], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn cljs.core.deref(v);\n} else {\nreturn null;\n}\n}),null)),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),file,new cljs.core.Keyword(null,\x22locals\x22,\x22locals\x22,535295783),new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192).cljs$core$IFn$_invoke$arity$1(ctx)], null);\nreturn cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(ex_msg__$1,new_d,e);\n})();\nthrow new_exception;\n} else {\nthrow e;\n}\n}\n}\n});\nsci.impl.utils.iobj_QMARK_ \x3d (function sci$impl$utils$iobj_QMARK_(obj){\nif((((!((obj \x3d\x3d null))))?(((((obj.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IWithMeta$))))?true:false):false)){\nreturn cljs.core.meta(obj);\n} else {\nreturn false;\n}\n});\n/**\n * Only adds metadata to obj if d is not nil and if obj already has meta\n */\nsci.impl.utils.vary_meta_STAR_ \x3d (function sci$impl$utils$vary_meta_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___49397 \x3d arguments.length;\nvar i__4772__auto___49399 \x3d (0);\nwhile(true){\nif((i__4772__auto___49399 \x3c len__4771__auto___49397)){\nargs__4777__auto__.push((arguments[i__4772__auto___49399]));\n\nvar G__49402 \x3d (i__4772__auto___49399 + (1));\ni__4772__auto___49399 \x3d G__49402;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.utils.vary_meta_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.utils.vary_meta_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (obj,f,args){\nif(cljs.core.truth_(sci.impl.utils.iobj_QMARK_(obj))){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core.vary_meta,obj,f,args);\n} else {\nreturn obj;\n}\n}));\n\n(sci.impl.utils.vary_meta_STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.utils.vary_meta_STAR_.cljs$lang$applyTo \x3d (function (seq49307){\nvar G__49308 \x3d cljs.core.first(seq49307);\nvar seq49307__$1 \x3d cljs.core.next(seq49307);\nvar G__49309 \x3d cljs.core.first(seq49307__$1);\nvar seq49307__$2 \x3d cljs.core.next(seq49307__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__49308,G__49309,seq49307__$2);\n}));\n\n/**\n * Only adds metadata to obj if d is not nil and if meta on obj isn\x27t already nil.\n */\nsci.impl.utils.merge_meta \x3d (function sci$impl$utils$merge_meta(obj,d){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d d;\nif(cljs.core.truth_(and__4149__auto__)){\nif((!((obj \x3d\x3d null)))){\nif((((obj.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IWithMeta$)))){\nreturn true;\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar temp__5751__auto__ \x3d cljs.core.meta(obj);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar m \x3d temp__5751__auto__;\n\nreturn cljs.core.with_meta(obj,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([m,d], 0)));\n} else {\nreturn obj;\n}\n} else {\nreturn obj;\n}\n});\nsci.impl.utils.strip_core_ns \x3d (function sci$impl$utils$strip_core_ns(sym){\nvar G__49319 \x3d cljs.core.namespace(sym);\nswitch (G__49319) {\ncase \x22clojure.core\x22:\ncase \x22cljs.core\x22:\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(sym));\n\nbreak;\ndefault:\nreturn sym;\n\n}\n});\nsci.impl.utils.allowed_loop \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(\x22loop\x22);\nsci.impl.utils.allowed_recur \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(\x22recur\x22);\nsci.impl.utils.walk_STAR_ \x3d (function sci$impl$utils$walk_STAR_(inner,form){\nif(cljs.core.truth_(new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(form)))){\nreturn form;\n} else {\nif(cljs.core.list_QMARK_(form)){\nreturn cljs.core.with_meta(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form)),cljs.core.meta(form));\n} else {\nif(cljs.core.map_entry_QMARK_(form)){\nreturn (new cljs.core.MapEntry((function (){var G__49321 \x3d cljs.core.key(form);\nreturn (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__49321) : inner.call(null,G__49321));\n})(),(function (){var G__49322 \x3d cljs.core.val(form);\nreturn (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__49322) : inner.call(null,G__49322));\n})(),null));\n} else {\nif(cljs.core.seq_QMARK_(form)){\nreturn cljs.core.with_meta(cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form)),cljs.core.meta(form));\n} else {\nif(cljs.core.record_QMARK_(form)){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (r,x){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(x) : inner.call(null,x)));\n}),form,form);\n} else {\nif(cljs.core.coll_QMARK_(form)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.empty(form),cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\n} else {\nreturn form;\n\n}\n}\n}\n}\n}\n}\n});\n/**\n * Prewalk with metadata preservation. Does not prewalk :sci.impl/op nodes.\n */\nsci.impl.utils.prewalk \x3d (function sci$impl$utils$prewalk(f,form){\nreturn sci.impl.utils.walk_STAR_(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(sci.impl.utils.prewalk,f),(f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(form) : f.call(null,form)));\n});\n/**\n * Fetches namespaces from env if it exists. Else, if `create?`,\n *   produces one regardless of the existince of the namespace in env and\n *   adds it to env before returning it.\n */\nsci.impl.utils.namespace_object \x3d (function sci$impl$utils$namespace_object(env,ns_sym,create_QMARK_,attr_map){\nvar env_STAR_ \x3d cljs.core.deref(env);\nvar ns_map \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env_STAR_,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_sym], null));\nvar or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962).cljs$core$IFn$_invoke$arity$1(ns_map);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nif(cljs.core.truth_((function (){var or__4160__auto____$1 \x3d ns_map;\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn create_QMARK_;\n}\n})())){\nvar ns_obj \x3d sci.impl.vars.__GT_SciNamespace(ns_sym,attr_map);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_sym,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962)], null),ns_obj);\n\nreturn ns_obj;\n} else {\nreturn null;\n}\n}\n});\nsci.impl.utils.set_namespace_BANG_ \x3d (function sci$impl$utils$set_namespace_BANG_(ctx,ns_sym,attr_map){\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar attr_map__$1 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.meta(ns_sym),attr_map], 0));\nvar ns_obj \x3d sci.impl.utils.namespace_object(env,ns_sym,true,attr_map__$1);\nreturn sci.impl.types.setVal(sci.impl.vars.current_ns,ns_obj);\n});\nsci.impl.utils.eval_form_state \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_require_state \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_use_state \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_resolve_state \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_refer_state \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.macroexpand_STAR_ \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.macroexpand_1_STAR_ \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_STAR_ \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_do_STAR_ \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_fn \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.eval_string_STAR_ \x3d cljs.core.volatile_BANG_(null);\nsci.impl.utils.lookup \x3d cljs.core.volatile_BANG_(null);\n/**\n * Like partition-by but splits collection only when `pred` returns\n *   a truthy value. E.g. `(split-when odd? [1 2 3 4 5]) \x3d\x3e ((1 2) (3 4) (5))`\n */\nsci.impl.utils.split_when \x3d (function sci$impl$utils$split_when(pred,coll){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar temp__5753__auto__ \x3d cljs.core.seq(coll);\nif(temp__5753__auto__){\nvar s \x3d temp__5753__auto__;\nvar fst \x3d cljs.core.first(s);\nvar f \x3d cljs.core.complement(pred);\nvar run \x3d cljs.core.cons(fst,cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__49335_SHARP_){\nreturn f(p1__49335_SHARP_);\n}),cljs.core.next(s)));\nreturn cljs.core.cons(run,(function (){var G__49337 \x3d pred;\nvar G__49338 \x3d (new cljs.core.LazySeq(null,(function (){\nreturn cljs.core.drop.cljs$core$IFn$_invoke$arity$2(cljs.core.count(run),s);\n}),null,null));\nreturn (sci.impl.utils.split_when.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.split_when.cljs$core$IFn$_invoke$arity$2(G__49337,G__49338) : sci.impl.utils.split_when.call(null,G__49337,G__49338));\n})());\n} else {\nreturn null;\n}\n}),null,null));\n});\nsci.impl.utils.ana_macros \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 28, [new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),\x22null\x22,new cljs.core.Symbol(null,\x22import\x22,\x22import\x22,241030818,null),\x22null\x22,new cljs.core.Symbol(null,\x22doseq\x22,\x22doseq\x22,221164135,null),\x22null\x22,new cljs.core.Symbol(null,\x22lazy-seq\x22,\x22lazy-seq\x22,489632906,null),\x22null\x22,new cljs.core.Symbol(null,\x22let\x22,\x22let\x22,358118826,null),\x22null\x22,new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),\x22null\x22,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),\x22null\x22,new cljs.core.Symbol(null,\x22in-ns\x22,\x22in-ns\x22,-2089468466,null),\x22null\x22,new cljs.core.Symbol(null,\x22defn\x22,\x22defn\x22,-126010802,null),\x22null\x22,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),\x22null\x22,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),\x22null\x22,new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),\x22null\x22,new cljs.core.Symbol(null,\x22declare\x22,\x22declare\x22,654042991,null),\x22null\x22,new cljs.core.Symbol(null,\x22or\x22,\x22or\x22,1876275696,null),\x22null\x22,new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),\x22null\x22,new cljs.core.Symbol(null,\x22loop\x22,\x22loop\x22,1244978678,null),\x22null\x22,new cljs.core.Symbol(null,\x22for\x22,\x22for\x22,316745208,null),\x22null\x22,new cljs.core.Symbol(null,\x22expand-constructor\x22,\x22expand-constructor\x22,-343741576,null),\x22null\x22,new cljs.core.Symbol(null,\x22defmacro\x22,\x22defmacro\x22,2054157304,null),\x22null\x22,new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),\x22null\x22,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),\x22null\x22,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),\x22null\x22,new cljs.core.Symbol(null,\x22case\x22,\x22case\x22,-1510733573,null),\x22null\x22,new cljs.core.Symbol(null,\x22comment\x22,\x22comment\x22,-2122229700,null),\x22null\x22,new cljs.core.Symbol(null,\x22resolve\x22,\x22resolve\x22,56086045,null),\x22null\x22,new cljs.core.Symbol(null,\x22and\x22,\x22and\x22,668631710,null),\x22null\x22,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),\x22null\x22,new cljs.core.Symbol(null,\x22expand-dot*\x22,\x22expand-dot*\x22,-1946890561,null),\x22null\x22], null), null);\nsci.impl.utils.ctx_fn \x3d (function sci$impl$utils$ctx_fn(f,expr){\nreturn sci.impl.types.__GT_EvalFn(f,null,expr);\n});\nsci.impl.utils.maybe_destructured \x3d (function sci$impl$utils$maybe_destructured(params,body){\nif(cljs.core.every_QMARK_(cljs.core.symbol_QMARK_,params)){\nreturn new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),params,new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669),body], null);\n} else {\nvar params__$1 \x3d params;\nvar new_params \x3d cljs.core.with_meta(cljs.core.PersistentVector.EMPTY,cljs.core.meta(params__$1));\nvar lets \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nif(cljs.core.truth_(params__$1)){\nif((cljs.core.first(params__$1) instanceof cljs.core.Symbol)){\nvar G__49463 \x3d cljs.core.next(params__$1);\nvar G__49464 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(new_params,cljs.core.first(params__$1));\nvar G__49465 \x3d lets;\nparams__$1 \x3d G__49463;\nnew_params \x3d G__49464;\nlets \x3d G__49465;\ncontinue;\n} else {\nvar gparam \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22p__\x22);\nvar G__49467 \x3d cljs.core.next(params__$1);\nvar G__49468 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(new_params,gparam);\nvar G__49469 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(lets,cljs.core.first(params__$1)),gparam);\nparams__$1 \x3d G__49467;\nnew_params \x3d G__49468;\nlets \x3d G__49469;\ncontinue;\n}\n} else {\nreturn new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235),new_params,new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,lets,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0))))], null)], null);\n}\nbreak;\n}\n}\n});\n");
SHADOW_ENV.evalLoad("sci.impl.doseq_macro.js", true , "goog.provide(\x27sci.impl.doseq_macro\x27);\nsci.impl.doseq_macro.assert_args \x3d (function sci$impl$doseq_macro$assert_args(seq_exprs,_body_exprs){\nif(cljs.core.vector_QMARK_(seq_exprs)){\n} else {\nthrow (new Error(\x22doseq requires a vector for its binding\x22));\n}\n\nif(cljs.core.even_QMARK_(cljs.core.count(seq_exprs))){\nreturn null;\n} else {\nthrow (new Error(\x22doseq requires an even number of forms in binding vector\x22));\n}\n});\nsci.impl.doseq_macro.expand_doseq \x3d (function sci$impl$doseq_macro$expand_doseq(_,p__49364){\nvar vec__49365 \x3d p__49364;\nvar seq__49366 \x3d cljs.core.seq(vec__49365);\nvar first__49367 \x3d cljs.core.first(seq__49366);\nvar seq__49366__$1 \x3d cljs.core.next(seq__49366);\nvar ___$1 \x3d first__49367;\nvar first__49367__$1 \x3d cljs.core.first(seq__49366__$1);\nvar seq__49366__$2 \x3d cljs.core.next(seq__49366__$1);\nvar seq_exprs \x3d first__49367__$1;\nvar body \x3d seq__49366__$2;\nsci.impl.doseq_macro.assert_args(seq_exprs,body);\n\nvar step \x3d (function sci$impl$doseq_macro$expand_doseq_$_step(recform,exprs){\nif(cljs.core.not(exprs)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),body)))], null);\n} else {\nvar k \x3d cljs.core.first(exprs);\nvar v \x3d cljs.core.second(exprs);\nif((k instanceof cljs.core.Keyword)){\nvar steppair \x3d sci$impl$doseq_macro$expand_doseq_$_step(recform,cljs.core.nnext(exprs));\nvar needrec \x3d (steppair.cljs$core$IFn$_invoke$arity$1 ? steppair.cljs$core$IFn$_invoke$arity$1((0)) : steppair.call(null,(0)));\nvar subform \x3d (steppair.cljs$core$IFn$_invoke$arity$1 ? steppair.cljs$core$IFn$_invoke$arity$1((1)) : steppair.call(null,(1)));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22let\x22,\x22let\x22,-1282412701))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [needrec,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,subform,null,(1),null))], 0))))], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22while\x22,\x22while\x22,963117786))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [false,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22when\x22,\x22when\x22,1064114221,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,subform,null,(1),null)),(cljs.core.truth_(needrec)?new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [recform], null):null)], 0))))], null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22when\x22,\x22when\x22,-576417306))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [false,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),(new cljs.core.List(null,subform,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(cljs.core.truth_(needrec)?new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [recform], null):null)], 0)))),null,(1),null)),(new cljs.core.List(null,recform,null,(1),null))], 0))))], null);\n} else {\nreturn null;\n}\n}\n}\n} else {\nvar seq_ \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22seq_\x22);\nvar chunk_ \x3d cljs.core.with_meta(cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22chunk_\x22),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22clojure.lang.IChunk\x22,\x22clojure.lang.IChunk\x22,195957271,null)], null));\nvar count_ \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22count_\x22);\nvar i_ \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22i_\x22);\nvar recform__$1 \x3d cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22next\x22,\x22cljs.core/next\x22,-1291438473,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,null,null,(1),null)),(new cljs.core.List(null,(0),null,(1),null)),(new cljs.core.List(null,(0),null,(1),null))], 0))));\nvar steppair \x3d sci$impl$doseq_macro$expand_doseq_$_step(recform__$1,cljs.core.nnext(exprs));\nvar needrec \x3d (steppair.cljs$core$IFn$_invoke$arity$1 ? steppair.cljs$core$IFn$_invoke$arity$1((0)) : steppair.call(null,(0)));\nvar subform \x3d (steppair.cljs$core$IFn$_invoke$arity$1 ? steppair.cljs$core$IFn$_invoke$arity$1((1)) : steppair.call(null,(1)));\nvar recform_chunk \x3d cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,chunk_,null,(1),null)),(new cljs.core.List(null,count_,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-inc\x22,\x22cljs.core/unchecked-inc\x22,-501313167,null),null,(1),null)),(new cljs.core.List(null,i_,null,(1),null))))),null,(1),null))], 0))));\nvar steppair_chunk \x3d sci$impl$doseq_macro$expand_doseq_$_step(recform_chunk,cljs.core.nnext(exprs));\nvar subform_chunk \x3d (steppair_chunk.cljs$core$IFn$_invoke$arity$1 ? steppair_chunk.cljs$core$IFn$_invoke$arity$1((1)) : steppair_chunk.call(null,(1)));\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [true,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_loop,null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,seq_,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22seq\x22,\x22cljs.core/seq\x22,-1649497689,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,chunk_,null,(1),null)),(new cljs.core.List(null,null,null,(1),null)),(new cljs.core.List(null,count_,null,(1),null)),(new cljs.core.List(null,(0),null,(1),null)),(new cljs.core.List(null,i_,null,(1),null)),(new cljs.core.List(null,(0),null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3c\x22,\x22cljs.core/\x3c\x22,1677496129,null),null,(1),null)),(new cljs.core.List(null,i_,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,count_,null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,k,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nth\x22,\x22cljs.core/nth\x22,1961052085,null),null,(1),null)),(new cljs.core.List(null,chunk_,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,i_,null,(1),null))], 0)))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,subform_chunk,null,(1),null)),(cljs.core.truth_(needrec)?new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [recform_chunk], null):null)], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,seq_,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22seq\x22,\x22cljs.core/seq\x22,-1649497689,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22when\x22,\x22when\x22,1064114221,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunked-seq?\x22,\x22cljs.core/chunked-seq?\x22,-712922369,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22c__49360__auto__\x22,\x22c__49360__auto__\x22,-981172904,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-first\x22,\x22cljs.core/chunk-first\x22,-1157877305,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-rest\x22,\x22cljs.core/chunk-rest\x22,-398161143,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22c__49360__auto__\x22,\x22c__49360__auto__\x22,-981172904,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22int\x22,\x22cljs.core/int\x22,20935062,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22count\x22,\x22cljs.core/count\x22,-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22c__49360__auto__\x22,\x22c__49360__auto__\x22,-981172904,null),null,(1),null))))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22int\x22,\x22cljs.core/int\x22,20935062,null),null,(1),null)),(new cljs.core.List(null,(0),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,k,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22first\x22,\x22cljs.core/first\x22,-752535972,null),null,(1),null)),(new cljs.core.List(null,seq_,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,subform,null,(1),null)),(cljs.core.truth_(needrec)?new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [recform__$1], null):null)], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))))], null);\n}\n}\n});\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(step(null,cljs.core.seq(seq_exprs)),(1));\n});\n");
SHADOW_ENV.evalLoad("sci.impl.faster.js", true , "goog.provide(\x27sci.impl.faster\x27);\n");
SHADOW_ENV.evalLoad("sci.impl.fns.js", true , "goog.provide(\x27sci.impl.fns\x27);\nsci.impl.fns.throw_arity \x3d (function sci$impl$fns$throw_arity(ctx,nsm,fn_name,macro_QMARK_,args){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22disable-arity-checks\x22,\x22disable-arity-checks\x22,1131364206).cljs$core$IFn$_invoke$arity$1(ctx))){\nreturn null;\n} else {\nthrow (new Error((function (){var actual_count \x3d (cljs.core.truth_(macro_QMARK_)?(cljs.core.count(args) - (2)):cljs.core.count(args));\nreturn [\x22Wrong number of args (\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(actual_count),\x22) passed to: \x22,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(nsm),\x22/\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(fn_name)].join(\x27\x27)].join(\x27\x27);\n})()));\n}\n});\n\n/**\n* @constructor\n * @implements {sci.impl.types.IBox}\n*/\nsci.impl.fns.Recur \x3d (function (val){\nthis.val \x3d val;\n});\n(sci.impl.fns.Recur.prototype.sci$impl$types$IBox$ \x3d cljs.core.PROTOCOL_SENTINEL);\n\n(sci.impl.fns.Recur.prototype.sci$impl$types$IBox$getVal$arity$1 \x3d (function (_){\nvar self__ \x3d this;\nvar ___$1 \x3d this;\nreturn self__.val;\n}));\n\n(sci.impl.fns.Recur.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null);\n}));\n\n(sci.impl.fns.Recur.cljs$lang$type \x3d true);\n\n(sci.impl.fns.Recur.cljs$lang$ctorStr \x3d \x22sci.impl.fns/Recur\x22);\n\n(sci.impl.fns.Recur.cljs$lang$ctorPrWriter \x3d (function (this__4404__auto__,writer__4405__auto__,opt__4406__auto__){\nreturn cljs.core._write(writer__4405__auto__,\x22sci.impl.fns/Recur\x22);\n}));\n\n/**\n * Positional factory function for sci.impl.fns/Recur.\n */\nsci.impl.fns.__GT_Recur \x3d (function sci$impl$fns$__GT_Recur(val){\nreturn (new sci.impl.fns.Recur(val));\n});\n\nsci.impl.fns.fun \x3d (function sci$impl$fns$fun(ctx,interpret,p__50524,fn_name,macro_QMARK_){\nvar map__50530 \x3d p__50524;\nvar map__50530__$1 \x3d cljs.core.__destructure_map(map__50530);\nvar _m \x3d map__50530__$1;\nvar fixed_arity \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50530__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22fixed-arity\x22,\x22sci.impl/fixed-arity\x22,-1251617052));\nvar var_arg_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50530__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22var-arg-name\x22,\x22sci.impl/var-arg-name\x22,1800498100));\nvar params \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50530__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22params\x22,\x22sci.impl/params\x22,-175360738));\nvar body \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50530__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22body\x22,\x22sci.impl/body\x22,-1493886648));\nvar nsm \x3d sci.impl.vars.current_ns_name();\nvar disable_arity_checks_QMARK_ \x3d ctx.get(new cljs.core.Keyword(null,\x22disable-arity-checks\x22,\x22disable-arity-checks\x22,1131364206));\nvar f \x3d ((cljs.core.not(var_arg_name))?(function (){var G__50547 \x3d (fixed_arity | (0));\nswitch (G__50547) {\ncase (0):\nreturn (function sci$impl$fns$fun_$_arity_0(){\nwhile(true){\nvar ret \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx,body) : interpret.call(null,ctx,body));\nvar recur_QMARK_ \x3d (ret instanceof sci.impl.fns.Recur);\nif(recur_QMARK_){\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n});\n\nbreak;\ncase (1):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50554 \x3d cljs.core._nth(params,(0));\nreturn (function sci$impl$fns$fun_$_arity_1(G__50553){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50554,G__50553);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$1);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52429 \x3d cljs.core._nth(recur_val,(0));\nG__50553 \x3d G__52429;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50559 \x3d cljs.core._nth(params,(0));\nreturn (function sci$impl$fns$fun_$_arity_1(G__50558){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50559,G__50558);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$1);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52431 \x3d cljs.core._nth(recur_val,(0));\nG__50558 \x3d G__52431;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (2):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50575 \x3d cljs.core._nth(params,(0));\nvar G__50576 \x3d cljs.core._nth(params,(1));\nreturn (function sci$impl$fns$fun_$_arity_2(G__50573,G__50574){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50575,G__50573);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50576,G__50574);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$2);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52433 \x3d cljs.core._nth(recur_val,(0));\nvar G__52434 \x3d cljs.core._nth(recur_val,(1));\nG__50573 \x3d G__52433;\nG__50574 \x3d G__52434;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50583 \x3d cljs.core._nth(params,(0));\nvar G__50584 \x3d cljs.core._nth(params,(1));\nreturn (function sci$impl$fns$fun_$_arity_2(G__50581,G__50582){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50583,G__50581);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50584,G__50582);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$2);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52440 \x3d cljs.core._nth(recur_val,(0));\nvar G__52441 \x3d cljs.core._nth(recur_val,(1));\nG__50581 \x3d G__52440;\nG__50582 \x3d G__52441;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (3):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50593 \x3d cljs.core._nth(params,(0));\nvar G__50594 \x3d cljs.core._nth(params,(1));\nvar G__50595 \x3d cljs.core._nth(params,(2));\nreturn (function sci$impl$fns$fun_$_arity_3(G__50590,G__50591,G__50592){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50593,G__50590);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50594,G__50591);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50595,G__50592);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$3);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52447 \x3d cljs.core._nth(recur_val,(0));\nvar G__52448 \x3d cljs.core._nth(recur_val,(1));\nvar G__52449 \x3d cljs.core._nth(recur_val,(2));\nG__50590 \x3d G__52447;\nG__50591 \x3d G__52448;\nG__50592 \x3d G__52449;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50604 \x3d cljs.core._nth(params,(0));\nvar G__50605 \x3d cljs.core._nth(params,(1));\nvar G__50606 \x3d cljs.core._nth(params,(2));\nreturn (function sci$impl$fns$fun_$_arity_3(G__50601,G__50602,G__50603){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((3),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50604,G__50601);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50605,G__50602);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50606,G__50603);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$3);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52461 \x3d cljs.core._nth(recur_val,(0));\nvar G__52462 \x3d cljs.core._nth(recur_val,(1));\nvar G__52463 \x3d cljs.core._nth(recur_val,(2));\nG__50601 \x3d G__52461;\nG__50602 \x3d G__52462;\nG__50603 \x3d G__52463;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (4):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50622 \x3d cljs.core._nth(params,(0));\nvar G__50623 \x3d cljs.core._nth(params,(1));\nvar G__50624 \x3d cljs.core._nth(params,(2));\nvar G__50625 \x3d cljs.core._nth(params,(3));\nreturn (function sci$impl$fns$fun_$_arity_4(G__50618,G__50619,G__50620,G__50621){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50622,G__50618);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50623,G__50619);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50624,G__50620);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50625,G__50621);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$4);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52468 \x3d cljs.core._nth(recur_val,(0));\nvar G__52469 \x3d cljs.core._nth(recur_val,(1));\nvar G__52470 \x3d cljs.core._nth(recur_val,(2));\nvar G__52471 \x3d cljs.core._nth(recur_val,(3));\nG__50618 \x3d G__52468;\nG__50619 \x3d G__52469;\nG__50620 \x3d G__52470;\nG__50621 \x3d G__52471;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50630 \x3d cljs.core._nth(params,(0));\nvar G__50631 \x3d cljs.core._nth(params,(1));\nvar G__50632 \x3d cljs.core._nth(params,(2));\nvar G__50633 \x3d cljs.core._nth(params,(3));\nreturn (function sci$impl$fns$fun_$_arity_4(G__50626,G__50627,G__50628,G__50629){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((4),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50630,G__50626);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50631,G__50627);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50632,G__50628);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50633,G__50629);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$4);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52474 \x3d cljs.core._nth(recur_val,(0));\nvar G__52475 \x3d cljs.core._nth(recur_val,(1));\nvar G__52476 \x3d cljs.core._nth(recur_val,(2));\nvar G__52477 \x3d cljs.core._nth(recur_val,(3));\nG__50626 \x3d G__52474;\nG__50627 \x3d G__52475;\nG__50628 \x3d G__52476;\nG__50629 \x3d G__52477;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (5):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50648 \x3d cljs.core._nth(params,(0));\nvar G__50649 \x3d cljs.core._nth(params,(1));\nvar G__50650 \x3d cljs.core._nth(params,(2));\nvar G__50651 \x3d cljs.core._nth(params,(3));\nvar G__50652 \x3d cljs.core._nth(params,(4));\nreturn (function sci$impl$fns$fun_$_arity_5(G__50643,G__50644,G__50645,G__50646,G__50647){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50648,G__50643);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50649,G__50644);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50650,G__50645);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50651,G__50646);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50652,G__50647);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$5);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52484 \x3d cljs.core._nth(recur_val,(0));\nvar G__52485 \x3d cljs.core._nth(recur_val,(1));\nvar G__52486 \x3d cljs.core._nth(recur_val,(2));\nvar G__52487 \x3d cljs.core._nth(recur_val,(3));\nvar G__52488 \x3d cljs.core._nth(recur_val,(4));\nG__50643 \x3d G__52484;\nG__50644 \x3d G__52485;\nG__50645 \x3d G__52486;\nG__50646 \x3d G__52487;\nG__50647 \x3d G__52488;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50663 \x3d cljs.core._nth(params,(0));\nvar G__50664 \x3d cljs.core._nth(params,(1));\nvar G__50665 \x3d cljs.core._nth(params,(2));\nvar G__50666 \x3d cljs.core._nth(params,(3));\nvar G__50667 \x3d cljs.core._nth(params,(4));\nreturn (function sci$impl$fns$fun_$_arity_5(G__50658,G__50659,G__50660,G__50661,G__50662){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((5),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50663,G__50658);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50664,G__50659);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50665,G__50660);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50666,G__50661);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50667,G__50662);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$5);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52500 \x3d cljs.core._nth(recur_val,(0));\nvar G__52501 \x3d cljs.core._nth(recur_val,(1));\nvar G__52502 \x3d cljs.core._nth(recur_val,(2));\nvar G__52503 \x3d cljs.core._nth(recur_val,(3));\nvar G__52504 \x3d cljs.core._nth(recur_val,(4));\nG__50658 \x3d G__52500;\nG__50659 \x3d G__52501;\nG__50660 \x3d G__52502;\nG__50661 \x3d G__52503;\nG__50662 \x3d G__52504;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (6):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50689 \x3d cljs.core._nth(params,(0));\nvar G__50690 \x3d cljs.core._nth(params,(1));\nvar G__50691 \x3d cljs.core._nth(params,(2));\nvar G__50692 \x3d cljs.core._nth(params,(3));\nvar G__50693 \x3d cljs.core._nth(params,(4));\nvar G__50694 \x3d cljs.core._nth(params,(5));\nreturn (function sci$impl$fns$fun_$_arity_6(G__50683,G__50684,G__50685,G__50686,G__50687,G__50688){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50689,G__50683);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50690,G__50684);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50691,G__50685);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50692,G__50686);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50693,G__50687);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50694,G__50688);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$6);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52516 \x3d cljs.core._nth(recur_val,(0));\nvar G__52517 \x3d cljs.core._nth(recur_val,(1));\nvar G__52518 \x3d cljs.core._nth(recur_val,(2));\nvar G__52519 \x3d cljs.core._nth(recur_val,(3));\nvar G__52520 \x3d cljs.core._nth(recur_val,(4));\nvar G__52521 \x3d cljs.core._nth(recur_val,(5));\nG__50683 \x3d G__52516;\nG__50684 \x3d G__52517;\nG__50685 \x3d G__52518;\nG__50686 \x3d G__52519;\nG__50687 \x3d G__52520;\nG__50688 \x3d G__52521;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50701 \x3d cljs.core._nth(params,(0));\nvar G__50702 \x3d cljs.core._nth(params,(1));\nvar G__50703 \x3d cljs.core._nth(params,(2));\nvar G__50704 \x3d cljs.core._nth(params,(3));\nvar G__50705 \x3d cljs.core._nth(params,(4));\nvar G__50706 \x3d cljs.core._nth(params,(5));\nreturn (function sci$impl$fns$fun_$_arity_6(G__50695,G__50696,G__50697,G__50698,G__50699,G__50700){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((6),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50701,G__50695);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50702,G__50696);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50703,G__50697);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50704,G__50698);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50705,G__50699);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50706,G__50700);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$6);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52531 \x3d cljs.core._nth(recur_val,(0));\nvar G__52532 \x3d cljs.core._nth(recur_val,(1));\nvar G__52533 \x3d cljs.core._nth(recur_val,(2));\nvar G__52534 \x3d cljs.core._nth(recur_val,(3));\nvar G__52535 \x3d cljs.core._nth(recur_val,(4));\nvar G__52536 \x3d cljs.core._nth(recur_val,(5));\nG__50695 \x3d G__52531;\nG__50696 \x3d G__52532;\nG__50697 \x3d G__52533;\nG__50698 \x3d G__52534;\nG__50699 \x3d G__52535;\nG__50700 \x3d G__52536;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (7):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50728 \x3d cljs.core._nth(params,(0));\nvar G__50729 \x3d cljs.core._nth(params,(1));\nvar G__50730 \x3d cljs.core._nth(params,(2));\nvar G__50731 \x3d cljs.core._nth(params,(3));\nvar G__50732 \x3d cljs.core._nth(params,(4));\nvar G__50733 \x3d cljs.core._nth(params,(5));\nvar G__50734 \x3d cljs.core._nth(params,(6));\nreturn (function sci$impl$fns$fun_$_arity_7(G__50721,G__50722,G__50723,G__50724,G__50725,G__50726,G__50727){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50728,G__50721);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50729,G__50722);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50730,G__50723);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50731,G__50724);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50732,G__50725);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50733,G__50726);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50734,G__50727);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$7);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52546 \x3d cljs.core._nth(recur_val,(0));\nvar G__52547 \x3d cljs.core._nth(recur_val,(1));\nvar G__52548 \x3d cljs.core._nth(recur_val,(2));\nvar G__52549 \x3d cljs.core._nth(recur_val,(3));\nvar G__52550 \x3d cljs.core._nth(recur_val,(4));\nvar G__52551 \x3d cljs.core._nth(recur_val,(5));\nvar G__52552 \x3d cljs.core._nth(recur_val,(6));\nG__50721 \x3d G__52546;\nG__50722 \x3d G__52547;\nG__50723 \x3d G__52548;\nG__50724 \x3d G__52549;\nG__50725 \x3d G__52550;\nG__50726 \x3d G__52551;\nG__50727 \x3d G__52552;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50746 \x3d cljs.core._nth(params,(0));\nvar G__50747 \x3d cljs.core._nth(params,(1));\nvar G__50748 \x3d cljs.core._nth(params,(2));\nvar G__50749 \x3d cljs.core._nth(params,(3));\nvar G__50750 \x3d cljs.core._nth(params,(4));\nvar G__50751 \x3d cljs.core._nth(params,(5));\nvar G__50752 \x3d cljs.core._nth(params,(6));\nreturn (function sci$impl$fns$fun_$_arity_7(G__50739,G__50740,G__50741,G__50742,G__50743,G__50744,G__50745){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((7),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50746,G__50739);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50747,G__50740);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50748,G__50741);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50749,G__50742);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50750,G__50743);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50751,G__50744);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50752,G__50745);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$7);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52563 \x3d cljs.core._nth(recur_val,(0));\nvar G__52564 \x3d cljs.core._nth(recur_val,(1));\nvar G__52565 \x3d cljs.core._nth(recur_val,(2));\nvar G__52566 \x3d cljs.core._nth(recur_val,(3));\nvar G__52567 \x3d cljs.core._nth(recur_val,(4));\nvar G__52568 \x3d cljs.core._nth(recur_val,(5));\nvar G__52569 \x3d cljs.core._nth(recur_val,(6));\nG__50739 \x3d G__52563;\nG__50740 \x3d G__52564;\nG__50741 \x3d G__52565;\nG__50742 \x3d G__52566;\nG__50743 \x3d G__52567;\nG__50744 \x3d G__52568;\nG__50745 \x3d G__52569;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (8):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50769 \x3d cljs.core._nth(params,(0));\nvar G__50770 \x3d cljs.core._nth(params,(1));\nvar G__50771 \x3d cljs.core._nth(params,(2));\nvar G__50772 \x3d cljs.core._nth(params,(3));\nvar G__50773 \x3d cljs.core._nth(params,(4));\nvar G__50774 \x3d cljs.core._nth(params,(5));\nvar G__50775 \x3d cljs.core._nth(params,(6));\nvar G__50776 \x3d cljs.core._nth(params,(7));\nreturn (function sci$impl$fns$fun_$_arity_8(G__50761,G__50762,G__50763,G__50764,G__50765,G__50766,G__50767,G__50768){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50769,G__50761);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50770,G__50762);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50771,G__50763);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50772,G__50764);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50773,G__50765);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50774,G__50766);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50775,G__50767);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50776,G__50768);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$8);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52584 \x3d cljs.core._nth(recur_val,(0));\nvar G__52585 \x3d cljs.core._nth(recur_val,(1));\nvar G__52586 \x3d cljs.core._nth(recur_val,(2));\nvar G__52587 \x3d cljs.core._nth(recur_val,(3));\nvar G__52588 \x3d cljs.core._nth(recur_val,(4));\nvar G__52589 \x3d cljs.core._nth(recur_val,(5));\nvar G__52590 \x3d cljs.core._nth(recur_val,(6));\nvar G__52591 \x3d cljs.core._nth(recur_val,(7));\nG__50761 \x3d G__52584;\nG__50762 \x3d G__52585;\nG__50763 \x3d G__52586;\nG__50764 \x3d G__52587;\nG__50765 \x3d G__52588;\nG__50766 \x3d G__52589;\nG__50767 \x3d G__52590;\nG__50768 \x3d G__52591;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50799 \x3d cljs.core._nth(params,(0));\nvar G__50800 \x3d cljs.core._nth(params,(1));\nvar G__50801 \x3d cljs.core._nth(params,(2));\nvar G__50802 \x3d cljs.core._nth(params,(3));\nvar G__50803 \x3d cljs.core._nth(params,(4));\nvar G__50804 \x3d cljs.core._nth(params,(5));\nvar G__50805 \x3d cljs.core._nth(params,(6));\nvar G__50806 \x3d cljs.core._nth(params,(7));\nreturn (function sci$impl$fns$fun_$_arity_8(G__50791,G__50792,G__50793,G__50794,G__50795,G__50796,G__50797,G__50798){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((8),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50799,G__50791);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50800,G__50792);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50801,G__50793);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50802,G__50794);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50803,G__50795);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50804,G__50796);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50805,G__50797);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50806,G__50798);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$8);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52600 \x3d cljs.core._nth(recur_val,(0));\nvar G__52601 \x3d cljs.core._nth(recur_val,(1));\nvar G__52602 \x3d cljs.core._nth(recur_val,(2));\nvar G__52603 \x3d cljs.core._nth(recur_val,(3));\nvar G__52604 \x3d cljs.core._nth(recur_val,(4));\nvar G__52605 \x3d cljs.core._nth(recur_val,(5));\nvar G__52606 \x3d cljs.core._nth(recur_val,(6));\nvar G__52607 \x3d cljs.core._nth(recur_val,(7));\nG__50791 \x3d G__52600;\nG__50792 \x3d G__52601;\nG__50793 \x3d G__52602;\nG__50794 \x3d G__52603;\nG__50795 \x3d G__52604;\nG__50796 \x3d G__52605;\nG__50797 \x3d G__52606;\nG__50798 \x3d G__52607;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (9):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50837 \x3d cljs.core._nth(params,(0));\nvar G__50838 \x3d cljs.core._nth(params,(1));\nvar G__50839 \x3d cljs.core._nth(params,(2));\nvar G__50840 \x3d cljs.core._nth(params,(3));\nvar G__50841 \x3d cljs.core._nth(params,(4));\nvar G__50842 \x3d cljs.core._nth(params,(5));\nvar G__50843 \x3d cljs.core._nth(params,(6));\nvar G__50844 \x3d cljs.core._nth(params,(7));\nvar G__50845 \x3d cljs.core._nth(params,(8));\nreturn (function sci$impl$fns$fun_$_arity_9(G__50828,G__50829,G__50830,G__50831,G__50832,G__50833,G__50834,G__50835,G__50836){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50837,G__50828);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50838,G__50829);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50839,G__50830);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50840,G__50831);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50841,G__50832);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50842,G__50833);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50843,G__50834);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50844,G__50835);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__50845,G__50836);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$9);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52638 \x3d cljs.core._nth(recur_val,(0));\nvar G__52639 \x3d cljs.core._nth(recur_val,(1));\nvar G__52640 \x3d cljs.core._nth(recur_val,(2));\nvar G__52641 \x3d cljs.core._nth(recur_val,(3));\nvar G__52642 \x3d cljs.core._nth(recur_val,(4));\nvar G__52643 \x3d cljs.core._nth(recur_val,(5));\nvar G__52644 \x3d cljs.core._nth(recur_val,(6));\nvar G__52645 \x3d cljs.core._nth(recur_val,(7));\nvar G__52646 \x3d cljs.core._nth(recur_val,(8));\nG__50828 \x3d G__52638;\nG__50829 \x3d G__52639;\nG__50830 \x3d G__52640;\nG__50831 \x3d G__52641;\nG__50832 \x3d G__52642;\nG__50833 \x3d G__52643;\nG__50834 \x3d G__52644;\nG__50835 \x3d G__52645;\nG__50836 \x3d G__52646;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50861 \x3d cljs.core._nth(params,(0));\nvar G__50865 \x3d cljs.core._nth(params,(1));\nvar G__50866 \x3d cljs.core._nth(params,(2));\nvar G__50867 \x3d cljs.core._nth(params,(3));\nvar G__50868 \x3d cljs.core._nth(params,(4));\nvar G__50869 \x3d cljs.core._nth(params,(5));\nvar G__50870 \x3d cljs.core._nth(params,(6));\nvar G__50871 \x3d cljs.core._nth(params,(7));\nvar G__50872 \x3d cljs.core._nth(params,(8));\nreturn (function sci$impl$fns$fun_$_arity_9(G__50852,G__50853,G__50854,G__50855,G__50856,G__50857,G__50858,G__50859,G__50860){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((9),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50861,G__50852);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50865,G__50853);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50866,G__50854);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50867,G__50855);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50868,G__50856);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50869,G__50857);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50870,G__50858);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50871,G__50859);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__50872,G__50860);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$9);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52742 \x3d cljs.core._nth(recur_val,(0));\nvar G__52743 \x3d cljs.core._nth(recur_val,(1));\nvar G__52744 \x3d cljs.core._nth(recur_val,(2));\nvar G__52745 \x3d cljs.core._nth(recur_val,(3));\nvar G__52746 \x3d cljs.core._nth(recur_val,(4));\nvar G__52747 \x3d cljs.core._nth(recur_val,(5));\nvar G__52748 \x3d cljs.core._nth(recur_val,(6));\nvar G__52749 \x3d cljs.core._nth(recur_val,(7));\nvar G__52750 \x3d cljs.core._nth(recur_val,(8));\nG__50852 \x3d G__52742;\nG__50853 \x3d G__52743;\nG__50854 \x3d G__52744;\nG__50855 \x3d G__52745;\nG__50856 \x3d G__52746;\nG__50857 \x3d G__52747;\nG__50858 \x3d G__52748;\nG__50859 \x3d G__52749;\nG__50860 \x3d G__52750;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (10):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50890 \x3d cljs.core._nth(params,(0));\nvar G__50891 \x3d cljs.core._nth(params,(1));\nvar G__50892 \x3d cljs.core._nth(params,(2));\nvar G__50893 \x3d cljs.core._nth(params,(3));\nvar G__50894 \x3d cljs.core._nth(params,(4));\nvar G__50895 \x3d cljs.core._nth(params,(5));\nvar G__50896 \x3d cljs.core._nth(params,(6));\nvar G__50897 \x3d cljs.core._nth(params,(7));\nvar G__50898 \x3d cljs.core._nth(params,(8));\nvar G__50899 \x3d cljs.core._nth(params,(9));\nreturn (function sci$impl$fns$fun_$_arity_10(G__50880,G__50881,G__50882,G__50883,G__50884,G__50885,G__50886,G__50887,G__50888,G__50889){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50890,G__50880);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50891,G__50881);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50892,G__50882);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50893,G__50883);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50894,G__50884);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50895,G__50885);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50896,G__50886);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50897,G__50887);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__50898,G__50888);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__50899,G__50889);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$10);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52798 \x3d cljs.core._nth(recur_val,(0));\nvar G__52799 \x3d cljs.core._nth(recur_val,(1));\nvar G__52800 \x3d cljs.core._nth(recur_val,(2));\nvar G__52801 \x3d cljs.core._nth(recur_val,(3));\nvar G__52802 \x3d cljs.core._nth(recur_val,(4));\nvar G__52803 \x3d cljs.core._nth(recur_val,(5));\nvar G__52804 \x3d cljs.core._nth(recur_val,(6));\nvar G__52805 \x3d cljs.core._nth(recur_val,(7));\nvar G__52806 \x3d cljs.core._nth(recur_val,(8));\nvar G__52807 \x3d cljs.core._nth(recur_val,(9));\nG__50880 \x3d G__52798;\nG__50881 \x3d G__52799;\nG__50882 \x3d G__52800;\nG__50883 \x3d G__52801;\nG__50884 \x3d G__52802;\nG__50885 \x3d G__52803;\nG__50886 \x3d G__52804;\nG__50887 \x3d G__52805;\nG__50888 \x3d G__52806;\nG__50889 \x3d G__52807;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__50927 \x3d cljs.core._nth(params,(0));\nvar G__50929 \x3d cljs.core._nth(params,(1));\nvar G__50931 \x3d cljs.core._nth(params,(2));\nvar G__50932 \x3d cljs.core._nth(params,(3));\nvar G__50933 \x3d cljs.core._nth(params,(4));\nvar G__50934 \x3d cljs.core._nth(params,(5));\nvar G__50935 \x3d cljs.core._nth(params,(6));\nvar G__50936 \x3d cljs.core._nth(params,(7));\nvar G__50937 \x3d cljs.core._nth(params,(8));\nvar G__50938 \x3d cljs.core._nth(params,(9));\nreturn (function sci$impl$fns$fun_$_arity_10(G__50917,G__50918,G__50919,G__50920,G__50921,G__50922,G__50923,G__50924,G__50925,G__50926){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((10),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50927,G__50917);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50929,G__50918);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50931,G__50919);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50932,G__50920);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50933,G__50921);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50934,G__50922);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50935,G__50923);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50936,G__50924);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__50937,G__50925);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__50938,G__50926);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$10);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52839 \x3d cljs.core._nth(recur_val,(0));\nvar G__52840 \x3d cljs.core._nth(recur_val,(1));\nvar G__52841 \x3d cljs.core._nth(recur_val,(2));\nvar G__52842 \x3d cljs.core._nth(recur_val,(3));\nvar G__52843 \x3d cljs.core._nth(recur_val,(4));\nvar G__52844 \x3d cljs.core._nth(recur_val,(5));\nvar G__52845 \x3d cljs.core._nth(recur_val,(6));\nvar G__52846 \x3d cljs.core._nth(recur_val,(7));\nvar G__52847 \x3d cljs.core._nth(recur_val,(8));\nvar G__52848 \x3d cljs.core._nth(recur_val,(9));\nG__50917 \x3d G__52839;\nG__50918 \x3d G__52840;\nG__50919 \x3d G__52841;\nG__50920 \x3d G__52842;\nG__50921 \x3d G__52843;\nG__50922 \x3d G__52844;\nG__50923 \x3d G__52845;\nG__50924 \x3d G__52846;\nG__50925 \x3d G__52847;\nG__50926 \x3d G__52848;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (11):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__50991 \x3d cljs.core._nth(params,(0));\nvar G__50992 \x3d cljs.core._nth(params,(1));\nvar G__50993 \x3d cljs.core._nth(params,(2));\nvar G__50994 \x3d cljs.core._nth(params,(3));\nvar G__50995 \x3d cljs.core._nth(params,(4));\nvar G__50996 \x3d cljs.core._nth(params,(5));\nvar G__50997 \x3d cljs.core._nth(params,(6));\nvar G__50998 \x3d cljs.core._nth(params,(7));\nvar G__50999 \x3d cljs.core._nth(params,(8));\nvar G__51000 \x3d cljs.core._nth(params,(9));\nvar G__51001 \x3d cljs.core._nth(params,(10));\nreturn (function sci$impl$fns$fun_$_arity_11(G__50980,G__50981,G__50982,G__50983,G__50984,G__50985,G__50986,G__50987,G__50988,G__50989,G__50990){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__50991,G__50980);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__50992,G__50981);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__50993,G__50982);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__50994,G__50983);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__50995,G__50984);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__50996,G__50985);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__50997,G__50986);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__50998,G__50987);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__50999,G__50988);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51000,G__50989);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51001,G__50990);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$11);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52860 \x3d cljs.core._nth(recur_val,(0));\nvar G__52861 \x3d cljs.core._nth(recur_val,(1));\nvar G__52862 \x3d cljs.core._nth(recur_val,(2));\nvar G__52863 \x3d cljs.core._nth(recur_val,(3));\nvar G__52864 \x3d cljs.core._nth(recur_val,(4));\nvar G__52865 \x3d cljs.core._nth(recur_val,(5));\nvar G__52866 \x3d cljs.core._nth(recur_val,(6));\nvar G__52867 \x3d cljs.core._nth(recur_val,(7));\nvar G__52868 \x3d cljs.core._nth(recur_val,(8));\nvar G__52869 \x3d cljs.core._nth(recur_val,(9));\nvar G__52870 \x3d cljs.core._nth(recur_val,(10));\nG__50980 \x3d G__52860;\nG__50981 \x3d G__52861;\nG__50982 \x3d G__52862;\nG__50983 \x3d G__52863;\nG__50984 \x3d G__52864;\nG__50985 \x3d G__52865;\nG__50986 \x3d G__52866;\nG__50987 \x3d G__52867;\nG__50988 \x3d G__52868;\nG__50989 \x3d G__52869;\nG__50990 \x3d G__52870;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51034 \x3d cljs.core._nth(params,(0));\nvar G__51035 \x3d cljs.core._nth(params,(1));\nvar G__51036 \x3d cljs.core._nth(params,(2));\nvar G__51037 \x3d cljs.core._nth(params,(3));\nvar G__51038 \x3d cljs.core._nth(params,(4));\nvar G__51039 \x3d cljs.core._nth(params,(5));\nvar G__51040 \x3d cljs.core._nth(params,(6));\nvar G__51041 \x3d cljs.core._nth(params,(7));\nvar G__51042 \x3d cljs.core._nth(params,(8));\nvar G__51043 \x3d cljs.core._nth(params,(9));\nvar G__51044 \x3d cljs.core._nth(params,(10));\nreturn (function sci$impl$fns$fun_$_arity_11(G__51023,G__51024,G__51025,G__51026,G__51027,G__51028,G__51029,G__51030,G__51031,G__51032,G__51033){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((11),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51034,G__51023);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51035,G__51024);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51036,G__51025);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51037,G__51026);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51038,G__51027);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51039,G__51028);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51040,G__51029);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51041,G__51030);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51042,G__51031);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51043,G__51032);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51044,G__51033);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$11);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52901 \x3d cljs.core._nth(recur_val,(0));\nvar G__52902 \x3d cljs.core._nth(recur_val,(1));\nvar G__52903 \x3d cljs.core._nth(recur_val,(2));\nvar G__52904 \x3d cljs.core._nth(recur_val,(3));\nvar G__52905 \x3d cljs.core._nth(recur_val,(4));\nvar G__52906 \x3d cljs.core._nth(recur_val,(5));\nvar G__52907 \x3d cljs.core._nth(recur_val,(6));\nvar G__52908 \x3d cljs.core._nth(recur_val,(7));\nvar G__52909 \x3d cljs.core._nth(recur_val,(8));\nvar G__52910 \x3d cljs.core._nth(recur_val,(9));\nvar G__52911 \x3d cljs.core._nth(recur_val,(10));\nG__51023 \x3d G__52901;\nG__51024 \x3d G__52902;\nG__51025 \x3d G__52903;\nG__51026 \x3d G__52904;\nG__51027 \x3d G__52905;\nG__51028 \x3d G__52906;\nG__51029 \x3d G__52907;\nG__51030 \x3d G__52908;\nG__51031 \x3d G__52909;\nG__51032 \x3d G__52910;\nG__51033 \x3d G__52911;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (12):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51133 \x3d cljs.core._nth(params,(0));\nvar G__51134 \x3d cljs.core._nth(params,(1));\nvar G__51135 \x3d cljs.core._nth(params,(2));\nvar G__51136 \x3d cljs.core._nth(params,(3));\nvar G__51137 \x3d cljs.core._nth(params,(4));\nvar G__51138 \x3d cljs.core._nth(params,(5));\nvar G__51139 \x3d cljs.core._nth(params,(6));\nvar G__51140 \x3d cljs.core._nth(params,(7));\nvar G__51141 \x3d cljs.core._nth(params,(8));\nvar G__51142 \x3d cljs.core._nth(params,(9));\nvar G__51143 \x3d cljs.core._nth(params,(10));\nvar G__51144 \x3d cljs.core._nth(params,(11));\nreturn (function sci$impl$fns$fun_$_arity_12(G__51121,G__51122,G__51123,G__51124,G__51125,G__51126,G__51127,G__51128,G__51129,G__51130,G__51131,G__51132){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51133,G__51121);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51134,G__51122);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51135,G__51123);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51136,G__51124);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51137,G__51125);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51138,G__51126);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51139,G__51127);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51140,G__51128);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51141,G__51129);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51142,G__51130);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51143,G__51131);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51144,G__51132);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$12);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__52962 \x3d cljs.core._nth(recur_val,(0));\nvar G__52963 \x3d cljs.core._nth(recur_val,(1));\nvar G__52964 \x3d cljs.core._nth(recur_val,(2));\nvar G__52965 \x3d cljs.core._nth(recur_val,(3));\nvar G__52966 \x3d cljs.core._nth(recur_val,(4));\nvar G__52967 \x3d cljs.core._nth(recur_val,(5));\nvar G__52968 \x3d cljs.core._nth(recur_val,(6));\nvar G__52969 \x3d cljs.core._nth(recur_val,(7));\nvar G__52970 \x3d cljs.core._nth(recur_val,(8));\nvar G__52971 \x3d cljs.core._nth(recur_val,(9));\nvar G__52972 \x3d cljs.core._nth(recur_val,(10));\nvar G__52973 \x3d cljs.core._nth(recur_val,(11));\nG__51121 \x3d G__52962;\nG__51122 \x3d G__52963;\nG__51123 \x3d G__52964;\nG__51124 \x3d G__52965;\nG__51125 \x3d G__52966;\nG__51126 \x3d G__52967;\nG__51127 \x3d G__52968;\nG__51128 \x3d G__52969;\nG__51129 \x3d G__52970;\nG__51130 \x3d G__52971;\nG__51131 \x3d G__52972;\nG__51132 \x3d G__52973;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51207 \x3d cljs.core._nth(params,(0));\nvar G__51208 \x3d cljs.core._nth(params,(1));\nvar G__51209 \x3d cljs.core._nth(params,(2));\nvar G__51210 \x3d cljs.core._nth(params,(3));\nvar G__51212 \x3d cljs.core._nth(params,(4));\nvar G__51213 \x3d cljs.core._nth(params,(5));\nvar G__51214 \x3d cljs.core._nth(params,(6));\nvar G__51215 \x3d cljs.core._nth(params,(7));\nvar G__51216 \x3d cljs.core._nth(params,(8));\nvar G__51217 \x3d cljs.core._nth(params,(9));\nvar G__51218 \x3d cljs.core._nth(params,(10));\nvar G__51219 \x3d cljs.core._nth(params,(11));\nreturn (function sci$impl$fns$fun_$_arity_12(G__51195,G__51196,G__51197,G__51198,G__51199,G__51200,G__51201,G__51202,G__51203,G__51204,G__51205,G__51206){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((12),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51207,G__51195);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51208,G__51196);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51209,G__51197);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51210,G__51198);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51212,G__51199);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51213,G__51200);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51214,G__51201);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51215,G__51202);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51216,G__51203);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51217,G__51204);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51218,G__51205);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51219,G__51206);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$12);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53022 \x3d cljs.core._nth(recur_val,(0));\nvar G__53023 \x3d cljs.core._nth(recur_val,(1));\nvar G__53024 \x3d cljs.core._nth(recur_val,(2));\nvar G__53025 \x3d cljs.core._nth(recur_val,(3));\nvar G__53026 \x3d cljs.core._nth(recur_val,(4));\nvar G__53027 \x3d cljs.core._nth(recur_val,(5));\nvar G__53028 \x3d cljs.core._nth(recur_val,(6));\nvar G__53029 \x3d cljs.core._nth(recur_val,(7));\nvar G__53030 \x3d cljs.core._nth(recur_val,(8));\nvar G__53031 \x3d cljs.core._nth(recur_val,(9));\nvar G__53032 \x3d cljs.core._nth(recur_val,(10));\nvar G__53033 \x3d cljs.core._nth(recur_val,(11));\nG__51195 \x3d G__53022;\nG__51196 \x3d G__53023;\nG__51197 \x3d G__53024;\nG__51198 \x3d G__53025;\nG__51199 \x3d G__53026;\nG__51200 \x3d G__53027;\nG__51201 \x3d G__53028;\nG__51202 \x3d G__53029;\nG__51203 \x3d G__53030;\nG__51204 \x3d G__53031;\nG__51205 \x3d G__53032;\nG__51206 \x3d G__53033;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (13):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51255 \x3d cljs.core._nth(params,(0));\nvar G__51256 \x3d cljs.core._nth(params,(1));\nvar G__51257 \x3d cljs.core._nth(params,(2));\nvar G__51258 \x3d cljs.core._nth(params,(3));\nvar G__51259 \x3d cljs.core._nth(params,(4));\nvar G__51260 \x3d cljs.core._nth(params,(5));\nvar G__51261 \x3d cljs.core._nth(params,(6));\nvar G__51262 \x3d cljs.core._nth(params,(7));\nvar G__51263 \x3d cljs.core._nth(params,(8));\nvar G__51264 \x3d cljs.core._nth(params,(9));\nvar G__51265 \x3d cljs.core._nth(params,(10));\nvar G__51266 \x3d cljs.core._nth(params,(11));\nvar G__51267 \x3d cljs.core._nth(params,(12));\nreturn (function sci$impl$fns$fun_$_arity_13(G__51242,G__51243,G__51244,G__51245,G__51246,G__51247,G__51248,G__51249,G__51250,G__51251,G__51252,G__51253,G__51254){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51255,G__51242);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51256,G__51243);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51257,G__51244);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51258,G__51245);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51259,G__51246);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51260,G__51247);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51261,G__51248);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51262,G__51249);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51263,G__51250);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51264,G__51251);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51265,G__51252);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51266,G__51253);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51267,G__51254);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$13);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53062 \x3d cljs.core._nth(recur_val,(0));\nvar G__53063 \x3d cljs.core._nth(recur_val,(1));\nvar G__53064 \x3d cljs.core._nth(recur_val,(2));\nvar G__53065 \x3d cljs.core._nth(recur_val,(3));\nvar G__53066 \x3d cljs.core._nth(recur_val,(4));\nvar G__53067 \x3d cljs.core._nth(recur_val,(5));\nvar G__53068 \x3d cljs.core._nth(recur_val,(6));\nvar G__53069 \x3d cljs.core._nth(recur_val,(7));\nvar G__53070 \x3d cljs.core._nth(recur_val,(8));\nvar G__53071 \x3d cljs.core._nth(recur_val,(9));\nvar G__53072 \x3d cljs.core._nth(recur_val,(10));\nvar G__53073 \x3d cljs.core._nth(recur_val,(11));\nvar G__53074 \x3d cljs.core._nth(recur_val,(12));\nG__51242 \x3d G__53062;\nG__51243 \x3d G__53063;\nG__51244 \x3d G__53064;\nG__51245 \x3d G__53065;\nG__51246 \x3d G__53066;\nG__51247 \x3d G__53067;\nG__51248 \x3d G__53068;\nG__51249 \x3d G__53069;\nG__51250 \x3d G__53070;\nG__51251 \x3d G__53071;\nG__51252 \x3d G__53072;\nG__51253 \x3d G__53073;\nG__51254 \x3d G__53074;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51306 \x3d cljs.core._nth(params,(0));\nvar G__51307 \x3d cljs.core._nth(params,(1));\nvar G__51308 \x3d cljs.core._nth(params,(2));\nvar G__51309 \x3d cljs.core._nth(params,(3));\nvar G__51310 \x3d cljs.core._nth(params,(4));\nvar G__51311 \x3d cljs.core._nth(params,(5));\nvar G__51312 \x3d cljs.core._nth(params,(6));\nvar G__51313 \x3d cljs.core._nth(params,(7));\nvar G__51314 \x3d cljs.core._nth(params,(8));\nvar G__51315 \x3d cljs.core._nth(params,(9));\nvar G__51316 \x3d cljs.core._nth(params,(10));\nvar G__51317 \x3d cljs.core._nth(params,(11));\nvar G__51318 \x3d cljs.core._nth(params,(12));\nreturn (function sci$impl$fns$fun_$_arity_13(G__51293,G__51294,G__51295,G__51296,G__51297,G__51298,G__51299,G__51300,G__51301,G__51302,G__51303,G__51304,G__51305){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((13),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51306,G__51293);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51307,G__51294);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51308,G__51295);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51309,G__51296);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51310,G__51297);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51311,G__51298);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51312,G__51299);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51313,G__51300);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51314,G__51301);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51315,G__51302);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51316,G__51303);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51317,G__51304);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51318,G__51305);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$13);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53090 \x3d cljs.core._nth(recur_val,(0));\nvar G__53091 \x3d cljs.core._nth(recur_val,(1));\nvar G__53092 \x3d cljs.core._nth(recur_val,(2));\nvar G__53093 \x3d cljs.core._nth(recur_val,(3));\nvar G__53094 \x3d cljs.core._nth(recur_val,(4));\nvar G__53095 \x3d cljs.core._nth(recur_val,(5));\nvar G__53096 \x3d cljs.core._nth(recur_val,(6));\nvar G__53097 \x3d cljs.core._nth(recur_val,(7));\nvar G__53098 \x3d cljs.core._nth(recur_val,(8));\nvar G__53099 \x3d cljs.core._nth(recur_val,(9));\nvar G__53100 \x3d cljs.core._nth(recur_val,(10));\nvar G__53101 \x3d cljs.core._nth(recur_val,(11));\nvar G__53102 \x3d cljs.core._nth(recur_val,(12));\nG__51293 \x3d G__53090;\nG__51294 \x3d G__53091;\nG__51295 \x3d G__53092;\nG__51296 \x3d G__53093;\nG__51297 \x3d G__53094;\nG__51298 \x3d G__53095;\nG__51299 \x3d G__53096;\nG__51300 \x3d G__53097;\nG__51301 \x3d G__53098;\nG__51302 \x3d G__53099;\nG__51303 \x3d G__53100;\nG__51304 \x3d G__53101;\nG__51305 \x3d G__53102;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (14):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51400 \x3d cljs.core._nth(params,(0));\nvar G__51401 \x3d cljs.core._nth(params,(1));\nvar G__51402 \x3d cljs.core._nth(params,(2));\nvar G__51403 \x3d cljs.core._nth(params,(3));\nvar G__51404 \x3d cljs.core._nth(params,(4));\nvar G__51405 \x3d cljs.core._nth(params,(5));\nvar G__51406 \x3d cljs.core._nth(params,(6));\nvar G__51407 \x3d cljs.core._nth(params,(7));\nvar G__51408 \x3d cljs.core._nth(params,(8));\nvar G__51409 \x3d cljs.core._nth(params,(9));\nvar G__51410 \x3d cljs.core._nth(params,(10));\nvar G__51411 \x3d cljs.core._nth(params,(11));\nvar G__51412 \x3d cljs.core._nth(params,(12));\nvar G__51413 \x3d cljs.core._nth(params,(13));\nvar G__51414 \x3d cljs.core._nth(params,(14));\nreturn (function sci$impl$fns$fun_$_arity_15(G__51376,G__51377,G__51378,G__51379,G__51380,G__51381,G__51382,G__51383,G__51384,G__51385,G__51386,G__51387,G__51388,G__51389,G__51390){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51400,G__51376);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51401,G__51377);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51402,G__51378);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51403,G__51379);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51404,G__51380);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51405,G__51381);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51406,G__51382);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51407,G__51383);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51408,G__51384);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51409,G__51385);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51410,G__51386);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51411,G__51387);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51412,G__51388);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51413,G__51389);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51414,G__51390);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$15);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53122 \x3d cljs.core._nth(recur_val,(0));\nvar G__53123 \x3d cljs.core._nth(recur_val,(1));\nvar G__53124 \x3d cljs.core._nth(recur_val,(2));\nvar G__53125 \x3d cljs.core._nth(recur_val,(3));\nvar G__53126 \x3d cljs.core._nth(recur_val,(4));\nvar G__53127 \x3d cljs.core._nth(recur_val,(5));\nvar G__53128 \x3d cljs.core._nth(recur_val,(6));\nvar G__53129 \x3d cljs.core._nth(recur_val,(7));\nvar G__53130 \x3d cljs.core._nth(recur_val,(8));\nvar G__53131 \x3d cljs.core._nth(recur_val,(9));\nvar G__53132 \x3d cljs.core._nth(recur_val,(10));\nvar G__53133 \x3d cljs.core._nth(recur_val,(11));\nvar G__53134 \x3d cljs.core._nth(recur_val,(12));\nvar G__53135 \x3d cljs.core._nth(recur_val,(13));\nvar G__53136 \x3d cljs.core._nth(recur_val,(14));\nG__51376 \x3d G__53122;\nG__51377 \x3d G__53123;\nG__51378 \x3d G__53124;\nG__51379 \x3d G__53125;\nG__51380 \x3d G__53126;\nG__51381 \x3d G__53127;\nG__51382 \x3d G__53128;\nG__51383 \x3d G__53129;\nG__51384 \x3d G__53130;\nG__51385 \x3d G__53131;\nG__51386 \x3d G__53132;\nG__51387 \x3d G__53133;\nG__51388 \x3d G__53134;\nG__51389 \x3d G__53135;\nG__51390 \x3d G__53136;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51482 \x3d cljs.core._nth(params,(0));\nvar G__51483 \x3d cljs.core._nth(params,(1));\nvar G__51484 \x3d cljs.core._nth(params,(2));\nvar G__51485 \x3d cljs.core._nth(params,(3));\nvar G__51486 \x3d cljs.core._nth(params,(4));\nvar G__51487 \x3d cljs.core._nth(params,(5));\nvar G__51488 \x3d cljs.core._nth(params,(6));\nvar G__51489 \x3d cljs.core._nth(params,(7));\nvar G__51490 \x3d cljs.core._nth(params,(8));\nvar G__51491 \x3d cljs.core._nth(params,(9));\nvar G__51492 \x3d cljs.core._nth(params,(10));\nvar G__51493 \x3d cljs.core._nth(params,(11));\nvar G__51494 \x3d cljs.core._nth(params,(12));\nvar G__51495 \x3d cljs.core._nth(params,(13));\nvar G__51496 \x3d cljs.core._nth(params,(14));\nreturn (function sci$impl$fns$fun_$_arity_15(G__51467,G__51468,G__51469,G__51470,G__51471,G__51472,G__51473,G__51474,G__51475,G__51476,G__51477,G__51478,G__51479,G__51480,G__51481){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((15),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51482,G__51467);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51483,G__51468);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51484,G__51469);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51485,G__51470);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51486,G__51471);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51487,G__51472);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51488,G__51473);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51489,G__51474);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51490,G__51475);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51491,G__51476);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51492,G__51477);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51493,G__51478);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51494,G__51479);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51495,G__51480);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51496,G__51481);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$15);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53146 \x3d cljs.core._nth(recur_val,(0));\nvar G__53147 \x3d cljs.core._nth(recur_val,(1));\nvar G__53148 \x3d cljs.core._nth(recur_val,(2));\nvar G__53149 \x3d cljs.core._nth(recur_val,(3));\nvar G__53150 \x3d cljs.core._nth(recur_val,(4));\nvar G__53151 \x3d cljs.core._nth(recur_val,(5));\nvar G__53152 \x3d cljs.core._nth(recur_val,(6));\nvar G__53153 \x3d cljs.core._nth(recur_val,(7));\nvar G__53154 \x3d cljs.core._nth(recur_val,(8));\nvar G__53155 \x3d cljs.core._nth(recur_val,(9));\nvar G__53156 \x3d cljs.core._nth(recur_val,(10));\nvar G__53157 \x3d cljs.core._nth(recur_val,(11));\nvar G__53158 \x3d cljs.core._nth(recur_val,(12));\nvar G__53159 \x3d cljs.core._nth(recur_val,(13));\nvar G__53160 \x3d cljs.core._nth(recur_val,(14));\nG__51467 \x3d G__53146;\nG__51468 \x3d G__53147;\nG__51469 \x3d G__53148;\nG__51470 \x3d G__53149;\nG__51471 \x3d G__53150;\nG__51472 \x3d G__53151;\nG__51473 \x3d G__53152;\nG__51474 \x3d G__53153;\nG__51475 \x3d G__53154;\nG__51476 \x3d G__53155;\nG__51477 \x3d G__53156;\nG__51478 \x3d G__53157;\nG__51479 \x3d G__53158;\nG__51480 \x3d G__53159;\nG__51481 \x3d G__53160;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (15):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51539 \x3d cljs.core._nth(params,(0));\nvar G__51540 \x3d cljs.core._nth(params,(1));\nvar G__51541 \x3d cljs.core._nth(params,(2));\nvar G__51542 \x3d cljs.core._nth(params,(3));\nvar G__51543 \x3d cljs.core._nth(params,(4));\nvar G__51544 \x3d cljs.core._nth(params,(5));\nvar G__51545 \x3d cljs.core._nth(params,(6));\nvar G__51546 \x3d cljs.core._nth(params,(7));\nvar G__51547 \x3d cljs.core._nth(params,(8));\nvar G__51548 \x3d cljs.core._nth(params,(9));\nvar G__51549 \x3d cljs.core._nth(params,(10));\nvar G__51550 \x3d cljs.core._nth(params,(11));\nvar G__51551 \x3d cljs.core._nth(params,(12));\nvar G__51552 \x3d cljs.core._nth(params,(13));\nvar G__51553 \x3d cljs.core._nth(params,(14));\nreturn (function sci$impl$fns$fun_$_arity_15(G__51524,G__51525,G__51526,G__51527,G__51528,G__51529,G__51530,G__51531,G__51532,G__51533,G__51534,G__51535,G__51536,G__51537,G__51538){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51539,G__51524);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51540,G__51525);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51541,G__51526);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51542,G__51527);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51543,G__51528);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51544,G__51529);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51545,G__51530);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51546,G__51531);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51547,G__51532);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51548,G__51533);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51549,G__51534);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51550,G__51535);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51551,G__51536);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51552,G__51537);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51553,G__51538);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$15);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53171 \x3d cljs.core._nth(recur_val,(0));\nvar G__53172 \x3d cljs.core._nth(recur_val,(1));\nvar G__53173 \x3d cljs.core._nth(recur_val,(2));\nvar G__53174 \x3d cljs.core._nth(recur_val,(3));\nvar G__53175 \x3d cljs.core._nth(recur_val,(4));\nvar G__53176 \x3d cljs.core._nth(recur_val,(5));\nvar G__53177 \x3d cljs.core._nth(recur_val,(6));\nvar G__53178 \x3d cljs.core._nth(recur_val,(7));\nvar G__53179 \x3d cljs.core._nth(recur_val,(8));\nvar G__53180 \x3d cljs.core._nth(recur_val,(9));\nvar G__53181 \x3d cljs.core._nth(recur_val,(10));\nvar G__53182 \x3d cljs.core._nth(recur_val,(11));\nvar G__53183 \x3d cljs.core._nth(recur_val,(12));\nvar G__53184 \x3d cljs.core._nth(recur_val,(13));\nvar G__53185 \x3d cljs.core._nth(recur_val,(14));\nG__51524 \x3d G__53171;\nG__51525 \x3d G__53172;\nG__51526 \x3d G__53173;\nG__51527 \x3d G__53174;\nG__51528 \x3d G__53175;\nG__51529 \x3d G__53176;\nG__51530 \x3d G__53177;\nG__51531 \x3d G__53178;\nG__51532 \x3d G__53179;\nG__51533 \x3d G__53180;\nG__51534 \x3d G__53181;\nG__51535 \x3d G__53182;\nG__51536 \x3d G__53183;\nG__51537 \x3d G__53184;\nG__51538 \x3d G__53185;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51615 \x3d cljs.core._nth(params,(0));\nvar G__51616 \x3d cljs.core._nth(params,(1));\nvar G__51617 \x3d cljs.core._nth(params,(2));\nvar G__51618 \x3d cljs.core._nth(params,(3));\nvar G__51619 \x3d cljs.core._nth(params,(4));\nvar G__51620 \x3d cljs.core._nth(params,(5));\nvar G__51621 \x3d cljs.core._nth(params,(6));\nvar G__51622 \x3d cljs.core._nth(params,(7));\nvar G__51623 \x3d cljs.core._nth(params,(8));\nvar G__51624 \x3d cljs.core._nth(params,(9));\nvar G__51625 \x3d cljs.core._nth(params,(10));\nvar G__51626 \x3d cljs.core._nth(params,(11));\nvar G__51627 \x3d cljs.core._nth(params,(12));\nvar G__51628 \x3d cljs.core._nth(params,(13));\nvar G__51629 \x3d cljs.core._nth(params,(14));\nreturn (function sci$impl$fns$fun_$_arity_15(G__51600,G__51601,G__51602,G__51603,G__51604,G__51605,G__51606,G__51607,G__51608,G__51609,G__51610,G__51611,G__51612,G__51613,G__51614){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((15),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51615,G__51600);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51616,G__51601);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51617,G__51602);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51618,G__51603);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51619,G__51604);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51620,G__51605);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51621,G__51606);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51622,G__51607);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51623,G__51608);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51624,G__51609);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51625,G__51610);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51626,G__51611);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51627,G__51612);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51628,G__51613);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51629,G__51614);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$15);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53199 \x3d cljs.core._nth(recur_val,(0));\nvar G__53200 \x3d cljs.core._nth(recur_val,(1));\nvar G__53201 \x3d cljs.core._nth(recur_val,(2));\nvar G__53202 \x3d cljs.core._nth(recur_val,(3));\nvar G__53203 \x3d cljs.core._nth(recur_val,(4));\nvar G__53204 \x3d cljs.core._nth(recur_val,(5));\nvar G__53205 \x3d cljs.core._nth(recur_val,(6));\nvar G__53206 \x3d cljs.core._nth(recur_val,(7));\nvar G__53207 \x3d cljs.core._nth(recur_val,(8));\nvar G__53208 \x3d cljs.core._nth(recur_val,(9));\nvar G__53209 \x3d cljs.core._nth(recur_val,(10));\nvar G__53210 \x3d cljs.core._nth(recur_val,(11));\nvar G__53211 \x3d cljs.core._nth(recur_val,(12));\nvar G__53212 \x3d cljs.core._nth(recur_val,(13));\nvar G__53213 \x3d cljs.core._nth(recur_val,(14));\nG__51600 \x3d G__53199;\nG__51601 \x3d G__53200;\nG__51602 \x3d G__53201;\nG__51603 \x3d G__53202;\nG__51604 \x3d G__53203;\nG__51605 \x3d G__53204;\nG__51606 \x3d G__53205;\nG__51607 \x3d G__53206;\nG__51608 \x3d G__53207;\nG__51609 \x3d G__53208;\nG__51610 \x3d G__53209;\nG__51611 \x3d G__53210;\nG__51612 \x3d G__53211;\nG__51613 \x3d G__53212;\nG__51614 \x3d G__53213;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (16):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51668 \x3d cljs.core._nth(params,(0));\nvar G__51669 \x3d cljs.core._nth(params,(1));\nvar G__51670 \x3d cljs.core._nth(params,(2));\nvar G__51671 \x3d cljs.core._nth(params,(3));\nvar G__51672 \x3d cljs.core._nth(params,(4));\nvar G__51673 \x3d cljs.core._nth(params,(5));\nvar G__51674 \x3d cljs.core._nth(params,(6));\nvar G__51675 \x3d cljs.core._nth(params,(7));\nvar G__51676 \x3d cljs.core._nth(params,(8));\nvar G__51677 \x3d cljs.core._nth(params,(9));\nvar G__51678 \x3d cljs.core._nth(params,(10));\nvar G__51679 \x3d cljs.core._nth(params,(11));\nvar G__51680 \x3d cljs.core._nth(params,(12));\nvar G__51681 \x3d cljs.core._nth(params,(13));\nvar G__51682 \x3d cljs.core._nth(params,(14));\nvar G__51683 \x3d cljs.core._nth(params,(15));\nreturn (function sci$impl$fns$fun_$_arity_16(G__51652,G__51653,G__51654,G__51655,G__51656,G__51657,G__51658,G__51659,G__51660,G__51661,G__51662,G__51663,G__51664,G__51665,G__51666,G__51667){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51668,G__51652);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51669,G__51653);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51670,G__51654);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51671,G__51655);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51672,G__51656);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51673,G__51657);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51674,G__51658);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51675,G__51659);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51676,G__51660);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51677,G__51661);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51678,G__51662);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51679,G__51663);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51680,G__51664);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51681,G__51665);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51682,G__51666);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__51683,G__51667);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$16);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53232 \x3d cljs.core._nth(recur_val,(0));\nvar G__53233 \x3d cljs.core._nth(recur_val,(1));\nvar G__53234 \x3d cljs.core._nth(recur_val,(2));\nvar G__53235 \x3d cljs.core._nth(recur_val,(3));\nvar G__53236 \x3d cljs.core._nth(recur_val,(4));\nvar G__53237 \x3d cljs.core._nth(recur_val,(5));\nvar G__53238 \x3d cljs.core._nth(recur_val,(6));\nvar G__53239 \x3d cljs.core._nth(recur_val,(7));\nvar G__53240 \x3d cljs.core._nth(recur_val,(8));\nvar G__53241 \x3d cljs.core._nth(recur_val,(9));\nvar G__53242 \x3d cljs.core._nth(recur_val,(10));\nvar G__53243 \x3d cljs.core._nth(recur_val,(11));\nvar G__53244 \x3d cljs.core._nth(recur_val,(12));\nvar G__53245 \x3d cljs.core._nth(recur_val,(13));\nvar G__53246 \x3d cljs.core._nth(recur_val,(14));\nvar G__53247 \x3d cljs.core._nth(recur_val,(15));\nG__51652 \x3d G__53232;\nG__51653 \x3d G__53233;\nG__51654 \x3d G__53234;\nG__51655 \x3d G__53235;\nG__51656 \x3d G__53236;\nG__51657 \x3d G__53237;\nG__51658 \x3d G__53238;\nG__51659 \x3d G__53239;\nG__51660 \x3d G__53240;\nG__51661 \x3d G__53241;\nG__51662 \x3d G__53242;\nG__51663 \x3d G__53243;\nG__51664 \x3d G__53244;\nG__51665 \x3d G__53245;\nG__51666 \x3d G__53246;\nG__51667 \x3d G__53247;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51709 \x3d cljs.core._nth(params,(0));\nvar G__51710 \x3d cljs.core._nth(params,(1));\nvar G__51711 \x3d cljs.core._nth(params,(2));\nvar G__51712 \x3d cljs.core._nth(params,(3));\nvar G__51713 \x3d cljs.core._nth(params,(4));\nvar G__51714 \x3d cljs.core._nth(params,(5));\nvar G__51715 \x3d cljs.core._nth(params,(6));\nvar G__51716 \x3d cljs.core._nth(params,(7));\nvar G__51717 \x3d cljs.core._nth(params,(8));\nvar G__51718 \x3d cljs.core._nth(params,(9));\nvar G__51719 \x3d cljs.core._nth(params,(10));\nvar G__51720 \x3d cljs.core._nth(params,(11));\nvar G__51721 \x3d cljs.core._nth(params,(12));\nvar G__51722 \x3d cljs.core._nth(params,(13));\nvar G__51723 \x3d cljs.core._nth(params,(14));\nvar G__51724 \x3d cljs.core._nth(params,(15));\nreturn (function sci$impl$fns$fun_$_arity_16(G__51693,G__51694,G__51695,G__51696,G__51697,G__51698,G__51699,G__51700,G__51701,G__51702,G__51703,G__51704,G__51705,G__51706,G__51707,G__51708){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((16),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51709,G__51693);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51710,G__51694);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51711,G__51695);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51712,G__51696);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51713,G__51697);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51714,G__51698);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51715,G__51699);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51716,G__51700);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51717,G__51701);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51718,G__51702);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51719,G__51703);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51720,G__51704);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51721,G__51705);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51722,G__51706);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51723,G__51707);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__51724,G__51708);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$16);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53255 \x3d cljs.core._nth(recur_val,(0));\nvar G__53256 \x3d cljs.core._nth(recur_val,(1));\nvar G__53257 \x3d cljs.core._nth(recur_val,(2));\nvar G__53258 \x3d cljs.core._nth(recur_val,(3));\nvar G__53259 \x3d cljs.core._nth(recur_val,(4));\nvar G__53260 \x3d cljs.core._nth(recur_val,(5));\nvar G__53261 \x3d cljs.core._nth(recur_val,(6));\nvar G__53262 \x3d cljs.core._nth(recur_val,(7));\nvar G__53263 \x3d cljs.core._nth(recur_val,(8));\nvar G__53264 \x3d cljs.core._nth(recur_val,(9));\nvar G__53265 \x3d cljs.core._nth(recur_val,(10));\nvar G__53266 \x3d cljs.core._nth(recur_val,(11));\nvar G__53267 \x3d cljs.core._nth(recur_val,(12));\nvar G__53268 \x3d cljs.core._nth(recur_val,(13));\nvar G__53269 \x3d cljs.core._nth(recur_val,(14));\nvar G__53270 \x3d cljs.core._nth(recur_val,(15));\nG__51693 \x3d G__53255;\nG__51694 \x3d G__53256;\nG__51695 \x3d G__53257;\nG__51696 \x3d G__53258;\nG__51697 \x3d G__53259;\nG__51698 \x3d G__53260;\nG__51699 \x3d G__53261;\nG__51700 \x3d G__53262;\nG__51701 \x3d G__53263;\nG__51702 \x3d G__53264;\nG__51703 \x3d G__53265;\nG__51704 \x3d G__53266;\nG__51705 \x3d G__53267;\nG__51706 \x3d G__53268;\nG__51707 \x3d G__53269;\nG__51708 \x3d G__53270;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (17):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51753 \x3d cljs.core._nth(params,(0));\nvar G__51754 \x3d cljs.core._nth(params,(1));\nvar G__51755 \x3d cljs.core._nth(params,(2));\nvar G__51756 \x3d cljs.core._nth(params,(3));\nvar G__51757 \x3d cljs.core._nth(params,(4));\nvar G__51758 \x3d cljs.core._nth(params,(5));\nvar G__51759 \x3d cljs.core._nth(params,(6));\nvar G__51760 \x3d cljs.core._nth(params,(7));\nvar G__51761 \x3d cljs.core._nth(params,(8));\nvar G__51762 \x3d cljs.core._nth(params,(9));\nvar G__51763 \x3d cljs.core._nth(params,(10));\nvar G__51764 \x3d cljs.core._nth(params,(11));\nvar G__51765 \x3d cljs.core._nth(params,(12));\nvar G__51766 \x3d cljs.core._nth(params,(13));\nvar G__51767 \x3d cljs.core._nth(params,(14));\nvar G__51768 \x3d cljs.core._nth(params,(15));\nvar G__51769 \x3d cljs.core._nth(params,(16));\nreturn (function sci$impl$fns$fun_$_arity_17(G__51736,G__51737,G__51738,G__51739,G__51740,G__51741,G__51742,G__51743,G__51744,G__51745,G__51746,G__51747,G__51748,G__51749,G__51750,G__51751,G__51752){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51753,G__51736);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51754,G__51737);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51755,G__51738);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51756,G__51739);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51757,G__51740);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51758,G__51741);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51759,G__51742);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51760,G__51743);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51761,G__51744);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51762,G__51745);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51763,G__51746);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51764,G__51747);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51765,G__51748);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51766,G__51749);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51767,G__51750);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__51768,G__51751);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__51769,G__51752);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$17);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53275 \x3d cljs.core._nth(recur_val,(0));\nvar G__53276 \x3d cljs.core._nth(recur_val,(1));\nvar G__53277 \x3d cljs.core._nth(recur_val,(2));\nvar G__53278 \x3d cljs.core._nth(recur_val,(3));\nvar G__53279 \x3d cljs.core._nth(recur_val,(4));\nvar G__53280 \x3d cljs.core._nth(recur_val,(5));\nvar G__53281 \x3d cljs.core._nth(recur_val,(6));\nvar G__53282 \x3d cljs.core._nth(recur_val,(7));\nvar G__53283 \x3d cljs.core._nth(recur_val,(8));\nvar G__53284 \x3d cljs.core._nth(recur_val,(9));\nvar G__53285 \x3d cljs.core._nth(recur_val,(10));\nvar G__53286 \x3d cljs.core._nth(recur_val,(11));\nvar G__53287 \x3d cljs.core._nth(recur_val,(12));\nvar G__53288 \x3d cljs.core._nth(recur_val,(13));\nvar G__53289 \x3d cljs.core._nth(recur_val,(14));\nvar G__53290 \x3d cljs.core._nth(recur_val,(15));\nvar G__53291 \x3d cljs.core._nth(recur_val,(16));\nG__51736 \x3d G__53275;\nG__51737 \x3d G__53276;\nG__51738 \x3d G__53277;\nG__51739 \x3d G__53278;\nG__51740 \x3d G__53279;\nG__51741 \x3d G__53280;\nG__51742 \x3d G__53281;\nG__51743 \x3d G__53282;\nG__51744 \x3d G__53283;\nG__51745 \x3d G__53284;\nG__51746 \x3d G__53285;\nG__51747 \x3d G__53286;\nG__51748 \x3d G__53287;\nG__51749 \x3d G__53288;\nG__51750 \x3d G__53289;\nG__51751 \x3d G__53290;\nG__51752 \x3d G__53291;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51859 \x3d cljs.core._nth(params,(0));\nvar G__51860 \x3d cljs.core._nth(params,(1));\nvar G__51861 \x3d cljs.core._nth(params,(2));\nvar G__51862 \x3d cljs.core._nth(params,(3));\nvar G__51863 \x3d cljs.core._nth(params,(4));\nvar G__51864 \x3d cljs.core._nth(params,(5));\nvar G__51865 \x3d cljs.core._nth(params,(6));\nvar G__51866 \x3d cljs.core._nth(params,(7));\nvar G__51867 \x3d cljs.core._nth(params,(8));\nvar G__51868 \x3d cljs.core._nth(params,(9));\nvar G__51869 \x3d cljs.core._nth(params,(10));\nvar G__51870 \x3d cljs.core._nth(params,(11));\nvar G__51871 \x3d cljs.core._nth(params,(12));\nvar G__51872 \x3d cljs.core._nth(params,(13));\nvar G__51873 \x3d cljs.core._nth(params,(14));\nvar G__51874 \x3d cljs.core._nth(params,(15));\nvar G__51875 \x3d cljs.core._nth(params,(16));\nreturn (function sci$impl$fns$fun_$_arity_17(G__51842,G__51843,G__51844,G__51845,G__51846,G__51847,G__51848,G__51849,G__51850,G__51851,G__51852,G__51853,G__51854,G__51855,G__51856,G__51857,G__51858){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((17),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51859,G__51842);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51860,G__51843);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51861,G__51844);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51862,G__51845);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51863,G__51846);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51864,G__51847);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51865,G__51848);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51866,G__51849);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51867,G__51850);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51868,G__51851);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51869,G__51852);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51870,G__51853);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51871,G__51854);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51872,G__51855);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51873,G__51856);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__51874,G__51857);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__51875,G__51858);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$17);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53305 \x3d cljs.core._nth(recur_val,(0));\nvar G__53306 \x3d cljs.core._nth(recur_val,(1));\nvar G__53307 \x3d cljs.core._nth(recur_val,(2));\nvar G__53308 \x3d cljs.core._nth(recur_val,(3));\nvar G__53309 \x3d cljs.core._nth(recur_val,(4));\nvar G__53310 \x3d cljs.core._nth(recur_val,(5));\nvar G__53311 \x3d cljs.core._nth(recur_val,(6));\nvar G__53312 \x3d cljs.core._nth(recur_val,(7));\nvar G__53313 \x3d cljs.core._nth(recur_val,(8));\nvar G__53314 \x3d cljs.core._nth(recur_val,(9));\nvar G__53315 \x3d cljs.core._nth(recur_val,(10));\nvar G__53316 \x3d cljs.core._nth(recur_val,(11));\nvar G__53317 \x3d cljs.core._nth(recur_val,(12));\nvar G__53318 \x3d cljs.core._nth(recur_val,(13));\nvar G__53319 \x3d cljs.core._nth(recur_val,(14));\nvar G__53320 \x3d cljs.core._nth(recur_val,(15));\nvar G__53321 \x3d cljs.core._nth(recur_val,(16));\nG__51842 \x3d G__53305;\nG__51843 \x3d G__53306;\nG__51844 \x3d G__53307;\nG__51845 \x3d G__53308;\nG__51846 \x3d G__53309;\nG__51847 \x3d G__53310;\nG__51848 \x3d G__53311;\nG__51849 \x3d G__53312;\nG__51850 \x3d G__53313;\nG__51851 \x3d G__53314;\nG__51852 \x3d G__53315;\nG__51853 \x3d G__53316;\nG__51854 \x3d G__53317;\nG__51855 \x3d G__53318;\nG__51856 \x3d G__53319;\nG__51857 \x3d G__53320;\nG__51858 \x3d G__53321;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (18):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__51912 \x3d cljs.core._nth(params,(0));\nvar G__51913 \x3d cljs.core._nth(params,(1));\nvar G__51914 \x3d cljs.core._nth(params,(2));\nvar G__51915 \x3d cljs.core._nth(params,(3));\nvar G__51916 \x3d cljs.core._nth(params,(4));\nvar G__51917 \x3d cljs.core._nth(params,(5));\nvar G__51918 \x3d cljs.core._nth(params,(6));\nvar G__51919 \x3d cljs.core._nth(params,(7));\nvar G__51920 \x3d cljs.core._nth(params,(8));\nvar G__51921 \x3d cljs.core._nth(params,(9));\nvar G__51922 \x3d cljs.core._nth(params,(10));\nvar G__51923 \x3d cljs.core._nth(params,(11));\nvar G__51924 \x3d cljs.core._nth(params,(12));\nvar G__51925 \x3d cljs.core._nth(params,(13));\nvar G__51926 \x3d cljs.core._nth(params,(14));\nvar G__51927 \x3d cljs.core._nth(params,(15));\nvar G__51928 \x3d cljs.core._nth(params,(16));\nvar G__51929 \x3d cljs.core._nth(params,(17));\nreturn (function sci$impl$fns$fun_$_arity_18(G__51894,G__51895,G__51896,G__51897,G__51898,G__51899,G__51900,G__51901,G__51902,G__51903,G__51904,G__51905,G__51906,G__51907,G__51908,G__51909,G__51910,G__51911){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51912,G__51894);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51913,G__51895);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51914,G__51896);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51915,G__51897);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__51916,G__51898);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__51917,G__51899);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__51918,G__51900);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__51919,G__51901);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__51920,G__51902);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__51921,G__51903);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__51922,G__51904);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__51923,G__51905);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__51924,G__51906);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__51925,G__51907);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__51926,G__51908);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__51927,G__51909);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__51928,G__51910);\nvar bindings__$18 \x3d cljs.core._assoc(bindings__$17,G__51929,G__51911);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$18);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53335 \x3d cljs.core._nth(recur_val,(0));\nvar G__53336 \x3d cljs.core._nth(recur_val,(1));\nvar G__53337 \x3d cljs.core._nth(recur_val,(2));\nvar G__53338 \x3d cljs.core._nth(recur_val,(3));\nvar G__53339 \x3d cljs.core._nth(recur_val,(4));\nvar G__53340 \x3d cljs.core._nth(recur_val,(5));\nvar G__53341 \x3d cljs.core._nth(recur_val,(6));\nvar G__53342 \x3d cljs.core._nth(recur_val,(7));\nvar G__53343 \x3d cljs.core._nth(recur_val,(8));\nvar G__53344 \x3d cljs.core._nth(recur_val,(9));\nvar G__53345 \x3d cljs.core._nth(recur_val,(10));\nvar G__53346 \x3d cljs.core._nth(recur_val,(11));\nvar G__53347 \x3d cljs.core._nth(recur_val,(12));\nvar G__53348 \x3d cljs.core._nth(recur_val,(13));\nvar G__53349 \x3d cljs.core._nth(recur_val,(14));\nvar G__53350 \x3d cljs.core._nth(recur_val,(15));\nvar G__53351 \x3d cljs.core._nth(recur_val,(16));\nvar G__53352 \x3d cljs.core._nth(recur_val,(17));\nG__51894 \x3d G__53335;\nG__51895 \x3d G__53336;\nG__51896 \x3d G__53337;\nG__51897 \x3d G__53338;\nG__51898 \x3d G__53339;\nG__51899 \x3d G__53340;\nG__51900 \x3d G__53341;\nG__51901 \x3d G__53342;\nG__51902 \x3d G__53343;\nG__51903 \x3d G__53344;\nG__51904 \x3d G__53345;\nG__51905 \x3d G__53346;\nG__51906 \x3d G__53347;\nG__51907 \x3d G__53348;\nG__51908 \x3d G__53349;\nG__51909 \x3d G__53350;\nG__51910 \x3d G__53351;\nG__51911 \x3d G__53352;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__51996 \x3d cljs.core._nth(params,(0));\nvar G__51997 \x3d cljs.core._nth(params,(1));\nvar G__51998 \x3d cljs.core._nth(params,(2));\nvar G__51999 \x3d cljs.core._nth(params,(3));\nvar G__52000 \x3d cljs.core._nth(params,(4));\nvar G__52001 \x3d cljs.core._nth(params,(5));\nvar G__52002 \x3d cljs.core._nth(params,(6));\nvar G__52003 \x3d cljs.core._nth(params,(7));\nvar G__52004 \x3d cljs.core._nth(params,(8));\nvar G__52005 \x3d cljs.core._nth(params,(9));\nvar G__52006 \x3d cljs.core._nth(params,(10));\nvar G__52007 \x3d cljs.core._nth(params,(11));\nvar G__52008 \x3d cljs.core._nth(params,(12));\nvar G__52009 \x3d cljs.core._nth(params,(13));\nvar G__52010 \x3d cljs.core._nth(params,(14));\nvar G__52011 \x3d cljs.core._nth(params,(15));\nvar G__52012 \x3d cljs.core._nth(params,(16));\nvar G__52013 \x3d cljs.core._nth(params,(17));\nreturn (function sci$impl$fns$fun_$_arity_18(G__51977,G__51978,G__51979,G__51980,G__51981,G__51982,G__51983,G__51984,G__51985,G__51986,G__51987,G__51988,G__51989,G__51990,G__51991,G__51992,G__51993,G__51994){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((18),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__51996,G__51977);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__51997,G__51978);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__51998,G__51979);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__51999,G__51980);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__52000,G__51981);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__52001,G__51982);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__52002,G__51983);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__52003,G__51984);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__52004,G__51985);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__52005,G__51986);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__52006,G__51987);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__52007,G__51988);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__52008,G__51989);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__52009,G__51990);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__52010,G__51991);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__52011,G__51992);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__52012,G__51993);\nvar bindings__$18 \x3d cljs.core._assoc(bindings__$17,G__52013,G__51994);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$18);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53372 \x3d cljs.core._nth(recur_val,(0));\nvar G__53373 \x3d cljs.core._nth(recur_val,(1));\nvar G__53374 \x3d cljs.core._nth(recur_val,(2));\nvar G__53375 \x3d cljs.core._nth(recur_val,(3));\nvar G__53376 \x3d cljs.core._nth(recur_val,(4));\nvar G__53377 \x3d cljs.core._nth(recur_val,(5));\nvar G__53378 \x3d cljs.core._nth(recur_val,(6));\nvar G__53379 \x3d cljs.core._nth(recur_val,(7));\nvar G__53380 \x3d cljs.core._nth(recur_val,(8));\nvar G__53381 \x3d cljs.core._nth(recur_val,(9));\nvar G__53382 \x3d cljs.core._nth(recur_val,(10));\nvar G__53383 \x3d cljs.core._nth(recur_val,(11));\nvar G__53384 \x3d cljs.core._nth(recur_val,(12));\nvar G__53385 \x3d cljs.core._nth(recur_val,(13));\nvar G__53386 \x3d cljs.core._nth(recur_val,(14));\nvar G__53387 \x3d cljs.core._nth(recur_val,(15));\nvar G__53388 \x3d cljs.core._nth(recur_val,(16));\nvar G__53389 \x3d cljs.core._nth(recur_val,(17));\nG__51977 \x3d G__53372;\nG__51978 \x3d G__53373;\nG__51979 \x3d G__53374;\nG__51980 \x3d G__53375;\nG__51981 \x3d G__53376;\nG__51982 \x3d G__53377;\nG__51983 \x3d G__53378;\nG__51984 \x3d G__53379;\nG__51985 \x3d G__53380;\nG__51986 \x3d G__53381;\nG__51987 \x3d G__53382;\nG__51988 \x3d G__53383;\nG__51989 \x3d G__53384;\nG__51990 \x3d G__53385;\nG__51991 \x3d G__53386;\nG__51992 \x3d G__53387;\nG__51993 \x3d G__53388;\nG__51994 \x3d G__53389;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (19):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__52060 \x3d cljs.core._nth(params,(0));\nvar G__52061 \x3d cljs.core._nth(params,(1));\nvar G__52062 \x3d cljs.core._nth(params,(2));\nvar G__52063 \x3d cljs.core._nth(params,(3));\nvar G__52064 \x3d cljs.core._nth(params,(4));\nvar G__52065 \x3d cljs.core._nth(params,(5));\nvar G__52066 \x3d cljs.core._nth(params,(6));\nvar G__52067 \x3d cljs.core._nth(params,(7));\nvar G__52068 \x3d cljs.core._nth(params,(8));\nvar G__52069 \x3d cljs.core._nth(params,(9));\nvar G__52070 \x3d cljs.core._nth(params,(10));\nvar G__52071 \x3d cljs.core._nth(params,(11));\nvar G__52072 \x3d cljs.core._nth(params,(12));\nvar G__52073 \x3d cljs.core._nth(params,(13));\nvar G__52074 \x3d cljs.core._nth(params,(14));\nvar G__52075 \x3d cljs.core._nth(params,(15));\nvar G__52076 \x3d cljs.core._nth(params,(16));\nvar G__52077 \x3d cljs.core._nth(params,(17));\nvar G__52078 \x3d cljs.core._nth(params,(18));\nreturn (function sci$impl$fns$fun_$_arity_19(G__52041,G__52042,G__52043,G__52044,G__52045,G__52046,G__52047,G__52048,G__52049,G__52050,G__52051,G__52052,G__52053,G__52054,G__52055,G__52056,G__52057,G__52058,G__52059){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__52060,G__52041);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__52061,G__52042);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__52062,G__52043);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__52063,G__52044);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__52064,G__52045);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__52065,G__52046);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__52066,G__52047);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__52067,G__52048);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__52068,G__52049);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__52069,G__52050);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__52070,G__52051);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__52071,G__52052);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__52072,G__52053);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__52073,G__52054);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__52074,G__52055);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__52075,G__52056);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__52076,G__52057);\nvar bindings__$18 \x3d cljs.core._assoc(bindings__$17,G__52077,G__52058);\nvar bindings__$19 \x3d cljs.core._assoc(bindings__$18,G__52078,G__52059);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$19);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53413 \x3d cljs.core._nth(recur_val,(0));\nvar G__53414 \x3d cljs.core._nth(recur_val,(1));\nvar G__53415 \x3d cljs.core._nth(recur_val,(2));\nvar G__53416 \x3d cljs.core._nth(recur_val,(3));\nvar G__53417 \x3d cljs.core._nth(recur_val,(4));\nvar G__53418 \x3d cljs.core._nth(recur_val,(5));\nvar G__53419 \x3d cljs.core._nth(recur_val,(6));\nvar G__53420 \x3d cljs.core._nth(recur_val,(7));\nvar G__53421 \x3d cljs.core._nth(recur_val,(8));\nvar G__53422 \x3d cljs.core._nth(recur_val,(9));\nvar G__53423 \x3d cljs.core._nth(recur_val,(10));\nvar G__53424 \x3d cljs.core._nth(recur_val,(11));\nvar G__53425 \x3d cljs.core._nth(recur_val,(12));\nvar G__53426 \x3d cljs.core._nth(recur_val,(13));\nvar G__53427 \x3d cljs.core._nth(recur_val,(14));\nvar G__53428 \x3d cljs.core._nth(recur_val,(15));\nvar G__53429 \x3d cljs.core._nth(recur_val,(16));\nvar G__53430 \x3d cljs.core._nth(recur_val,(17));\nvar G__53431 \x3d cljs.core._nth(recur_val,(18));\nG__52041 \x3d G__53413;\nG__52042 \x3d G__53414;\nG__52043 \x3d G__53415;\nG__52044 \x3d G__53416;\nG__52045 \x3d G__53417;\nG__52046 \x3d G__53418;\nG__52047 \x3d G__53419;\nG__52048 \x3d G__53420;\nG__52049 \x3d G__53421;\nG__52050 \x3d G__53422;\nG__52051 \x3d G__53423;\nG__52052 \x3d G__53424;\nG__52053 \x3d G__53425;\nG__52054 \x3d G__53426;\nG__52055 \x3d G__53427;\nG__52056 \x3d G__53428;\nG__52057 \x3d G__53429;\nG__52058 \x3d G__53430;\nG__52059 \x3d G__53431;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__52125 \x3d cljs.core._nth(params,(0));\nvar G__52126 \x3d cljs.core._nth(params,(1));\nvar G__52127 \x3d cljs.core._nth(params,(2));\nvar G__52128 \x3d cljs.core._nth(params,(3));\nvar G__52129 \x3d cljs.core._nth(params,(4));\nvar G__52130 \x3d cljs.core._nth(params,(5));\nvar G__52131 \x3d cljs.core._nth(params,(6));\nvar G__52132 \x3d cljs.core._nth(params,(7));\nvar G__52133 \x3d cljs.core._nth(params,(8));\nvar G__52134 \x3d cljs.core._nth(params,(9));\nvar G__52135 \x3d cljs.core._nth(params,(10));\nvar G__52136 \x3d cljs.core._nth(params,(11));\nvar G__52137 \x3d cljs.core._nth(params,(12));\nvar G__52138 \x3d cljs.core._nth(params,(13));\nvar G__52139 \x3d cljs.core._nth(params,(14));\nvar G__52140 \x3d cljs.core._nth(params,(15));\nvar G__52141 \x3d cljs.core._nth(params,(16));\nvar G__52142 \x3d cljs.core._nth(params,(17));\nvar G__52143 \x3d cljs.core._nth(params,(18));\nreturn (function sci$impl$fns$fun_$_arity_19(G__52106,G__52107,G__52108,G__52109,G__52110,G__52111,G__52112,G__52113,G__52114,G__52115,G__52116,G__52117,G__52118,G__52119,G__52120,G__52121,G__52122,G__52123,G__52124){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((19),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__52125,G__52106);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__52126,G__52107);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__52127,G__52108);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__52128,G__52109);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__52129,G__52110);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__52130,G__52111);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__52131,G__52112);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__52132,G__52113);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__52133,G__52114);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__52134,G__52115);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__52135,G__52116);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__52136,G__52117);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__52137,G__52118);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__52138,G__52119);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__52139,G__52120);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__52140,G__52121);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__52141,G__52122);\nvar bindings__$18 \x3d cljs.core._assoc(bindings__$17,G__52142,G__52123);\nvar bindings__$19 \x3d cljs.core._assoc(bindings__$18,G__52143,G__52124);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$19);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53456 \x3d cljs.core._nth(recur_val,(0));\nvar G__53457 \x3d cljs.core._nth(recur_val,(1));\nvar G__53458 \x3d cljs.core._nth(recur_val,(2));\nvar G__53459 \x3d cljs.core._nth(recur_val,(3));\nvar G__53460 \x3d cljs.core._nth(recur_val,(4));\nvar G__53461 \x3d cljs.core._nth(recur_val,(5));\nvar G__53462 \x3d cljs.core._nth(recur_val,(6));\nvar G__53463 \x3d cljs.core._nth(recur_val,(7));\nvar G__53464 \x3d cljs.core._nth(recur_val,(8));\nvar G__53465 \x3d cljs.core._nth(recur_val,(9));\nvar G__53466 \x3d cljs.core._nth(recur_val,(10));\nvar G__53467 \x3d cljs.core._nth(recur_val,(11));\nvar G__53468 \x3d cljs.core._nth(recur_val,(12));\nvar G__53469 \x3d cljs.core._nth(recur_val,(13));\nvar G__53470 \x3d cljs.core._nth(recur_val,(14));\nvar G__53471 \x3d cljs.core._nth(recur_val,(15));\nvar G__53472 \x3d cljs.core._nth(recur_val,(16));\nvar G__53473 \x3d cljs.core._nth(recur_val,(17));\nvar G__53474 \x3d cljs.core._nth(recur_val,(18));\nG__52106 \x3d G__53456;\nG__52107 \x3d G__53457;\nG__52108 \x3d G__53458;\nG__52109 \x3d G__53459;\nG__52110 \x3d G__53460;\nG__52111 \x3d G__53461;\nG__52112 \x3d G__53462;\nG__52113 \x3d G__53463;\nG__52114 \x3d G__53464;\nG__52115 \x3d G__53465;\nG__52116 \x3d G__53466;\nG__52117 \x3d G__53467;\nG__52118 \x3d G__53468;\nG__52119 \x3d G__53469;\nG__52120 \x3d G__53470;\nG__52121 \x3d G__53471;\nG__52122 \x3d G__53472;\nG__52123 \x3d G__53473;\nG__52124 \x3d G__53474;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ncase (20):\nif(cljs.core.truth_(disable_arity_checks_QMARK_)){\nvar G__52191 \x3d cljs.core._nth(params,(0));\nvar G__52192 \x3d cljs.core._nth(params,(1));\nvar G__52193 \x3d cljs.core._nth(params,(2));\nvar G__52194 \x3d cljs.core._nth(params,(3));\nvar G__52195 \x3d cljs.core._nth(params,(4));\nvar G__52196 \x3d cljs.core._nth(params,(5));\nvar G__52197 \x3d cljs.core._nth(params,(6));\nvar G__52198 \x3d cljs.core._nth(params,(7));\nvar G__52199 \x3d cljs.core._nth(params,(8));\nvar G__52200 \x3d cljs.core._nth(params,(9));\nvar G__52201 \x3d cljs.core._nth(params,(10));\nvar G__52202 \x3d cljs.core._nth(params,(11));\nvar G__52203 \x3d cljs.core._nth(params,(12));\nvar G__52204 \x3d cljs.core._nth(params,(13));\nvar G__52205 \x3d cljs.core._nth(params,(14));\nvar G__52206 \x3d cljs.core._nth(params,(15));\nvar G__52207 \x3d cljs.core._nth(params,(16));\nvar G__52208 \x3d cljs.core._nth(params,(17));\nvar G__52209 \x3d cljs.core._nth(params,(18));\nvar G__52210 \x3d cljs.core._nth(params,(19));\nreturn (function sci$impl$fns$fun_$_arity_20(G__52171,G__52172,G__52173,G__52174,G__52175,G__52176,G__52177,G__52178,G__52179,G__52180,G__52181,G__52182,G__52183,G__52184,G__52185,G__52186,G__52187,G__52188,G__52189,G__52190){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__52191,G__52171);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__52192,G__52172);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__52193,G__52173);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__52194,G__52174);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__52195,G__52175);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__52196,G__52176);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__52197,G__52177);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__52198,G__52178);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__52199,G__52179);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__52200,G__52180);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__52201,G__52181);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__52202,G__52182);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__52203,G__52183);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__52204,G__52184);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__52205,G__52185);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__52206,G__52186);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__52207,G__52187);\nvar bindings__$18 \x3d cljs.core._assoc(bindings__$17,G__52208,G__52188);\nvar bindings__$19 \x3d cljs.core._assoc(bindings__$18,G__52209,G__52189);\nvar bindings__$20 \x3d cljs.core._assoc(bindings__$19,G__52210,G__52190);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$20);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53487 \x3d cljs.core._nth(recur_val,(0));\nvar G__53488 \x3d cljs.core._nth(recur_val,(1));\nvar G__53489 \x3d cljs.core._nth(recur_val,(2));\nvar G__53490 \x3d cljs.core._nth(recur_val,(3));\nvar G__53491 \x3d cljs.core._nth(recur_val,(4));\nvar G__53492 \x3d cljs.core._nth(recur_val,(5));\nvar G__53493 \x3d cljs.core._nth(recur_val,(6));\nvar G__53494 \x3d cljs.core._nth(recur_val,(7));\nvar G__53495 \x3d cljs.core._nth(recur_val,(8));\nvar G__53496 \x3d cljs.core._nth(recur_val,(9));\nvar G__53497 \x3d cljs.core._nth(recur_val,(10));\nvar G__53498 \x3d cljs.core._nth(recur_val,(11));\nvar G__53499 \x3d cljs.core._nth(recur_val,(12));\nvar G__53500 \x3d cljs.core._nth(recur_val,(13));\nvar G__53501 \x3d cljs.core._nth(recur_val,(14));\nvar G__53502 \x3d cljs.core._nth(recur_val,(15));\nvar G__53503 \x3d cljs.core._nth(recur_val,(16));\nvar G__53504 \x3d cljs.core._nth(recur_val,(17));\nvar G__53505 \x3d cljs.core._nth(recur_val,(18));\nvar G__53506 \x3d cljs.core._nth(recur_val,(19));\nG__52171 \x3d G__53487;\nG__52172 \x3d G__53488;\nG__52173 \x3d G__53489;\nG__52174 \x3d G__53490;\nG__52175 \x3d G__53491;\nG__52176 \x3d G__53492;\nG__52177 \x3d G__53493;\nG__52178 \x3d G__53494;\nG__52179 \x3d G__53495;\nG__52180 \x3d G__53496;\nG__52181 \x3d G__53497;\nG__52182 \x3d G__53498;\nG__52183 \x3d G__53499;\nG__52184 \x3d G__53500;\nG__52185 \x3d G__53501;\nG__52186 \x3d G__53502;\nG__52187 \x3d G__53503;\nG__52188 \x3d G__53504;\nG__52189 \x3d G__53505;\nG__52190 \x3d G__53506;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n} else {\nvar G__52264 \x3d cljs.core._nth(params,(0));\nvar G__52265 \x3d cljs.core._nth(params,(1));\nvar G__52266 \x3d cljs.core._nth(params,(2));\nvar G__52267 \x3d cljs.core._nth(params,(3));\nvar G__52268 \x3d cljs.core._nth(params,(4));\nvar G__52269 \x3d cljs.core._nth(params,(5));\nvar G__52270 \x3d cljs.core._nth(params,(6));\nvar G__52271 \x3d cljs.core._nth(params,(7));\nvar G__52272 \x3d cljs.core._nth(params,(8));\nvar G__52273 \x3d cljs.core._nth(params,(9));\nvar G__52274 \x3d cljs.core._nth(params,(10));\nvar G__52275 \x3d cljs.core._nth(params,(11));\nvar G__52276 \x3d cljs.core._nth(params,(12));\nvar G__52277 \x3d cljs.core._nth(params,(13));\nvar G__52278 \x3d cljs.core._nth(params,(14));\nvar G__52279 \x3d cljs.core._nth(params,(15));\nvar G__52280 \x3d cljs.core._nth(params,(16));\nvar G__52281 \x3d cljs.core._nth(params,(17));\nvar G__52282 \x3d cljs.core._nth(params,(18));\nvar G__52283 \x3d cljs.core._nth(params,(19));\nreturn (function sci$impl$fns$fun_$_arity_20(G__52244,G__52245,G__52246,G__52247,G__52248,G__52249,G__52250,G__52251,G__52252,G__52253,G__52254,G__52255,G__52256,G__52257,G__52258,G__52259,G__52260,G__52261,G__52262,G__52263){\nwhile(true){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((20),arguments.length)){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,cljs.core.vals(cljs.core.js__GT_clj.cljs$core$IFn$_invoke$arity$1(arguments)));\n}\n\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,G__52264,G__52244);\nvar bindings__$2 \x3d cljs.core._assoc(bindings__$1,G__52265,G__52245);\nvar bindings__$3 \x3d cljs.core._assoc(bindings__$2,G__52266,G__52246);\nvar bindings__$4 \x3d cljs.core._assoc(bindings__$3,G__52267,G__52247);\nvar bindings__$5 \x3d cljs.core._assoc(bindings__$4,G__52268,G__52248);\nvar bindings__$6 \x3d cljs.core._assoc(bindings__$5,G__52269,G__52249);\nvar bindings__$7 \x3d cljs.core._assoc(bindings__$6,G__52270,G__52250);\nvar bindings__$8 \x3d cljs.core._assoc(bindings__$7,G__52271,G__52251);\nvar bindings__$9 \x3d cljs.core._assoc(bindings__$8,G__52272,G__52252);\nvar bindings__$10 \x3d cljs.core._assoc(bindings__$9,G__52273,G__52253);\nvar bindings__$11 \x3d cljs.core._assoc(bindings__$10,G__52274,G__52254);\nvar bindings__$12 \x3d cljs.core._assoc(bindings__$11,G__52275,G__52255);\nvar bindings__$13 \x3d cljs.core._assoc(bindings__$12,G__52276,G__52256);\nvar bindings__$14 \x3d cljs.core._assoc(bindings__$13,G__52277,G__52257);\nvar bindings__$15 \x3d cljs.core._assoc(bindings__$14,G__52278,G__52258);\nvar bindings__$16 \x3d cljs.core._assoc(bindings__$15,G__52279,G__52259);\nvar bindings__$17 \x3d cljs.core._assoc(bindings__$16,G__52280,G__52260);\nvar bindings__$18 \x3d cljs.core._assoc(bindings__$17,G__52281,G__52261);\nvar bindings__$19 \x3d cljs.core._assoc(bindings__$18,G__52282,G__52262);\nvar bindings__$20 \x3d cljs.core._assoc(bindings__$19,G__52283,G__52263);\nvar ctx__49601__auto__ \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$20);\nvar ret__49605__auto__ \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__49601__auto__,body) : interpret.call(null,ctx__49601__auto__,body));\nvar recur_QMARK___49606__auto__ \x3d (ret__49605__auto__ instanceof sci.impl.fns.Recur);\nif(recur_QMARK___49606__auto__){\nvar recur_val \x3d sci.impl.types.getVal(ret__49605__auto__);\nvar G__53709 \x3d cljs.core._nth(recur_val,(0));\nvar G__53710 \x3d cljs.core._nth(recur_val,(1));\nvar G__53711 \x3d cljs.core._nth(recur_val,(2));\nvar G__53712 \x3d cljs.core._nth(recur_val,(3));\nvar G__53713 \x3d cljs.core._nth(recur_val,(4));\nvar G__53714 \x3d cljs.core._nth(recur_val,(5));\nvar G__53715 \x3d cljs.core._nth(recur_val,(6));\nvar G__53716 \x3d cljs.core._nth(recur_val,(7));\nvar G__53717 \x3d cljs.core._nth(recur_val,(8));\nvar G__53719 \x3d cljs.core._nth(recur_val,(9));\nvar G__53722 \x3d cljs.core._nth(recur_val,(10));\nvar G__53724 \x3d cljs.core._nth(recur_val,(11));\nvar G__53726 \x3d cljs.core._nth(recur_val,(12));\nvar G__53729 \x3d cljs.core._nth(recur_val,(13));\nvar G__53731 \x3d cljs.core._nth(recur_val,(14));\nvar G__53733 \x3d cljs.core._nth(recur_val,(15));\nvar G__53736 \x3d cljs.core._nth(recur_val,(16));\nvar G__53738 \x3d cljs.core._nth(recur_val,(17));\nvar G__53739 \x3d cljs.core._nth(recur_val,(18));\nvar G__53740 \x3d cljs.core._nth(recur_val,(19));\nG__52244 \x3d G__53709;\nG__52245 \x3d G__53710;\nG__52246 \x3d G__53711;\nG__52247 \x3d G__53712;\nG__52248 \x3d G__53713;\nG__52249 \x3d G__53714;\nG__52250 \x3d G__53715;\nG__52251 \x3d G__53716;\nG__52252 \x3d G__53717;\nG__52253 \x3d G__53719;\nG__52254 \x3d G__53722;\nG__52255 \x3d G__53724;\nG__52256 \x3d G__53726;\nG__52257 \x3d G__53729;\nG__52258 \x3d G__53731;\nG__52259 \x3d G__53733;\nG__52260 \x3d G__53736;\nG__52261 \x3d G__53738;\nG__52262 \x3d G__53739;\nG__52263 \x3d G__53740;\ncontinue;\n} else {\nreturn ret__49605__auto__;\n}\nbreak;\n}\n});\n}\n\nbreak;\ndefault:\nreturn (function() { \nvar sci$impl$fns$fun_$_varargs__delegate \x3d function (args){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d (function (){var args_STAR_ \x3d cljs.core.seq(args);\nvar params__$1 \x3d cljs.core.seq(params);\nvar ret \x3d bindings;\nwhile(true){\nif(params__$1){\nvar fp \x3d cljs.core.first(params__$1);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),fp)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,cljs.core.second(params__$1),args_STAR_);\n} else {\nif(args_STAR_){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,args);\n}\n\nvar G__53763 \x3d cljs.core.next(args_STAR_);\nvar G__53764 \x3d cljs.core.next(params__$1);\nvar G__53765 \x3d cljs.core._assoc(ret,fp,cljs.core.first(args_STAR_));\nargs_STAR_ \x3d G__53763;\nparams__$1 \x3d G__53764;\nret \x3d G__53765;\ncontinue;\n}\n} else {\nif(args_STAR_){\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,args);\n} else {\n}\n\nreturn ret;\n}\nbreak;\n}\n})();\nvar ctx__$1 \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$1);\nvar ret \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__$1,body) : interpret.call(null,ctx__$1,body));\nvar recur_QMARK_ \x3d (ret instanceof sci.impl.fns.Recur);\nif(recur_QMARK_){\nvar recur_val \x3d sci.impl.types.getVal(ret);\nvar min_var_args_arity \x3d (cljs.core.truth_(var_arg_name)?fixed_arity:null);\nif(cljs.core.truth_(min_var_args_arity)){\nvar vec__52343 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(recur_val,(0),min_var_args_arity),cljs.core.subvec.cljs$core$IFn$_invoke$arity$2(recur_val,min_var_args_arity)], null);\nvar fixed_args \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52343,(0),null);\nvar vec__52346 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52343,(1),null);\nvar rest_args \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52346,(0),null);\nvar G__53767 \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(fixed_args,rest_args);\nargs \x3d G__53767;\ncontinue;\n} else {\nvar G__53768 \x3d recur_val;\nargs \x3d G__53768;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n};\nvar sci$impl$fns$fun_$_varargs \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__53769__i \x3d 0, G__53769__a \x3d new Array(arguments.length -  0);\nwhile (G__53769__i \x3c G__53769__a.length) {G__53769__a[G__53769__i] \x3d arguments[G__53769__i + 0]; ++G__53769__i;}\n  args \x3d new cljs.core.IndexedSeq(G__53769__a,0,null);\n} \nreturn sci$impl$fns$fun_$_varargs__delegate.call(this,args);};\nsci$impl$fns$fun_$_varargs.cljs$lang$maxFixedArity \x3d 0;\nsci$impl$fns$fun_$_varargs.cljs$lang$applyTo \x3d (function (arglist__53770){\nvar args \x3d cljs.core.seq(arglist__53770);\nreturn sci$impl$fns$fun_$_varargs__delegate(args);\n});\nsci$impl$fns$fun_$_varargs.cljs$core$IFn$_invoke$arity$variadic \x3d sci$impl$fns$fun_$_varargs__delegate;\nreturn sci$impl$fns$fun_$_varargs;\n})()\n;\n\n}\n})():(function() { \nvar sci$impl$fns$fun_$_varargs__delegate \x3d function (args){\nwhile(true){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d (function (){var args_STAR_ \x3d cljs.core.seq(args);\nvar params__$1 \x3d cljs.core.seq(params);\nvar ret \x3d bindings;\nwhile(true){\nif(params__$1){\nvar fp \x3d cljs.core.first(params__$1);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),fp)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ret,cljs.core.second(params__$1),args_STAR_);\n} else {\nif(args_STAR_){\n} else {\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,args);\n}\n\nvar G__53772 \x3d cljs.core.next(args_STAR_);\nvar G__53773 \x3d cljs.core.next(params__$1);\nvar G__53774 \x3d cljs.core._assoc(ret,fp,cljs.core.first(args_STAR_));\nargs_STAR_ \x3d G__53772;\nparams__$1 \x3d G__53773;\nret \x3d G__53774;\ncontinue;\n}\n} else {\nif(args_STAR_){\nsci.impl.fns.throw_arity(ctx,nsm,fn_name,macro_QMARK_,args);\n} else {\n}\n\nreturn ret;\n}\nbreak;\n}\n})();\nvar ctx__$1 \x3d cljs.core._assoc(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$1);\nvar ret \x3d (interpret.cljs$core$IFn$_invoke$arity$2 ? interpret.cljs$core$IFn$_invoke$arity$2(ctx__$1,body) : interpret.call(null,ctx__$1,body));\nvar recur_QMARK_ \x3d (ret instanceof sci.impl.fns.Recur);\nif(recur_QMARK_){\nvar recur_val \x3d sci.impl.types.getVal(ret);\nvar min_var_args_arity \x3d (cljs.core.truth_(var_arg_name)?fixed_arity:null);\nif(cljs.core.truth_(min_var_args_arity)){\nvar vec__52368 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(recur_val,(0),min_var_args_arity),cljs.core.subvec.cljs$core$IFn$_invoke$arity$2(recur_val,min_var_args_arity)], null);\nvar fixed_args \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52368,(0),null);\nvar vec__52371 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52368,(1),null);\nvar rest_args \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52371,(0),null);\nvar G__53781 \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(fixed_args,rest_args);\nargs \x3d G__53781;\ncontinue;\n} else {\nvar G__53782 \x3d recur_val;\nargs \x3d G__53782;\ncontinue;\n}\n} else {\nreturn ret;\n}\nbreak;\n}\n};\nvar sci$impl$fns$fun_$_varargs \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__53783__i \x3d 0, G__53783__a \x3d new Array(arguments.length -  0);\nwhile (G__53783__i \x3c G__53783__a.length) {G__53783__a[G__53783__i] \x3d arguments[G__53783__i + 0]; ++G__53783__i;}\n  args \x3d new cljs.core.IndexedSeq(G__53783__a,0,null);\n} \nreturn sci$impl$fns$fun_$_varargs__delegate.call(this,args);};\nsci$impl$fns$fun_$_varargs.cljs$lang$maxFixedArity \x3d 0;\nsci$impl$fns$fun_$_varargs.cljs$lang$applyTo \x3d (function (arglist__53784){\nvar args \x3d cljs.core.seq(arglist__53784);\nreturn sci$impl$fns$fun_$_varargs__delegate(args);\n});\nsci$impl$fns$fun_$_varargs.cljs$core$IFn$_invoke$arity$variadic \x3d sci$impl$fns$fun_$_varargs__delegate;\nreturn sci$impl$fns$fun_$_varargs;\n})()\n);\nreturn f;\n});\nsci.impl.fns.lookup_by_arity \x3d (function sci$impl$fns$lookup_by_arity(arities,arity){\nvar or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(arities,arity);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Keyword(null,\x22variadic\x22,\x22variadic\x22,882626057).cljs$core$IFn$_invoke$arity$1(arities);\n}\n});\nsci.impl.fns.fn_arity_map \x3d (function sci$impl$fns$fn_arity_map(ctx,interpret,fn_name,macro_QMARK_,fn_bodies){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (arity_map,fn_body){\nvar f \x3d sci.impl.fns.fun(ctx,interpret,fn_body,fn_name,macro_QMARK_);\nvar var_arg_QMARK_ \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22var-arg-name\x22,\x22sci.impl/var-arg-name\x22,1800498100).cljs$core$IFn$_invoke$arity$1(fn_body);\nvar fixed_arity \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22fixed-arity\x22,\x22sci.impl/fixed-arity\x22,-1251617052).cljs$core$IFn$_invoke$arity$1(fn_body);\nif(cljs.core.truth_(var_arg_QMARK_)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(arity_map,new cljs.core.Keyword(null,\x22variadic\x22,\x22variadic\x22,882626057),f);\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(arity_map,fixed_arity,f);\n}\n}),cljs.core.PersistentArrayMap.EMPTY,fn_bodies);\n});\nsci.impl.fns.eval_fn \x3d (function sci$impl$fns$eval_fn(ctx,interpret,p__52398){\nvar map__52400 \x3d p__52398;\nvar map__52400__$1 \x3d cljs.core.__destructure_map(map__52400);\nvar f \x3d map__52400__$1;\nvar fn_bodies \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52400__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-bodies\x22,\x22sci.impl/fn-bodies\x22,134751661));\nvar fn_name \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52400__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-name\x22,\x22sci.impl/fn-name\x22,-1172300569));\nvar var$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52400__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22var\x22,\x22sci.impl/var\x22,-2041185552));\nvar macro_QMARK_ \x3d new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151).cljs$core$IFn$_invoke$arity$1(f);\nvar self_ref \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(null);\nvar ctx__$1 \x3d (cljs.core.truth_(((cljs.core.not(var$))?fn_name:false))?cljs.core.assoc_in(ctx,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),fn_name], null),(function() { \nvar sci$impl$fns$eval_fn_$_call_self__delegate \x3d function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(self_ref),args);\n};\nvar sci$impl$fns$eval_fn_$_call_self \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__53788__i \x3d 0, G__53788__a \x3d new Array(arguments.length -  0);\nwhile (G__53788__i \x3c G__53788__a.length) {G__53788__a[G__53788__i] \x3d arguments[G__53788__i + 0]; ++G__53788__i;}\n  args \x3d new cljs.core.IndexedSeq(G__53788__a,0,null);\n} \nreturn sci$impl$fns$eval_fn_$_call_self__delegate.call(this,args);};\nsci$impl$fns$eval_fn_$_call_self.cljs$lang$maxFixedArity \x3d 0;\nsci$impl$fns$eval_fn_$_call_self.cljs$lang$applyTo \x3d (function (arglist__53789){\nvar args \x3d cljs.core.seq(arglist__53789);\nreturn sci$impl$fns$eval_fn_$_call_self__delegate(args);\n});\nsci$impl$fns$eval_fn_$_call_self.cljs$core$IFn$_invoke$arity$variadic \x3d sci$impl$fns$eval_fn_$_call_self__delegate;\nreturn sci$impl$fns$eval_fn_$_call_self;\n})()\n):ctx);\nvar single_arity_QMARK_ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(fn_bodies));\nvar f__$1 \x3d ((single_arity_QMARK_)?sci.impl.fns.fun(ctx__$1,interpret,cljs.core.first(fn_bodies),fn_name,macro_QMARK_):(function (){var arities \x3d sci.impl.fns.fn_arity_map(ctx__$1,interpret,fn_name,macro_QMARK_,fn_bodies);\nreturn (function() { \nvar G__53791__delegate \x3d function (args){\nvar arg_count \x3d cljs.core.count(args);\nvar temp__5751__auto__ \x3d sci.impl.fns.lookup_by_arity(arities,arg_count);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar f__$1 \x3d temp__5751__auto__;\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f__$1,args);\n} else {\nthrow (new Error((function (){var actual_count \x3d (cljs.core.truth_(macro_QMARK_)?(arg_count - (2)):arg_count);\nreturn [\x22Cannot call \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(fn_name),\x22 with \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(actual_count),\x22 arguments\x22].join(\x27\x27);\n})()));\n}\n};\nvar G__53791 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__53792__i \x3d 0, G__53792__a \x3d new Array(arguments.length -  0);\nwhile (G__53792__i \x3c G__53792__a.length) {G__53792__a[G__53792__i] \x3d arguments[G__53792__i + 0]; ++G__53792__i;}\n  args \x3d new cljs.core.IndexedSeq(G__53792__a,0,null);\n} \nreturn G__53791__delegate.call(this,args);};\nG__53791.cljs$lang$maxFixedArity \x3d 0;\nG__53791.cljs$lang$applyTo \x3d (function (arglist__53793){\nvar args \x3d cljs.core.seq(arglist__53793);\nreturn G__53791__delegate(args);\n});\nG__53791.cljs$core$IFn$_invoke$arity$variadic \x3d G__53791__delegate;\nreturn G__53791;\n})()\n;\n})());\nvar f__$2 \x3d (cljs.core.truth_(macro_QMARK_)?cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(f__$1,(function (p1__52396_SHARP_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__52396_SHARP_,new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),macro_QMARK_);\n})):f__$1);\ncljs.core.reset_BANG_(self_ref,f__$2);\n\nreturn f__$2;\n});\ncljs.core.vreset_BANG_(sci.impl.utils.eval_fn,sci.impl.fns.eval_fn);\n");
SHADOW_ENV.evalLoad("sci.impl.interop.js", true , "goog.provide(\x27sci.impl.interop\x27);\nsci.impl.interop.toJS \x3d (function sci$impl$interop$toJS(v){\nif((v instanceof cljs.core.MetaFn)){\nreturn v.afn;\n} else {\nreturn cljs.core.clj__GT_js(v);\n}\n});\n\nsci.impl.interop.js_object_array \x3d (function sci$impl$interop$js_object_array(args){\nreturn cljs.core.to_array(cljs.core.map.cljs$core$IFn$_invoke$arity$2(sci.impl.interop.toJS,args));\n});\nsci.impl.interop.invoke_instance_method \x3d (function sci$impl$interop$invoke_instance_method(obj,_target_class,method_name,args){\nif((\x22-\x22 \x3d\x3d\x3d method_name.charAt((0)))){\nreturn (obj[cljs.core.subs.cljs$core$IFn$_invoke$arity$2(method_name,(1))]);\n} else {\nvar temp__5751__auto__ \x3d (obj[method_name]);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar method \x3d temp__5751__auto__;\nreturn method.apply(obj,sci.impl.interop.js_object_array(args));\n} else {\nthrow (new Error([\x22Could not find instance method: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(method_name)].join(\x27\x27)));\n}\n}\n});\nsci.impl.interop.get_static_field \x3d (function sci$impl$interop$get_static_field(p__50385){\nvar vec__50386 \x3d p__50385;\nvar class$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50386,(0),null);\nvar field_name_sym \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50386,(1),null);\nif(clojure.string.includes_QMARK_(cljs.core.str.cljs$core$IFn$_invoke$arity$1(field_name_sym),\x22.\x22)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(goog.object.getValueByKeys,class$,clojure.string.split.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(field_name_sym),/\\./));\n} else {\nreturn goog.object.get(class$,field_name_sym);\n}\n});\nsci.impl.interop.invoke_js_constructor \x3d (function sci$impl$interop$invoke_js_constructor(constructor$,args){\nvar ctor \x3d Function.prototype.bind.apply(constructor$);\nvar args__$1 \x3d sci.impl.interop.js_object_array(args);\nvar G__50393 \x3d ((args__$1).length);\nswitch (G__50393) {\ncase (0):\nreturn (new ctor());\n\nbreak;\ncase (1):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0))));\n\nbreak;\ncase (2):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(1))));\n\nbreak;\ncase (3):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(1)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(2))));\n\nbreak;\ncase (4):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(1)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(2)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(3))));\n\nbreak;\ncase (5):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(1)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(2)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(3)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(4))));\n\nbreak;\ncase (6):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(1)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(2)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(3)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(4)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(5))));\n\nbreak;\ncase (7):\nreturn (new ctor(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(0)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(1)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(2)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(3)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(4)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(5)),cljs.core.nth.cljs$core$IFn$_invoke$arity$2(args__$1,(6))));\n\nbreak;\ndefault:\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(\x22Constructors with more than 7 arguments are not supported\x22,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22constructor\x22,\x22constructor\x22,-1953928811),constructor$], null));\n\n}\n});\nsci.impl.interop.invoke_constructor \x3d (function sci$impl$interop$invoke_constructor(constructor$,args){\nreturn sci.impl.interop.invoke_js_constructor(constructor$,args);\n});\nsci.impl.interop.invoke_static_method \x3d (function sci$impl$interop$invoke_static_method(p__50424,args){\nvar vec__50426 \x3d p__50424;\nvar class$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50426,(0),null);\nvar method_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50426,(1),null);\nvar temp__5751__auto__ \x3d goog.object.get(class$,method_name);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar method \x3d temp__5751__auto__;\nreturn method.apply(class$,sci.impl.interop.js_object_array(args));\n} else {\nvar method_name__$1 \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(method_name);\nvar field \x3d sci.impl.interop.get_static_field(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [class$,method_name__$1], null));\nif(cljs.core.not(field)){\nthrow (new Error([\x22Could not find static method \x22,method_name__$1].join(\x27\x27)));\n} else {\nif(clojure.string.ends_with_QMARK_(method_name__$1,\x22.\x22)){\nreturn sci.impl.interop.invoke_js_constructor(field,args);\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(sci.impl.interop.get_static_field(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [class$,method_name__$1], null)),args);\n\n}\n}\n}\n});\nsci.impl.interop.fully_qualify_class \x3d (function sci$impl$interop$fully_qualify_class(p__50448,sym){\nvar map__50449 \x3d p__50448;\nvar map__50449__$1 \x3d cljs.core.__destructure_map(map__50449);\nvar env \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50449__$1,new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235));\nvar class__GT_opts \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50449__$1,new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477));\nvar or__4160__auto__ \x3d (function (){var temp__5751__auto__ \x3d cljs.core.namespace(sym);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns_STAR_ \x3d temp__5751__auto__;\nif((\x22js\x22 \x3d\x3d\x3d ns_STAR_)){\nif(cljs.core.contains_QMARK_(class__GT_opts,cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(sym)))){\nreturn sym;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n} else {\nif(cljs.core.contains_QMARK_(class__GT_opts,sym)){\nreturn sym;\n} else {\nreturn null;\n}\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar env__$1 \x3d cljs.core.deref(env);\nvar or__4160__auto____$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394).cljs$core$IFn$_invoke$arity$1(env__$1),sym);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar cnn \x3d sci.impl.vars.current_ns_name();\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env__$1,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),sym], null));\n}\n}\n});\nsci.impl.interop.resolve_class_opts \x3d (function sci$impl$interop$resolve_class_opts(p__50496,sym){\nvar map__50498 \x3d p__50496;\nvar map__50498__$1 \x3d cljs.core.__destructure_map(map__50498);\nvar env \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50498__$1,new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235));\nvar class__GT_opts \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50498__$1,new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477));\nvar class_opts \x3d (function (){var or__4160__auto__ \x3d (function (){var temp__5751__auto__ \x3d cljs.core.namespace(sym);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns_STAR_ \x3d temp__5751__auto__;\nif((\x22js\x22 \x3d\x3d\x3d ns_STAR_)){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(class__GT_opts,cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(sym)));\n} else {\nreturn null;\n}\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(class__GT_opts,sym);\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar env__$1 \x3d cljs.core.deref(env);\nvar cnn \x3d sci.impl.vars.current_ns_name();\nvar imports \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env__$1,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394)], null));\nvar temp__5751__auto__ \x3d cljs.core.find(imports,sym);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__50508 \x3d temp__5751__auto__;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50508,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50508,(1),null);\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(class__GT_opts,v);\n} else {\nvar temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env__$1,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),sym], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(class__GT_opts,v);\n} else {\nreturn null;\n}\n}\n}\n})();\nreturn class_opts;\n});\nsci.impl.interop.resolve_class \x3d (function sci$impl$interop$resolve_class(ctx,sym){\nreturn new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996).cljs$core$IFn$_invoke$arity$1(sci.impl.interop.resolve_class_opts(ctx,sym));\n});\n");
SHADOW_ENV.evalLoad("sci.impl.load.js", true , "goog.provide(\x27sci.impl.load\x27);\nsci.impl.load.handle_refer_all \x3d (function sci$impl$load$handle_refer_all(the_current_ns,the_loaded_ns,include_sym_QMARK_,rename_sym,only){\nvar referred \x3d new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_current_ns);\nvar only__$1 \x3d (cljs.core.truth_(only)?cljs.core.set(only):null);\nvar referred__$1 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ns,p__50373){\nvar vec__50375 \x3d p__50373;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50375,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50375,(1),null);\nif(cljs.core.truth_((((k instanceof cljs.core.Symbol))?(function (){var and__4149__auto__ \x3d (include_sym_QMARK_.cljs$core$IFn$_invoke$arity$1 ? include_sym_QMARK_.cljs$core$IFn$_invoke$arity$1(k) : include_sym_QMARK_.call(null,k));\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((cljs.core.not(only__$1)) || (cljs.core.contains_QMARK_(only__$1,k)));\n} else {\nreturn and__4149__auto__;\n}\n})():false))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ns,(rename_sym.cljs$core$IFn$_invoke$arity$1 ? rename_sym.cljs$core$IFn$_invoke$arity$1(k) : rename_sym.call(null,k)),v);\n} else {\nreturn ns;\n}\n}),referred,the_loaded_ns);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(the_current_ns,new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809),referred__$1);\n});\nsci.impl.load.handle_require_libspec_env \x3d (function sci$impl$load$handle_require_libspec_env(ctx,env,current_ns,the_loaded_ns,lib_name,p__50391){\nvar map__50392 \x3d p__50391;\nvar map__50392__$1 \x3d cljs.core.__destructure_map(map__50392);\nvar _parsed_libspec \x3d map__50392__$1;\nvar as \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50392__$1,new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641));\nvar refer \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50392__$1,new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553));\nvar rename \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50392__$1,new cljs.core.Keyword(null,\x22rename\x22,\x22rename\x22,1508157613));\nvar exclude \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50392__$1,new cljs.core.Keyword(null,\x22exclude\x22,\x22exclude\x22,-1230250334));\nvar only \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50392__$1,new cljs.core.Keyword(null,\x22only\x22,\x22only\x22,1907811652));\nvar use \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50392__$1,new cljs.core.Keyword(null,\x22use\x22,\x22use\x22,-1846382424));\nvar the_current_ns \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),current_ns], null));\nvar the_current_ns__$1 \x3d (cljs.core.truth_(as)?cljs.core.assoc_in(the_current_ns,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714),as], null),lib_name):the_current_ns);\nvar rename_sym \x3d (cljs.core.truth_(rename)?(function (sym){\nvar or__4160__auto__ \x3d (rename.cljs$core$IFn$_invoke$arity$1 ? rename.cljs$core$IFn$_invoke$arity$1(sym) : rename.call(null,sym));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sym;\n}\n}):cljs.core.identity);\nvar include_sym_QMARK_ \x3d (cljs.core.truth_(exclude)?(function (){var excludes \x3d cljs.core.set(exclude);\nreturn (function (sym){\nreturn (!(cljs.core.contains_QMARK_(excludes,sym)));\n});\n})():cljs.core.constantly(true));\nvar the_current_ns__$2 \x3d (cljs.core.truth_(refer)?(cljs.core.truth_((function (){var or__4160__auto__ \x3d (sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22all\x22,\x22all\x22,892129742),refer) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(null,\x22all\x22,\x22all\x22,892129742),refer));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn use;\n}\n})())?sci.impl.load.handle_refer_all(the_current_ns__$1,the_loaded_ns,include_sym_QMARK_,rename_sym,null):((cljs.core.sequential_QMARK_(refer))?(function (){var referred \x3d new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_current_ns__$1);\nvar referred__$1 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ns,sym){\nif(cljs.core.truth_(include_sym_QMARK_(sym))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ns,(rename_sym.cljs$core$IFn$_invoke$arity$1 ? rename_sym.cljs$core$IFn$_invoke$arity$1(sym) : rename_sym.call(null,sym)),(function (){var temp__5751__auto__ \x3d cljs.core.find(the_loaded_ns,sym);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__50413 \x3d temp__5751__auto__;\nvar _k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50413,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50413,(1),null);\nreturn v;\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092).cljs$core$IFn$_invoke$arity$1(ctx))){\nreturn null;\n} else {\nthrow (new Error([cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym),\x22 does not exist\x22].join(\x27\x27)));\n}\n}\n})());\n} else {\nreturn ns;\n}\n}),referred,refer);\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(the_current_ns__$1,new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809),referred__$1);\n})():(function(){throw (new Error(\x22:refer value must be a sequential collection of symbols\x22))})()\n)):(cljs.core.truth_(use)?sci.impl.load.handle_refer_all(the_current_ns__$1,the_loaded_ns,include_sym_QMARK_,rename_sym,only):the_current_ns__$1\n));\nvar env__$1 \x3d cljs.core.assoc_in(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),current_ns], null),the_current_ns__$2);\nvar temp__5753__auto___50951 \x3d (function (){var G__50435 \x3d the_loaded_ns;\nvar G__50435__$1 \x3d (((G__50435 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962).cljs$core$IFn$_invoke$arity$1(G__50435));\nvar G__50435__$2 \x3d (((G__50435__$1 \x3d\x3d null))?null:cljs.core.meta(G__50435__$1));\nif((G__50435__$2 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22required-fn\x22,\x22sci.impl/required-fn\x22,2082701278).cljs$core$IFn$_invoke$arity$1(G__50435__$2);\n}\n})();\nif(cljs.core.truth_(temp__5753__auto___50951)){\nvar on_loaded_50952 \x3d temp__5753__auto___50951;\nvar G__50446_50953 \x3d cljs.core.PersistentArrayMap.EMPTY;\n(on_loaded_50952.cljs$core$IFn$_invoke$arity$1 ? on_loaded_50952.cljs$core$IFn$_invoke$arity$1(G__50446_50953) : on_loaded_50952.call(null,G__50446_50953));\n} else {\n}\n\nreturn env__$1;\n});\nsci.impl.load.add_loaded_lib \x3d (function sci$impl$load$add_loaded_lib(env,lib){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.update,new cljs.core.Keyword(null,\x22loaded-libs\x22,\x22loaded-libs\x22,-1156389652),(function (loaded_libs){\nif((loaded_libs \x3d\x3d null)){\nreturn cljs.core.PersistentHashSet.createAsIfByAssoc([lib]);\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(loaded_libs,lib);\n}\n}));\n\nreturn null;\n});\nsci.impl.load.handle_require_libspec \x3d (function sci$impl$load$handle_require_libspec(ctx,lib,opts){\nvar map__50482 \x3d opts;\nvar map__50482__$1 \x3d cljs.core.__destructure_map(map__50482);\nvar reload \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50482__$1,new cljs.core.Keyword(null,\x22reload\x22,\x22reload\x22,863702807));\nvar reload_all \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50482__$1,new cljs.core.Keyword(null,\x22reload-all\x22,\x22reload-all\x22,761570200));\nvar env_STAR_ \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar env \x3d cljs.core.deref(env_STAR_);\nvar cnn \x3d sci.impl.vars.current_ns_name();\nvar namespaces \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469));\nvar uberscript \x3d new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092).cljs$core$IFn$_invoke$arity$1(ctx);\nvar reload_STAR_ \x3d (function (){var or__4160__auto__ \x3d reload;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d reload_all;\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d new cljs.core.Keyword(null,\x22reload-all\x22,\x22reload-all\x22,761570200).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nreturn uberscript;\n}\n}\n}\n})();\nvar temp__5751__auto___50958 \x3d (cljs.core.truth_(reload_STAR_)?null:cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,lib));\nif(cljs.core.truth_(temp__5751__auto___50958)){\nvar the_loaded_ns_50959 \x3d temp__5751__auto___50958;\nvar loading_50960 \x3d new cljs.core.Keyword(null,\x22loading\x22,\x22loading\x22,-737050189).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d loading_50960;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (((!(cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22loaded-libs\x22,\x22loaded-libs\x22,-1156389652).cljs$core$IFn$_invoke$arity$1(env),lib)))) \x26\x26 (cljs.core.nat_int_QMARK_(loading_50960.indexOf(lib))));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2((function (){var lib_emphasized \x3d [\x22[ \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(lib),\x22 ]\x22].join(\x27\x27);\nvar loading__$1 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(loading_50960,lib);\nvar loading__$2 \x3d cljs.core.replace.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.createAsIfByAssoc([lib,lib_emphasized]),loading__$1);\nreturn [\x22Cyclic load dependency: \x22,clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22-\x3e\x22,loading__$2)].join(\x27\x27);\n})(),lib);\n} else {\ncljs.core.reset_BANG_(env_STAR_,sci.impl.load.handle_require_libspec_env(ctx,env,cnn,the_loaded_ns_50959,lib,opts));\n}\n} else {\nvar temp__5751__auto___50974__$1 \x3d new cljs.core.Keyword(null,\x22load-fn\x22,\x22load-fn\x22,-2121144334).cljs$core$IFn$_invoke$arity$1(env);\nif(cljs.core.truth_(temp__5751__auto___50974__$1)){\nvar load_fn_50978 \x3d temp__5751__auto___50974__$1;\nvar temp__5751__auto___50979__$2 \x3d (function (){var G__50511 \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22namespace\x22,\x22namespace\x22,-377510372),lib,new cljs.core.Keyword(null,\x22reload\x22,\x22reload\x22,863702807),(function (){var or__4160__auto__ \x3d reload;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn reload_all;\n}\n})()], null);\nreturn (load_fn_50978.cljs$core$IFn$_invoke$arity$1 ? load_fn_50978.cljs$core$IFn$_invoke$arity$1(G__50511) : load_fn_50978.call(null,G__50511));\n})();\nif(cljs.core.truth_(temp__5751__auto___50979__$2)){\nvar map__50516_51006 \x3d temp__5751__auto___50979__$2;\nvar map__50516_51007__$1 \x3d cljs.core.__destructure_map(map__50516_51006);\nvar file_51008 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50516_51007__$1,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878));\nvar source_51009 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__50516_51007__$1,new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539));\nvar ctx_51011__$1 \x3d cljs.core.update.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),cljs.core.PersistentArrayMap.EMPTY),new cljs.core.Keyword(null,\x22reload-all\x22,\x22reload-all\x22,761570200),reload_all),new cljs.core.Keyword(null,\x22loading\x22,\x22loading\x22,-737050189),(function (loading){\nif((loading \x3d\x3d null)){\nreturn new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [lib], null);\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(loading,lib);\n}\n}));\ntry{sci.impl.vars.push_thread_bindings(cljs.core.PersistentArrayMap.createAsIfByAssoc([sci.impl.vars.current_ns,cljs.core.deref(sci.impl.vars.current_ns),sci.impl.vars.current_file,file_51008]));\n\ntry{var fexpr__50542_51015 \x3d cljs.core.deref(sci.impl.utils.eval_string_STAR_);\n(fexpr__50542_51015.cljs$core$IFn$_invoke$arity$2 ? fexpr__50542_51015.cljs$core$IFn$_invoke$arity$2(ctx_51011__$1,source_51009) : fexpr__50542_51015.call(null,ctx_51011__$1,source_51009));\n}finally {sci.impl.vars.pop_thread_bindings();\n}}catch (e50525){if((e50525 instanceof Error)){\nvar e_51016 \x3d e50525;\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(env_STAR_,cljs.core.update,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cljs.core.dissoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([lib], 0));\n\nthrow e_51016;\n} else {\nthrow e50525;\n\n}\n}\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(env_STAR_,(function (env__$1){\nvar namespaces__$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(env__$1,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469));\nvar the_loaded_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces__$1,lib);\nreturn sci.impl.load.handle_require_libspec_env(ctx,env__$1,cnn,the_loaded_ns,lib,opts);\n}));\n} else {\nvar or__4160__auto___51022 \x3d (cljs.core.truth_(reload_STAR_)?(function (){var temp__5753__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,lib);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar the_loaded_ns \x3d temp__5753__auto__;\nreturn cljs.core.reset_BANG_(env_STAR_,sci.impl.load.handle_require_libspec_env(ctx,env,cnn,the_loaded_ns,lib,opts));\n} else {\nreturn null;\n}\n})():null);\nif(cljs.core.truth_(or__4160__auto___51022)){\n} else {\nthrow (new Error([\x22Could not find namespace: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(lib),\x22.\x22].join(\x27\x27)));\n}\n}\n} else {\nthrow (new Error([\x22Could not find namespace \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(lib),\x22.\x22].join(\x27\x27)));\n}\n}\n\nsci.impl.load.add_loaded_lib(env_STAR_,lib);\n\nreturn null;\n});\nsci.impl.load.load_lib \x3d (function sci$impl$load$load_lib(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51053 \x3d arguments.length;\nvar i__4772__auto___51054 \x3d (0);\nwhile(true){\nif((i__4772__auto___51054 \x3c len__4771__auto___51053)){\nargs__4777__auto__.push((arguments[i__4772__auto___51054]));\n\nvar G__51055 \x3d (i__4772__auto___51054 + (1));\ni__4772__auto___51054 \x3d G__51055;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.load.load_lib.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.load.load_lib.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ctx,prefix,lib,options){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d prefix;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (cljs.core.name(lib).indexOf(\x22.\x22) \x3e (0));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2([\x22Found lib name \x27\x22,cljs.core.name(lib),\x22\x27 containing period with prefix \x27\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(prefix),\x22\x27.  lib names inside prefix lists must not contain periods\x22].join(\x27\x27),lib);\n} else {\n}\n\nvar lib__$1 \x3d (cljs.core.truth_(prefix)?cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([cljs.core.str.cljs$core$IFn$_invoke$arity$1(prefix),\x22.\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(lib)].join(\x27\x27)):lib);\nvar opts \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,options);\nreturn sci.impl.load.handle_require_libspec(ctx,lib__$1,opts);\n}));\n\n(sci.impl.load.load_lib.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.load.load_lib.cljs$lang$applyTo \x3d (function (seq50560){\nvar G__50561 \x3d cljs.core.first(seq50560);\nvar seq50560__$1 \x3d cljs.core.next(seq50560);\nvar G__50562 \x3d cljs.core.first(seq50560__$1);\nvar seq50560__$2 \x3d cljs.core.next(seq50560__$1);\nvar G__50563 \x3d cljs.core.first(seq50560__$2);\nvar seq50560__$3 \x3d cljs.core.next(seq50560__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50561,G__50562,G__50563,seq50560__$3);\n}));\n\n/**\n * Prepends a symbol or a seq to coll\n */\nsci.impl.load.prependss \x3d (function sci$impl$load$prependss(x,coll){\nif((x instanceof cljs.core.Symbol)){\nreturn cljs.core.cons(x,coll);\n} else {\nreturn cljs.core.concat.cljs$core$IFn$_invoke$arity$2(x,coll);\n}\n});\n/**\n * Returns true if x is a libspec\n */\nsci.impl.load.libspec_QMARK_ \x3d (function sci$impl$load$libspec_QMARK_(x){\nreturn (((x instanceof cljs.core.Symbol)) || (((cljs.core.vector_QMARK_(x)) \x26\x26 ((((cljs.core.second(x) \x3d\x3d null)) || ((cljs.core.second(x) instanceof cljs.core.Keyword)))))));\n});\n/**\n * Loads libs, evaling libspecs, prefix lists, and flags for\n *   forwarding to load-lib\n */\nsci.impl.load.load_libs \x3d (function sci$impl$load$load_libs(ctx,kw,args){\nvar args_STAR_ \x3d cljs.core.cons(kw,args);\nvar flags \x3d cljs.core.filter.cljs$core$IFn$_invoke$arity$2(cljs.core.keyword_QMARK_,args_STAR_);\nvar opts \x3d cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(flags,cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(true));\nvar args_STAR___$1 \x3d cljs.core.filter.cljs$core$IFn$_invoke$arity$2(cljs.core.complement(cljs.core.keyword_QMARK_),args_STAR_);\nvar supported_51063 \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,\x22use\x22,\x22use\x22,-1846382424),null,new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),null,new cljs.core.Keyword(null,\x22require\x22,\x22require\x22,-468001333),null,new cljs.core.Keyword(null,\x22verbose\x22,\x22verbose\x22,1694226060),null,new cljs.core.Keyword(null,\x22reload\x22,\x22reload\x22,863702807),null,new cljs.core.Keyword(null,\x22reload-all\x22,\x22reload-all\x22,761570200),null,new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553),null], null), null);\nvar unsupported_51064 \x3d cljs.core.seq(cljs.core.remove.cljs$core$IFn$_invoke$arity$2(supported_51063,flags));\nif(unsupported_51064){\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.str,\x22Unsupported option(s) supplied: \x22,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(\x22,\x22,unsupported_51064)),args);\n} else {\n}\n\nif(cljs.core.seq(args_STAR___$1)){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22Nothing specified to load\x22,args);\n}\n\nvar seq__50597 \x3d cljs.core.seq(args_STAR___$1);\nvar chunk__50598 \x3d null;\nvar count__50599 \x3d (0);\nvar i__50600 \x3d (0);\nwhile(true){\nif((i__50600 \x3c count__50599)){\nvar arg \x3d chunk__50598.cljs$core$IIndexed$_nth$arity$2(null,i__50600);\nif(sci.impl.load.libspec_QMARK_(arg)){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.load.load_lib,ctx,null,sci.impl.load.prependss(arg,opts));\n} else {\nvar vec__50672_51078 \x3d arg;\nvar seq__50673_51079 \x3d cljs.core.seq(vec__50672_51078);\nvar first__50674_51080 \x3d cljs.core.first(seq__50673_51079);\nvar seq__50673_51081__$1 \x3d cljs.core.next(seq__50673_51079);\nvar prefix_51082 \x3d first__50674_51080;\nvar args_STAR__51083__$2 \x3d seq__50673_51081__$1;\nif((prefix_51082 \x3d\x3d null)){\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22prefix cannot be nil\x22,args);\n} else {\n}\n\nvar seq__50675_51087 \x3d cljs.core.seq(args_STAR__51083__$2);\nvar chunk__50676_51088 \x3d null;\nvar count__50677_51089 \x3d (0);\nvar i__50678_51090 \x3d (0);\nwhile(true){\nif((i__50678_51090 \x3c count__50677_51089)){\nvar arg_51091__$1 \x3d chunk__50676_51088.cljs$core$IIndexed$_nth$arity$2(null,i__50678_51090);\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.load.load_lib,ctx,prefix_51082,sci.impl.load.prependss(arg_51091__$1,opts));\n\n\nvar G__51093 \x3d seq__50675_51087;\nvar G__51094 \x3d chunk__50676_51088;\nvar G__51095 \x3d count__50677_51089;\nvar G__51096 \x3d (i__50678_51090 + (1));\nseq__50675_51087 \x3d G__51093;\nchunk__50676_51088 \x3d G__51094;\ncount__50677_51089 \x3d G__51095;\ni__50678_51090 \x3d G__51096;\ncontinue;\n} else {\nvar temp__5753__auto___51097 \x3d cljs.core.seq(seq__50675_51087);\nif(temp__5753__auto___51097){\nvar seq__50675_51098__$1 \x3d temp__5753__auto___51097;\nif(cljs.core.chunked_seq_QMARK_(seq__50675_51098__$1)){\nvar c__4591__auto___51099 \x3d cljs.core.chunk_first(seq__50675_51098__$1);\nvar G__51100 \x3d cljs.core.chunk_rest(seq__50675_51098__$1);\nvar G__51101 \x3d c__4591__auto___51099;\nvar G__51102 \x3d cljs.core.count(c__4591__auto___51099);\nvar G__51103 \x3d (0);\nseq__50675_51087 \x3d G__51100;\nchunk__50676_51088 \x3d G__51101;\ncount__50677_51089 \x3d G__51102;\ni__50678_51090 \x3d G__51103;\ncontinue;\n} else {\nvar arg_51104__$1 \x3d cljs.core.first(seq__50675_51098__$1);\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.load.load_lib,ctx,prefix_51082,sci.impl.load.prependss(arg_51104__$1,opts));\n\n\nvar G__51113 \x3d cljs.core.next(seq__50675_51098__$1);\nvar G__51114 \x3d null;\nvar G__51115 \x3d (0);\nvar G__51116 \x3d (0);\nseq__50675_51087 \x3d G__51113;\nchunk__50676_51088 \x3d G__51114;\ncount__50677_51089 \x3d G__51115;\ni__50678_51090 \x3d G__51116;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n}\n\n\nvar G__51117 \x3d seq__50597;\nvar G__51118 \x3d chunk__50598;\nvar G__51119 \x3d count__50599;\nvar G__51120 \x3d (i__50600 + (1));\nseq__50597 \x3d G__51117;\nchunk__50598 \x3d G__51118;\ncount__50599 \x3d G__51119;\ni__50600 \x3d G__51120;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__50597);\nif(temp__5753__auto__){\nvar seq__50597__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__50597__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__50597__$1);\nvar G__51145 \x3d cljs.core.chunk_rest(seq__50597__$1);\nvar G__51146 \x3d c__4591__auto__;\nvar G__51147 \x3d cljs.core.count(c__4591__auto__);\nvar G__51148 \x3d (0);\nseq__50597 \x3d G__51145;\nchunk__50598 \x3d G__51146;\ncount__50599 \x3d G__51147;\ni__50600 \x3d G__51148;\ncontinue;\n} else {\nvar arg \x3d cljs.core.first(seq__50597__$1);\nif(sci.impl.load.libspec_QMARK_(arg)){\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.load.load_lib,ctx,null,sci.impl.load.prependss(arg,opts));\n} else {\nvar vec__50710_51149 \x3d arg;\nvar seq__50711_51150 \x3d cljs.core.seq(vec__50710_51149);\nvar first__50712_51151 \x3d cljs.core.first(seq__50711_51150);\nvar seq__50711_51152__$1 \x3d cljs.core.next(seq__50711_51150);\nvar prefix_51153 \x3d first__50712_51151;\nvar args_STAR__51154__$2 \x3d seq__50711_51152__$1;\nif((prefix_51153 \x3d\x3d null)){\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22prefix cannot be nil\x22,args);\n} else {\n}\n\nvar seq__50713_51156 \x3d cljs.core.seq(args_STAR__51154__$2);\nvar chunk__50714_51157 \x3d null;\nvar count__50715_51158 \x3d (0);\nvar i__50716_51159 \x3d (0);\nwhile(true){\nif((i__50716_51159 \x3c count__50715_51158)){\nvar arg_51160__$1 \x3d chunk__50714_51157.cljs$core$IIndexed$_nth$arity$2(null,i__50716_51159);\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.load.load_lib,ctx,prefix_51153,sci.impl.load.prependss(arg_51160__$1,opts));\n\n\nvar G__51162 \x3d seq__50713_51156;\nvar G__51163 \x3d chunk__50714_51157;\nvar G__51164 \x3d count__50715_51158;\nvar G__51165 \x3d (i__50716_51159 + (1));\nseq__50713_51156 \x3d G__51162;\nchunk__50714_51157 \x3d G__51163;\ncount__50715_51158 \x3d G__51164;\ni__50716_51159 \x3d G__51165;\ncontinue;\n} else {\nvar temp__5753__auto___51167__$1 \x3d cljs.core.seq(seq__50713_51156);\nif(temp__5753__auto___51167__$1){\nvar seq__50713_51168__$1 \x3d temp__5753__auto___51167__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__50713_51168__$1)){\nvar c__4591__auto___51169 \x3d cljs.core.chunk_first(seq__50713_51168__$1);\nvar G__51170 \x3d cljs.core.chunk_rest(seq__50713_51168__$1);\nvar G__51171 \x3d c__4591__auto___51169;\nvar G__51172 \x3d cljs.core.count(c__4591__auto___51169);\nvar G__51173 \x3d (0);\nseq__50713_51156 \x3d G__51170;\nchunk__50714_51157 \x3d G__51171;\ncount__50715_51158 \x3d G__51172;\ni__50716_51159 \x3d G__51173;\ncontinue;\n} else {\nvar arg_51174__$1 \x3d cljs.core.first(seq__50713_51168__$1);\ncljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.load.load_lib,ctx,prefix_51153,sci.impl.load.prependss(arg_51174__$1,opts));\n\n\nvar G__51175 \x3d cljs.core.next(seq__50713_51168__$1);\nvar G__51176 \x3d null;\nvar G__51177 \x3d (0);\nvar G__51178 \x3d (0);\nseq__50713_51156 \x3d G__51175;\nchunk__50714_51157 \x3d G__51176;\ncount__50715_51158 \x3d G__51177;\ni__50716_51159 \x3d G__51178;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n}\n\n\nvar G__51179 \x3d cljs.core.next(seq__50597__$1);\nvar G__51180 \x3d null;\nvar G__51181 \x3d (0);\nvar G__51182 \x3d (0);\nseq__50597 \x3d G__51179;\nchunk__50598 \x3d G__51180;\ncount__50599 \x3d G__51181;\ni__50600 \x3d G__51182;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nsci.impl.load.eval_require \x3d (function sci$impl$load$eval_require(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51194 \x3d arguments.length;\nvar i__4772__auto___51211 \x3d (0);\nwhile(true){\nif((i__4772__auto___51211 \x3c len__4771__auto___51194)){\nargs__4777__auto__.push((arguments[i__4772__auto___51211]));\n\nvar G__51220 \x3d (i__4772__auto___51211 + (1));\ni__4772__auto___51211 \x3d G__51220;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.load.eval_require.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.load.eval_require.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ctx,args){\nreturn sci.impl.load.load_libs(ctx,new cljs.core.Keyword(null,\x22require\x22,\x22require\x22,-468001333),args);\n}));\n\n(sci.impl.load.eval_require.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.load.eval_require.cljs$lang$applyTo \x3d (function (seq50753){\nvar G__50754 \x3d cljs.core.first(seq50753);\nvar seq50753__$1 \x3d cljs.core.next(seq50753);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50754,seq50753__$1);\n}));\n\ncljs.core.vreset_BANG_(sci.impl.utils.eval_require_state,sci.impl.load.eval_require);\nsci.impl.load.eval_use \x3d (function sci$impl$load$eval_use(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51223 \x3d arguments.length;\nvar i__4772__auto___51224 \x3d (0);\nwhile(true){\nif((i__4772__auto___51224 \x3c len__4771__auto___51223)){\nargs__4777__auto__.push((arguments[i__4772__auto___51224]));\n\nvar G__51228 \x3d (i__4772__auto___51224 + (1));\ni__4772__auto___51224 \x3d G__51228;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.load.eval_use.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.load.eval_use.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ctx,args){\nreturn sci.impl.load.load_libs(ctx,new cljs.core.Keyword(null,\x22use\x22,\x22use\x22,-1846382424),args);\n}));\n\n(sci.impl.load.eval_use.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.load.eval_use.cljs$lang$applyTo \x3d (function (seq50759){\nvar G__50760 \x3d cljs.core.first(seq50759);\nvar seq50759__$1 \x3d cljs.core.next(seq50759);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50760,seq50759__$1);\n}));\n\ncljs.core.vreset_BANG_(sci.impl.utils.eval_use_state,sci.impl.load.eval_use);\nsci.impl.load.eval_refer_clojure \x3d (function sci$impl$load$eval_refer_clojure(ctx,exprs){\nvar ns_sym \x3d new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null);\nvar exprs__$1 \x3d exprs;\nwhile(true){\nif(cljs.core.truth_(exprs__$1)){\nvar vec__50807 \x3d exprs__$1;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50807,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50807,(1),null);\nvar G__50810_51237 \x3d k;\nvar G__50810_51238__$1 \x3d (((G__50810_51237 instanceof cljs.core.Keyword))?G__50810_51237.fqn:null);\nswitch (G__50810_51238__$1) {\ncase \x22exclude\x22:\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),((function (exprs__$1,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym){\nreturn (function (env){\nvar cnn \x3d sci.impl.vars.current_ns_name();\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(env,new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn,new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553),ns_sym,new cljs.core.Keyword(null,\x22exclude\x22,\x22exclude\x22,-1230250334)], null),cljs.core.fnil.cljs$core$IFn$_invoke$arity$2(cljs.core.into,cljs.core.PersistentHashSet.EMPTY),v);\n});})(exprs__$1,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym))\n);\n\nbreak;\ncase \x22only\x22:\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),((function (exprs__$1,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym){\nreturn (function (env){\nvar cnn \x3d sci.impl.vars.current_ns_name();\nvar other_ns \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_sym], null));\nvar other_vars \x3d cljs.core.select_keys(other_ns,v);\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn], null),cljs.core.merge,other_vars);\n});})(exprs__$1,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym))\n);\n\nbreak;\ncase \x22rename\x22:\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),((function (exprs__$1,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym){\nreturn (function (env){\nvar cnn \x3d sci.impl.vars.current_ns_name();\nvar namespaces \x3d new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(env);\nvar the_current_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,cnn);\nvar other_ns \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_sym], null));\nvar the_current_ns__$1 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (exprs__$1,cnn,namespaces,the_current_ns,other_ns,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym){\nreturn (function (acc,p__50821){\nvar vec__50824 \x3d p__50821;\nvar original_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50824,(0),null);\nvar new_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50824,(1),null);\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$4(cljs.core.assoc_in(acc,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809),new_name], null),cljs.core.get.cljs$core$IFn$_invoke$arity$2(other_ns,original_name)),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553),ns_sym,new cljs.core.Keyword(null,\x22exclude\x22,\x22exclude\x22,-1230250334)], null),cljs.core.fnil.cljs$core$IFn$_invoke$arity$2(cljs.core.conj,cljs.core.PersistentHashSet.EMPTY),original_name);\n});})(exprs__$1,cnn,namespaces,the_current_ns,other_ns,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym))\n,the_current_ns,v);\nreturn cljs.core.assoc_in(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn], null),the_current_ns__$1);\n});})(exprs__$1,G__50810_51237,G__50810_51238__$1,vec__50807,k,v,ns_sym))\n);\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__50810_51238__$1)].join(\x27\x27)));\n\n}\n\nvar G__51288 \x3d cljs.core.nnext(exprs__$1);\nexprs__$1 \x3d G__51288;\ncontinue;\n} else {\nreturn null;\n}\nbreak;\n}\n});\nsci.impl.load.eval_refer_STAR_ \x3d (function sci$impl$load$eval_refer_STAR_(env,ns_sym,filters){\n\nvar cnn \x3d sci.impl.vars.current_ns_name();\nvar namespaces \x3d new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(env);\nvar ns \x3d (function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,ns_sym);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nthrow (new Error([\x22No namespace: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_sym)].join(\x27\x27)));\n}\n})();\nvar fs \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,filters);\nvar public_keys \x3d cljs.core.filter.cljs$core$IFn$_invoke$arity$2(cljs.core.symbol_QMARK_,cljs.core.keys(ns));\nvar rename \x3d (function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22rename\x22,\x22rename\x22,1508157613).cljs$core$IFn$_invoke$arity$1(fs);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.PersistentArrayMap.EMPTY;\n}\n})();\nvar exclude \x3d cljs.core.set(new cljs.core.Keyword(null,\x22exclude\x22,\x22exclude\x22,-1230250334).cljs$core$IFn$_invoke$arity$1(fs));\nvar to_do \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22all\x22,\x22all\x22,892129742),new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553).cljs$core$IFn$_invoke$arity$1(fs)))?public_keys:(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553).cljs$core$IFn$_invoke$arity$1(fs);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d new cljs.core.Keyword(null,\x22only\x22,\x22only\x22,1907811652).cljs$core$IFn$_invoke$arity$1(fs);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn public_keys;\n}\n}\n})());\nvar _ \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d to_do;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (!(cljs.core.sequential_QMARK_(to_do)));\n} else {\nreturn and__4149__auto__;\n}\n})())?(function(){throw (new Error(\x22:only/:refer value must be a sequential collection of symbols\x22))})():null);\nvar the_current_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,cnn);\nvar referred \x3d new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_current_ns);\nvar referred__$1 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (referred__$1,sym){\nif(cljs.core.not((exclude.cljs$core$IFn$_invoke$arity$1 ? exclude.cljs$core$IFn$_invoke$arity$1(sym) : exclude.call(null,sym)))){\nvar v \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(ns,sym);\nif(cljs.core.truth_(v)){\n} else {\nthrow (new Error([cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym),\x22 does not exist\x22].join(\x27\x27)\n));\n}\n\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(referred__$1,(function (){var or__4160__auto__ \x3d (rename.cljs$core$IFn$_invoke$arity$1 ? rename.cljs$core$IFn$_invoke$arity$1(sym) : rename.call(null,sym));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sym;\n}\n})(),v);\n} else {\nreturn referred__$1;\n}\n}),referred,to_do);\nvar the_current_ns__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(the_current_ns,new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809),referred__$1);\nvar namespaces__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(namespaces,cnn,the_current_ns__$1);\nvar env__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(env,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),namespaces__$1);\nreturn env__$1;\n});\n/**\n * The function equivalent of :refer is handled differently than what we\n *   did before (this is more like what Clojure itself does.) For\n *   referring clojure.core we still use the old code.\n */\nsci.impl.load.eval_refer \x3d (function sci$impl$load$eval_refer(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51331 \x3d arguments.length;\nvar i__4772__auto___51332 \x3d (0);\nwhile(true){\nif((i__4772__auto___51332 \x3c len__4771__auto___51331)){\nargs__4777__auto__.push((arguments[i__4772__auto___51332]));\n\nvar G__51334 \x3d (i__4772__auto___51332 + (1));\ni__4772__auto___51332 \x3d G__51334;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.load.eval_refer.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.load.eval_refer.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ctx,ns_sym,filters){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),ns_sym)){\nsci.impl.load.eval_refer_clojure(ctx,filters);\n} else {\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),sci.impl.load.eval_refer_STAR_,ns_sym,filters);\n}\n\nreturn null;\n}));\n\n(sci.impl.load.eval_refer.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.load.eval_refer.cljs$lang$applyTo \x3d (function (seq50876){\nvar G__50877 \x3d cljs.core.first(seq50876);\nvar seq50876__$1 \x3d cljs.core.next(seq50876);\nvar G__50878 \x3d cljs.core.first(seq50876__$1);\nvar seq50876__$2 \x3d cljs.core.next(seq50876__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50877,G__50878,seq50876__$2);\n}));\n\ncljs.core.vreset_BANG_(sci.impl.utils.eval_refer_state,sci.impl.load.eval_refer);\n");
SHADOW_ENV.evalLoad("sci.impl.records.js", true , "goog.provide(\x27sci.impl.records\x27);\nsci.impl.records.defrecord \x3d (function sci$impl$records$defrecord(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___50578 \x3d arguments.length;\nvar i__4772__auto___50579 \x3d (0);\nwhile(true){\nif((i__4772__auto___50579 \x3c len__4771__auto___50578)){\nargs__4777__auto__.push((arguments[i__4772__auto___50579]));\n\nvar G__50580 \x3d (i__4772__auto___50579 + (1));\ni__4772__auto___50579 \x3d G__50580;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((5) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((5)),(0),null)):null);\nreturn sci.impl.records.defrecord.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),argseq__4778__auto__);\n});\n\n(sci.impl.records.defrecord.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_form,_,ctx,record_name,fields,raw_protocol_impls){\nvar factory_fn_str \x3d [\x22-\x3e\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(record_name)].join(\x27\x27);\nvar factory_fn_sym \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(factory_fn_str);\nvar map_factory_sym \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([\x22map\x22,factory_fn_str].join(\x27\x27));\nvar keys \x3d cljs.core.mapv.cljs$core$IFn$_invoke$arity$2(cljs.core.keyword,fields);\nvar rec_type \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.current_ns_name()),cljs.core.str.cljs$core$IFn$_invoke$arity$1(record_name));\nvar protocol_impls \x3d sci.impl.utils.split_when(cljs.core.symbol_QMARK_,raw_protocol_impls);\nvar field_set \x3d cljs.core.set(fields);\nvar protocol_impls__$1 \x3d cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p__50396,expr){\nvar vec__50398 \x3d p__50396;\nvar seq__50399 \x3d cljs.core.seq(vec__50398);\nvar first__50400 \x3d cljs.core.first(seq__50399);\nvar seq__50399__$1 \x3d cljs.core.next(seq__50399);\nvar protocol_name \x3d first__50400;\nvar impls \x3d seq__50399__$1;\nvar impls__$1 \x3d cljs.core.group_by(cljs.core.first,impls);\nvar protocol \x3d (function (){var fexpr__50404 \x3d cljs.core.deref(sci.impl.utils.eval_resolve_state);\nreturn (fexpr__50404.cljs$core$IFn$_invoke$arity$2 ? fexpr__50404.cljs$core$IFn$_invoke$arity$2(ctx,protocol_name) : fexpr__50404.call(null,ctx,protocol_name));\n})();\nvar ___$1 \x3d (cljs.core.truth_(protocol)?null:sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2([\x22Protocol not found: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(protocol_name)].join(\x27\x27),expr));\nvar protocol__$1 \x3d ((sci.impl.vars.var_QMARK_(protocol))?cljs.core.deref(protocol):protocol);\nvar protocol_ns \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(protocol__$1);\nvar pns \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.getName(protocol_ns));\nvar fq_meth_name \x3d (function (p1__50371_SHARP_){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(pns,p1__50371_SHARP_);\n});\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__50416){\nvar vec__50418 \x3d p__50416;\nvar method_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50418,(0),null);\nvar bodies \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50418,(1),null);\nvar bodies__$1 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.rest,bodies);\nvar bodies__$2 \x3d cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((function (impl){\nvar args \x3d cljs.core.first(impl);\nvar body \x3d cljs.core.rest(impl);\nvar destr \x3d sci.impl.utils.maybe_destructured(args,body);\nvar args__$1 \x3d new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235).cljs$core$IFn$_invoke$arity$1(destr);\nvar orig_this_sym \x3d cljs.core.first(args__$1);\nvar rest_args \x3d cljs.core.rest(args__$1);\nvar shadows_this_QMARK_ \x3d cljs.core.some((function (p1__50372_SHARP_){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(orig_this_sym,p1__50372_SHARP_);\n}),rest_args);\nvar this_sym \x3d (cljs.core.truth_(shadows_this_QMARK_)?cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22this_\x22):orig_this_sym);\nvar args__$2 \x3d (cljs.core.truth_(shadows_this_QMARK_)?cljs.core.vec(cljs.core.cons(this_sym,rest_args)):args__$1);\nvar bindings \x3d cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (field){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [field,(new cljs.core.List(null,cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(field),(new cljs.core.List(null,this_sym,null,(1),null)),(2),null))], null);\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core.disj,field_set,args__$2)], 0));\nvar bindings__$1 \x3d (cljs.core.truth_(shadows_this_QMARK_)?cljs.core.concat.cljs$core$IFn$_invoke$arity$2(bindings,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [orig_this_sym,this_sym], null)):bindings);\nvar bindings__$2 \x3d cljs.core.vec(bindings__$1);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,args__$2,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,bindings__$2,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null)))));\n}),bodies__$1);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defmethod\x22,\x22cljs.core/defmethod\x22,-180785162,null),null,(1),null)),(new cljs.core.List(null,fq_meth_name(cljs.core.str.cljs$core$IFn$_invoke$arity$1(method_name)),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,rec_type,null,(1),null))))),null,(1),null)),bodies__$2], 0))));\n}),impls__$1);\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([protocol_impls,raw_protocol_impls], 0));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defn\x22,\x22cljs.core/defn\x22,-1606493717,null),null,(1),null)),(new cljs.core.List(null,map_factory_sym,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,\x22m__50374__auto__\x22,\x22m__50374__auto__\x22,-407086961,null),null,(1),null)))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22vary-meta\x22,\x22cljs.core/vary-meta\x22,-938366546,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22m__50374__auto__\x22,\x22m__50374__auto__\x22,-407086961,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22assoc\x22,\x22cljs.core/assoc\x22,322326297,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(\x22sci.impl\x22,\x22record\x22,\x22sci.impl/record\x22,-1939193950),null,(1),null)),(new cljs.core.List(null,true,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,rec_type,null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defn\x22,\x22cljs.core/defn\x22,-1606493717,null),null,(1),null)),(new cljs.core.List(null,factory_fn_sym,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22args__50378__auto__\x22,\x22args__50378__auto__\x22,-1311190742,null),null,(1),null)))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22vary-meta\x22,\x22cljs.core/vary-meta\x22,-938366546,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22zipmap\x22,\x22cljs.core/zipmap\x22,-1902130674,null),null,(1),null)),(new cljs.core.List(null,keys,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22args__50378__auto__\x22,\x22args__50378__auto__\x22,-1311190742,null),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22assoc\x22,\x22cljs.core/assoc\x22,322326297,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(\x22sci.impl\x22,\x22record\x22,\x22sci.impl/record\x22,-1939193950),null,(1),null)),(new cljs.core.List(null,true,null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,rec_type,null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),null,(1),null)),(new cljs.core.List(null,record_name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22with-meta\x22,\x22cljs.core/with-meta\x22,749126446,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,rec_type,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Keyword(\x22sci.impl\x22,\x22record\x22,\x22sci.impl/record\x22,-1939193950),null,(1),null)),(new cljs.core.List(null,true,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(\x22sci.impl.record\x22,\x22constructor\x22,\x22sci.impl.record/constructor\x22,-2025684209),null,(1),null)),(new cljs.core.List(null,factory_fn_sym,null,(1),null))], 0))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),protocol_impls__$1], 0))));\n}));\n\n(sci.impl.records.defrecord.cljs$lang$maxFixedArity \x3d (5));\n\n/** @this {Function} */\n(sci.impl.records.defrecord.cljs$lang$applyTo \x3d (function (seq50379){\nvar G__50380 \x3d cljs.core.first(seq50379);\nvar seq50379__$1 \x3d cljs.core.next(seq50379);\nvar G__50381 \x3d cljs.core.first(seq50379__$1);\nvar seq50379__$2 \x3d cljs.core.next(seq50379__$1);\nvar G__50382 \x3d cljs.core.first(seq50379__$2);\nvar seq50379__$3 \x3d cljs.core.next(seq50379__$2);\nvar G__50383 \x3d cljs.core.first(seq50379__$3);\nvar seq50379__$4 \x3d cljs.core.next(seq50379__$3);\nvar G__50384 \x3d cljs.core.first(seq50379__$4);\nvar seq50379__$5 \x3d cljs.core.next(seq50379__$4);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50380,G__50381,G__50382,G__50383,G__50384,seq50379__$5);\n}));\n\nsci.impl.records.sci_record_QMARK_ \x3d (function sci$impl$records$sci_record_QMARK_(x){\nvar or__4160__auto__ \x3d ((cljs.core.map_QMARK_(x))?(function (){var G__50548 \x3d x;\nvar G__50548__$1 \x3d (((G__50548 \x3d\x3d null))?null:cljs.core.meta(G__50548));\nif((G__50548__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22record\x22,\x22sci.impl/record\x22,-1939193950).cljs$core$IFn$_invoke$arity$1(G__50548__$1);\n}\n})():null);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.record_QMARK_(x);\n}\n});\n/**\n * A record class is represented by a symbol with metadata (currently). This is only an implementation detail.\n * A protocol is represented by a map with :ns, :methods and optionally :class. This is also an implementation detail.\n */\nsci.impl.records.resolve_record_or_protocol_class \x3d (function sci$impl$records$resolve_record_or_protocol_class(var_args){\nvar G__50557 \x3d arguments.length;\nswitch (G__50557) {\ncase 2:\nreturn sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,sym){\nvar sym_str \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym);\nvar last_dot \x3d clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2(sym_str,\x22.\x22);\nvar class_name \x3d (cljs.core.truth_(last_dot)?cljs.core.subs.cljs$core$IFn$_invoke$arity$3(sym_str,(last_dot + (1)),((sym_str).length)):sym_str);\nvar namespace \x3d (cljs.core.truth_(last_dot)?cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(sym_str,(0),last_dot)):sci.impl.vars.current_ns_name());\nreturn sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$3(ctx,namespace,cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(class_name));\n}));\n\n(sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,package$,class$){\nvar namespace \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(clojure.string.replace(cljs.core.str.cljs$core$IFn$_invoke$arity$1(package$),\x22_\x22,\x22-\x22));\nvar temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),namespace,class$], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar sci_var \x3d temp__5753__auto__;\nif(sci.impl.vars.var_QMARK_(sci_var)){\nreturn cljs.core.deref(sci_var);\n} else {\nreturn sci_var;\n}\n} else {\nreturn null;\n}\n}));\n\n(sci.impl.records.resolve_record_or_protocol_class.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.records.resolve_record_class \x3d (function sci$impl$records$resolve_record_class(ctx,class_sym){\nvar temp__5753__auto__ \x3d sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$2(ctx,class_sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar x \x3d temp__5753__auto__;\nif((x instanceof cljs.core.Symbol)){\nreturn x;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\n");
SHADOW_ENV.evalLoad("sci.impl.evaluator.js", true , "goog.provide(\x27sci.impl.evaluator\x27);\n\nsci.impl.evaluator.macros \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 15, [new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),\x22null\x22,new cljs.core.Symbol(null,\x22lazy-seq\x22,\x22lazy-seq\x22,489632906,null),\x22null\x22,new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),\x22null\x22,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),\x22null\x22,new cljs.core.Symbol(null,\x22in-ns\x22,\x22in-ns\x22,-2089468466,null),\x22null\x22,new cljs.core.Symbol(null,\x22defn\x22,\x22defn\x22,-126010802,null),\x22null\x22,new cljs.core.Symbol(null,\x22or\x22,\x22or\x22,1876275696,null),\x22null\x22,new cljs.core.Symbol(null,\x22require\x22,\x22require\x22,1172530194,null),\x22null\x22,new cljs.core.Symbol(null,\x22syntax-quote\x22,\x22syntax-quote\x22,407366680,null),\x22null\x22,new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),\x22null\x22,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),\x22null\x22,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),\x22null\x22,new cljs.core.Symbol(null,\x22case\x22,\x22case\x22,-1510733573,null),\x22null\x22,new cljs.core.Symbol(null,\x22and\x22,\x22and\x22,668631710,null),\x22null\x22,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),\x22null\x22], null), null);\n/**\n * The and macro from clojure.core. Note: and is unrolled in the analyzer, this is a fallback.\n */\nsci.impl.evaluator.eval_and \x3d (function sci$impl$evaluator$eval_and(ctx,args){\nvar args__$1 \x3d cljs.core.seq(args);\nvar args__$2 \x3d args__$1;\nwhile(true){\nif(args__$2){\nvar x \x3d cljs.core.first(args__$2);\nvar v \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,x) : sci.impl.evaluator.eval.call(null,ctx,x));\nif(cljs.core.truth_(v)){\nvar xs \x3d cljs.core.next(args__$2);\nif(xs){\nvar G__54620 \x3d xs;\nargs__$2 \x3d G__54620;\ncontinue;\n} else {\nreturn v;\n}\n} else {\nreturn v;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n});\n/**\n * The or macro from clojure.core. Note: or is unrolled in the analyzer, this is a fallback.\n */\nsci.impl.evaluator.eval_or \x3d (function sci$impl$evaluator$eval_or(ctx,args){\nvar args__$1 \x3d cljs.core.seq(args);\nvar args__$2 \x3d args__$1;\nwhile(true){\nif(args__$2){\nvar x \x3d cljs.core.first(args__$2);\nvar v \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,x) : sci.impl.evaluator.eval.call(null,ctx,x));\nif(cljs.core.truth_(v)){\nreturn v;\n} else {\nvar xs \x3d cljs.core.next(args__$2);\nif(xs){\nvar G__54621 \x3d xs;\nargs__$2 \x3d G__54621;\ncontinue;\n} else {\nreturn v;\n}\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\n/**\n * The let macro from clojure.core\n */\nsci.impl.evaluator.eval_let \x3d (function sci$impl$evaluator$eval_let(ctx,let_bindings,exprs){\nvar ctx__$1 \x3d (function (){var ctx__$1 \x3d ctx;\nvar let_bindings__$1 \x3d let_bindings;\nwhile(true){\nvar let_name \x3d cljs.core.first(let_bindings__$1);\nvar let_bindings__$2 \x3d cljs.core.rest(let_bindings__$1);\nvar let_val \x3d cljs.core.first(let_bindings__$2);\nvar rest_let_bindings \x3d cljs.core.next(let_bindings__$2);\nvar v \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx__$1,let_val) : sci.impl.evaluator.eval.call(null,ctx__$1,let_val));\nvar bindings \x3d ctx__$1.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar bindings__$1 \x3d cljs.core._assoc(bindings,let_name,v);\nvar ctx__$2 \x3d cljs.core._assoc(ctx__$1,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings__$1);\nif(cljs.core.not(rest_let_bindings)){\nreturn ctx__$2;\n} else {\nvar G__54623 \x3d ctx__$2;\nvar G__54624 \x3d rest_let_bindings;\nctx__$1 \x3d G__54623;\nlet_bindings__$1 \x3d G__54624;\ncontinue;\n}\nbreak;\n}\n})();\nif(cljs.core.truth_(exprs)){\nvar exprs__$1 \x3d exprs;\nwhile(true){\nvar e \x3d cljs.core.first(exprs__$1);\nvar ret \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx__$1,e) : sci.impl.evaluator.eval.call(null,ctx__$1,e));\nvar nexprs \x3d cljs.core.next(exprs__$1);\nif(nexprs){\nvar G__54625 \x3d nexprs;\nexprs__$1 \x3d G__54625;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n} else {\nreturn null;\n}\n});\nsci.impl.evaluator.eval_def \x3d (function sci$impl$evaluator$eval_def(ctx,var_name,init){\nvar init__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,init) : sci.impl.evaluator.eval.call(null,ctx,init));\nvar m \x3d cljs.core.meta(var_name);\nvar m__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,m) : sci.impl.evaluator.eval.call(null,ctx,m));\nvar cnn \x3d sci.impl.vars.getName(new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(m__$1));\nvar assoc_in_env \x3d (function (env){\nvar the_current_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469)),cnn);\nvar prev \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(the_current_ns,var_name);\nvar prev__$1 \x3d (((!(sci.impl.vars.var_QMARK_(prev))))?sci.impl.vars.__GT_SciVar(prev,cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cnn),cljs.core.str.cljs$core$IFn$_invoke$arity$1(var_name)),cljs.core.meta(prev),false):prev);\nvar v \x3d (cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl\x22,\x22var.unbound\x22,\x22sci.impl/var.unbound\x22,-1824207647),init__$1) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl\x22,\x22var.unbound\x22,\x22sci.impl/var.unbound\x22,-1824207647),init__$1)))?(function (){var G__53818 \x3d prev__$1;\ncljs.core.alter_meta_BANG_.cljs$core$IFn$_invoke$arity$variadic(G__53818,cljs.core.merge,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([m__$1], 0));\n\nreturn G__53818;\n})():(function (){\nsci.impl.vars.bindRoot(prev__$1,init__$1);\n\ncljs.core.alter_meta_BANG_.cljs$core$IFn$_invoke$arity$variadic(prev__$1,cljs.core.merge,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([m__$1], 0));\n\nreturn prev__$1;\n})()\n);\nvar the_current_ns__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(the_current_ns,var_name,v);\nreturn cljs.core.assoc_in(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn], null),the_current_ns__$1);\n});\nvar env \x3d cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),assoc_in_env);\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.get.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469)),cnn),var_name);\n});\nsci.impl.evaluator.eval_case \x3d (function sci$impl$evaluator$eval_case(ctx,p__53821){\nvar vec__53823 \x3d p__53821;\nvar _case \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53823,(0),null);\nvar map__53826 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53823,(1),null);\nvar map__53826__$1 \x3d cljs.core.__destructure_map(map__53826);\nvar case_map \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53826__$1,new cljs.core.Keyword(null,\x22case-map\x22,\x22case-map\x22,955082964));\nvar case_val \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53826__$1,new cljs.core.Keyword(null,\x22case-val\x22,\x22case-val\x22,880926521));\nvar case_default \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53826__$1,new cljs.core.Keyword(null,\x22case-default\x22,\x22case-default\x22,1140470708));\nvar v \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,case_val) : sci.impl.evaluator.eval.call(null,ctx,case_val));\nvar temp__5751__auto__ \x3d cljs.core.find(case_map,v);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__53829 \x3d temp__5751__auto__;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53829,(0),null);\nvar found \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53829,(1),null);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,found) : sci.impl.evaluator.eval.call(null,ctx,found));\n} else {\nif(cljs.core.vector_QMARK_(case_default)){\nvar G__53833 \x3d ctx;\nvar G__53834 \x3d cljs.core.second(case_default);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__53833,G__53834) : sci.impl.evaluator.eval.call(null,G__53833,G__53834));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(v)].join(\x27\x27)));\n}\n}\n});\nsci.impl.evaluator.eval_try \x3d (function sci$impl$evaluator$eval_try(ctx,expr){\nvar map__53839 \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22try\x22,\x22sci.impl/try\x22,2142624741).cljs$core$IFn$_invoke$arity$1(expr);\nvar map__53839__$1 \x3d cljs.core.__destructure_map(map__53839);\nvar body \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53839__$1,new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669));\nvar catches \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53839__$1,new cljs.core.Keyword(null,\x22catches\x22,\x22catches\x22,-1478797617));\nvar finally$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53839__$1,new cljs.core.Keyword(null,\x22finally\x22,\x22finally\x22,1589088705));\ntry{var _STAR_in_try_STAR__orig_val__53848 \x3d sci.impl.utils._STAR_in_try_STAR_;\nvar _STAR_in_try_STAR__temp_val__53849 \x3d true;\n(sci.impl.utils._STAR_in_try_STAR_ \x3d _STAR_in_try_STAR__temp_val__53849);\n\ntry{return (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,body) : sci.impl.evaluator.eval.call(null,ctx,body));\n}finally {(sci.impl.utils._STAR_in_try_STAR_ \x3d _STAR_in_try_STAR__orig_val__53848);\n}}catch (e53841){if((e53841 instanceof Error)){\nvar e \x3d e53841;\nvar temp__5751__auto__ \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (_,c){\nvar clazz \x3d new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996).cljs$core$IFn$_invoke$arity$1(c);\nif((e instanceof clazz)){\nreturn cljs.core.reduced(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(\x22sci.impl.evaluator\x22,\x22try-result\x22,\x22sci.impl.evaluator/try-result\x22,-1394897780),(function (){var G__53843 \x3d cljs.core.assoc_in(ctx,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),new cljs.core.Keyword(null,\x22binding\x22,\x22binding\x22,539932593).cljs$core$IFn$_invoke$arity$1(c)], null),e);\nvar G__53844 \x3d new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669).cljs$core$IFn$_invoke$arity$1(c);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__53843,G__53844) : sci.impl.evaluator.eval.call(null,G__53843,G__53844));\n})()], null));\n} else {\nreturn null;\n}\n}),null,catches);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__53845 \x3d temp__5751__auto__;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53845,(0),null);\nvar r \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53845,(1),null);\nreturn r;\n} else {\nreturn sci.impl.utils.rethrow_with_location_of_node(ctx,e,body);\n}\n} else {\nthrow e53841;\n\n}\n}finally {(sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,finally$) : sci.impl.evaluator.eval.call(null,ctx,finally$));\n}});\nsci.impl.evaluator.eval_throw \x3d (function sci$impl$evaluator$eval_throw(ctx,p__53850){\nvar vec__53851 \x3d p__53850;\nvar _throw \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53851,(0),null);\nvar ex \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53851,(1),null);\nvar ex__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,ex) : sci.impl.evaluator.eval.call(null,ctx,ex));\nthrow ex__$1;\n});\nsci.impl.evaluator.eval_static_method_invocation \x3d (function sci$impl$evaluator$eval_static_method_invocation(ctx,expr){\nreturn sci.impl.interop.invoke_static_method(cljs.core.first(expr),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__53855_SHARP_){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,p1__53855_SHARP_) : sci.impl.evaluator.eval.call(null,ctx,p1__53855_SHARP_));\n}),cljs.core.rest(expr)));\n});\nsci.impl.evaluator.eval_constructor_invocation \x3d (function sci$impl$evaluator$eval_constructor_invocation(ctx,p__53859){\nvar vec__53860 \x3d p__53859;\nvar _new \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53860,(0),null);\nvar constructor$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53860,(1),null);\nvar args \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53860,(2),null);\nvar args__$1 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__53858_SHARP_){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,p1__53858_SHARP_) : sci.impl.evaluator.eval.call(null,ctx,p1__53858_SHARP_));\n}),args);\nreturn sci.impl.interop.invoke_constructor(constructor$,args__$1);\n});\nsci.impl.evaluator.eval_instance_method_invocation \x3d (function sci$impl$evaluator$eval_instance_method_invocation(p__53868,p__53869){\nvar map__53870 \x3d p__53868;\nvar map__53870__$1 \x3d cljs.core.__destructure_map(map__53870);\nvar ctx \x3d map__53870__$1;\nvar class__GT_opts \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__53870__$1,new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477));\nvar vec__53871 \x3d p__53869;\nvar _dot \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53871,(0),null);\nvar instance_expr \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53871,(1),null);\nvar method_str \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53871,(2),null);\nvar args \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53871,(3),null);\nvar _expr \x3d vec__53871;\nvar instance_meta \x3d cljs.core.meta(instance_expr);\nvar tag_class \x3d new cljs.core.Keyword(null,\x22tag-class\x22,\x22tag-class\x22,714967874).cljs$core$IFn$_invoke$arity$1(instance_meta);\nvar instance_expr_STAR_ \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,instance_expr) : sci.impl.evaluator.eval.call(null,ctx,instance_expr));\nif(cljs.core.truth_(((cljs.core.map_QMARK_(instance_expr_STAR_))?new cljs.core.Keyword(\x22sci.impl\x22,\x22record\x22,\x22sci.impl/record\x22,-1939193950).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(instance_expr_STAR_)):false))){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(instance_expr_STAR_,cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(method_str,(1))));\n} else {\nvar instance_class \x3d (function (){var or__4160__auto__ \x3d tag_class;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.type(instance_expr_STAR_);\n}\n})();\nvar instance_class_name \x3d instance_class.name;\nvar instance_class_symbol \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(instance_class_name);\nvar allowed_QMARK_ \x3d (function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(class__GT_opts,new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(class__GT_opts,instance_class_symbol);\n}\n})();\nvar target_class \x3d (cljs.core.truth_(allowed_QMARK_)?instance_class:(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar f \x3d temp__5753__auto__;\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(instance_expr_STAR_) : f.call(null,instance_expr_STAR_));\n} else {\nreturn null;\n}\n})());\nif(cljs.core.truth_(target_class)){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2([\x22Method \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(method_str),\x22 on \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(instance_class),\x22 not allowed!\x22].join(\x27\x27),instance_expr);\n}\n\nvar args__$1 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__53865_SHARP_){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,p1__53865_SHARP_) : sci.impl.evaluator.eval.call(null,ctx,p1__53865_SHARP_));\n}),args);\nreturn sci.impl.interop.invoke_instance_method(instance_expr_STAR_,target_class,method_str,args__$1);\n}\n});\nsci.impl.evaluator.eval_in_ns \x3d (function sci$impl$evaluator$eval_in_ns(ctx,p__53874){\nvar vec__53875 \x3d p__53874;\nvar _in_ns \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53875,(0),null);\nvar ns_expr \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53875,(1),null);\nvar ns_sym \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,ns_expr) : sci.impl.evaluator.eval.call(null,ctx,ns_expr));\nsci.impl.utils.set_namespace_BANG_(ctx,ns_sym,null);\n\nreturn null;\n});\nsci.impl.evaluator.eval_resolve \x3d (function sci$impl$evaluator$eval_resolve(var_args){\nvar G__53879 \x3d arguments.length;\nswitch (G__53879) {\ncase 2:\nreturn sci.impl.evaluator.eval_resolve.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.evaluator.eval_resolve.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.evaluator.eval_resolve.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,sym){\nvar sym__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,sym) : sci.impl.evaluator.eval.call(null,ctx,sym));\nreturn cljs.core.second((function (){var fexpr__53880 \x3d cljs.core.deref(sci.impl.utils.lookup);\nreturn (fexpr__53880.cljs$core$IFn$_invoke$arity$3 ? fexpr__53880.cljs$core$IFn$_invoke$arity$3(ctx,sym__$1,false) : fexpr__53880.call(null,ctx,sym__$1,false));\n})());\n}));\n\n(sci.impl.evaluator.eval_resolve.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,env,sym){\nif(cljs.core.contains_QMARK_(env,sym)){\nreturn null;\n} else {\nvar sym__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,sym) : sci.impl.evaluator.eval.call(null,ctx,sym));\nreturn cljs.core.second((function (){var fexpr__53881 \x3d cljs.core.deref(sci.impl.utils.lookup);\nreturn (fexpr__53881.cljs$core$IFn$_invoke$arity$3 ? fexpr__53881.cljs$core$IFn$_invoke$arity$3(ctx,sym__$1,false) : fexpr__53881.call(null,ctx,sym__$1,false));\n})());\n}\n}));\n\n(sci.impl.evaluator.eval_resolve.cljs$lang$maxFixedArity \x3d 3);\n\ncljs.core.vreset_BANG_(sci.impl.utils.eval_resolve_state,sci.impl.evaluator.eval_resolve);\nsci.impl.evaluator.eval_import \x3d (function sci$impl$evaluator$eval_import(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___54650 \x3d arguments.length;\nvar i__4772__auto___54651 \x3d (0);\nwhile(true){\nif((i__4772__auto___54651 \x3c len__4771__auto___54650)){\nargs__4777__auto__.push((arguments[i__4772__auto___54651]));\n\nvar G__54653 \x3d (i__4772__auto___54651 + (1));\ni__4772__auto___54651 \x3d G__54653;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.evaluator.eval_import.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.evaluator.eval_import.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ctx,import_symbols_or_lists){\nvar specs \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__53882_SHARP_){\nif(((cljs.core.seq_QMARK_(p1__53882_SHARP_)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),cljs.core.first(p1__53882_SHARP_))))){\nreturn cljs.core.second(p1__53882_SHARP_);\n} else {\nreturn p1__53882_SHARP_;\n}\n}),import_symbols_or_lists);\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (_,spec){\nvar vec__53888 \x3d (((spec instanceof cljs.core.Symbol))?(function (){var s \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(spec);\nvar last_dot \x3d clojure.string.last_index_of.cljs$core$IFn$_invoke$arity$2(s,\x22.\x22);\nvar package_PLUS_class_name \x3d (cljs.core.truth_(last_dot)?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),last_dot)),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(last_dot + (1)),((s).length)))], null)], null):new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [spec], null)], null));\nreturn package_PLUS_class_name;\n})():(function (){var p \x3d cljs.core.first(spec);\nvar cs \x3d cljs.core.rest(spec);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p,cs], null);\n})());\nvar package$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53888,(0),null);\nvar classes \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53888,(1),null);\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (___$1,class$){\nvar fq_class_name \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1((cljs.core.truth_(package$)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(package$),\x22.\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(class$)].join(\x27\x27):class$));\nvar temp__5751__auto__ \x3d sci.impl.interop.resolve_class(ctx,fq_class_name);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar clazz \x3d temp__5751__auto__;\nvar cnn \x3d sci.impl.vars.current_ns_name();\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),class$], null),fq_class_name);\n\nreturn clazz;\n} else {\nvar temp__5751__auto____$1 \x3d sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$3(ctx,package$,class$);\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar rec \x3d temp__5751__auto____$1;\nvar cnn \x3d sci.impl.vars.current_ns_name();\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn,class$], null),rec);\n\nreturn rec;\n} else {\nthrow (new Error([\x22Unable to resolve classname: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(fq_class_name)].join(\x27\x27)));\n}\n}\n}),null,classes);\n}),null,specs);\n}));\n\n(sci.impl.evaluator.eval_import.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.evaluator.eval_import.cljs$lang$applyTo \x3d (function (seq53885){\nvar G__53886 \x3d cljs.core.first(seq53885);\nvar seq53885__$1 \x3d cljs.core.next(seq53885);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__53886,seq53885__$1);\n}));\n\nsci.impl.evaluator.eval_set_BANG_ \x3d (function sci$impl$evaluator$eval_set_BANG_(ctx,p__53892){\nvar vec__53893 \x3d p__53892;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53893,(0),null);\nvar obj \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53893,(1),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53893,(2),null);\nvar obj__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,obj) : sci.impl.evaluator.eval.call(null,ctx,obj));\nvar v__$1 \x3d (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,v) : sci.impl.evaluator.eval.call(null,ctx,v));\nif(sci.impl.vars.var_QMARK_(obj__$1)){\nreturn sci.impl.types.setVal(obj__$1,v__$1);\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2([\x22Cannot set \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(obj__$1),\x22 to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(v__$1)].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),obj__$1,new cljs.core.Keyword(null,\x22v\x22,\x22v\x22,21465059),v__$1], null));\n}\n});\n/**\n * Note: various arities of do have already been unrolled in the analyzer.\n */\nsci.impl.evaluator.eval_do \x3d (function sci$impl$evaluator$eval_do(ctx,exprs){\nvar exprs__$1 \x3d cljs.core.seq(exprs);\nvar exprs__$2 \x3d exprs__$1;\nwhile(true){\nif(exprs__$2){\nvar ret \x3d (function (){var G__53897 \x3d ctx;\nvar G__53898 \x3d cljs.core.first(exprs__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__53897,G__53898) : sci.impl.evaluator.eval.call(null,G__53897,G__53898));\n})();\nvar temp__5751__auto__ \x3d cljs.core.next(exprs__$2);\nif(temp__5751__auto__){\nvar exprs__$3 \x3d temp__5751__auto__;\nvar G__54672 \x3d exprs__$3;\nexprs__$2 \x3d G__54672;\ncontinue;\n} else {\nreturn ret;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\ncljs.core.vreset_BANG_(sci.impl.utils.eval_do_STAR_,sci.impl.evaluator.eval_do);\nsci.impl.evaluator.fn_call \x3d (function sci$impl$evaluator$fn_call(ctx,f,args){\nvar G__54093 \x3d cljs.core.count(args);\nswitch (G__54093) {\ncase (0):\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n\nbreak;\ncase (1):\nvar arg53903 \x3d (function (){var G__54095 \x3d ctx;\nvar G__54096 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54095,G__54096) : sci.impl.evaluator.eval.call(null,G__54095,G__54096));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(arg53903) : f.call(null,arg53903));\n\nbreak;\ncase (2):\nvar arg53904 \x3d (function (){var G__54097 \x3d ctx;\nvar G__54098 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54097,G__54098) : sci.impl.evaluator.eval.call(null,G__54097,G__54098));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53905 \x3d (function (){var G__54099 \x3d ctx;\nvar G__54100 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54099,G__54100) : sci.impl.evaluator.eval.call(null,G__54099,G__54100));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(arg53904,arg53905) : f.call(null,arg53904,arg53905));\n\nbreak;\ncase (3):\nvar arg53906 \x3d (function (){var G__54101 \x3d ctx;\nvar G__54102 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54101,G__54102) : sci.impl.evaluator.eval.call(null,G__54101,G__54102));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53907 \x3d (function (){var G__54103 \x3d ctx;\nvar G__54104 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54103,G__54104) : sci.impl.evaluator.eval.call(null,G__54103,G__54104));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53908 \x3d (function (){var G__54105 \x3d ctx;\nvar G__54106 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54105,G__54106) : sci.impl.evaluator.eval.call(null,G__54105,G__54106));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(arg53906,arg53907,arg53908) : f.call(null,arg53906,arg53907,arg53908));\n\nbreak;\ncase (4):\nvar arg53909 \x3d (function (){var G__54107 \x3d ctx;\nvar G__54108 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54107,G__54108) : sci.impl.evaluator.eval.call(null,G__54107,G__54108));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53910 \x3d (function (){var G__54109 \x3d ctx;\nvar G__54110 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54109,G__54110) : sci.impl.evaluator.eval.call(null,G__54109,G__54110));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53911 \x3d (function (){var G__54111 \x3d ctx;\nvar G__54112 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54111,G__54112) : sci.impl.evaluator.eval.call(null,G__54111,G__54112));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53912 \x3d (function (){var G__54113 \x3d ctx;\nvar G__54114 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54113,G__54114) : sci.impl.evaluator.eval.call(null,G__54113,G__54114));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(arg53909,arg53910,arg53911,arg53912) : f.call(null,arg53909,arg53910,arg53911,arg53912));\n\nbreak;\ncase (5):\nvar arg53913 \x3d (function (){var G__54115 \x3d ctx;\nvar G__54116 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54115,G__54116) : sci.impl.evaluator.eval.call(null,G__54115,G__54116));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53914 \x3d (function (){var G__54117 \x3d ctx;\nvar G__54118 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54117,G__54118) : sci.impl.evaluator.eval.call(null,G__54117,G__54118));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53915 \x3d (function (){var G__54119 \x3d ctx;\nvar G__54120 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54119,G__54120) : sci.impl.evaluator.eval.call(null,G__54119,G__54120));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53916 \x3d (function (){var G__54121 \x3d ctx;\nvar G__54122 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54121,G__54122) : sci.impl.evaluator.eval.call(null,G__54121,G__54122));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53917 \x3d (function (){var G__54123 \x3d ctx;\nvar G__54124 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54123,G__54124) : sci.impl.evaluator.eval.call(null,G__54123,G__54124));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(arg53913,arg53914,arg53915,arg53916,arg53917) : f.call(null,arg53913,arg53914,arg53915,arg53916,arg53917));\n\nbreak;\ncase (6):\nvar arg53918 \x3d (function (){var G__54125 \x3d ctx;\nvar G__54126 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54125,G__54126) : sci.impl.evaluator.eval.call(null,G__54125,G__54126));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53919 \x3d (function (){var G__54127 \x3d ctx;\nvar G__54128 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54127,G__54128) : sci.impl.evaluator.eval.call(null,G__54127,G__54128));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53920 \x3d (function (){var G__54129 \x3d ctx;\nvar G__54130 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54129,G__54130) : sci.impl.evaluator.eval.call(null,G__54129,G__54130));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53921 \x3d (function (){var G__54131 \x3d ctx;\nvar G__54132 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54131,G__54132) : sci.impl.evaluator.eval.call(null,G__54131,G__54132));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53922 \x3d (function (){var G__54135 \x3d ctx;\nvar G__54136 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54135,G__54136) : sci.impl.evaluator.eval.call(null,G__54135,G__54136));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53923 \x3d (function (){var G__54137 \x3d ctx;\nvar G__54138 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54137,G__54138) : sci.impl.evaluator.eval.call(null,G__54137,G__54138));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nreturn (f.cljs$core$IFn$_invoke$arity$6 ? f.cljs$core$IFn$_invoke$arity$6(arg53918,arg53919,arg53920,arg53921,arg53922,arg53923) : f.call(null,arg53918,arg53919,arg53920,arg53921,arg53922,arg53923));\n\nbreak;\ncase (7):\nvar arg53924 \x3d (function (){var G__54141 \x3d ctx;\nvar G__54142 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54141,G__54142) : sci.impl.evaluator.eval.call(null,G__54141,G__54142));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53925 \x3d (function (){var G__54143 \x3d ctx;\nvar G__54144 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54143,G__54144) : sci.impl.evaluator.eval.call(null,G__54143,G__54144));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53926 \x3d (function (){var G__54146 \x3d ctx;\nvar G__54147 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54146,G__54147) : sci.impl.evaluator.eval.call(null,G__54146,G__54147));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53927 \x3d (function (){var G__54149 \x3d ctx;\nvar G__54150 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54149,G__54150) : sci.impl.evaluator.eval.call(null,G__54149,G__54150));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53928 \x3d (function (){var G__54152 \x3d ctx;\nvar G__54153 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54152,G__54153) : sci.impl.evaluator.eval.call(null,G__54152,G__54153));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53929 \x3d (function (){var G__54154 \x3d ctx;\nvar G__54155 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54154,G__54155) : sci.impl.evaluator.eval.call(null,G__54154,G__54155));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53930 \x3d (function (){var G__54157 \x3d ctx;\nvar G__54158 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54157,G__54158) : sci.impl.evaluator.eval.call(null,G__54157,G__54158));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nreturn (f.cljs$core$IFn$_invoke$arity$7 ? f.cljs$core$IFn$_invoke$arity$7(arg53924,arg53925,arg53926,arg53927,arg53928,arg53929,arg53930) : f.call(null,arg53924,arg53925,arg53926,arg53927,arg53928,arg53929,arg53930));\n\nbreak;\ncase (8):\nvar arg53931 \x3d (function (){var G__54159 \x3d ctx;\nvar G__54160 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54159,G__54160) : sci.impl.evaluator.eval.call(null,G__54159,G__54160));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53932 \x3d (function (){var G__54161 \x3d ctx;\nvar G__54162 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54161,G__54162) : sci.impl.evaluator.eval.call(null,G__54161,G__54162));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53933 \x3d (function (){var G__54163 \x3d ctx;\nvar G__54164 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54163,G__54164) : sci.impl.evaluator.eval.call(null,G__54163,G__54164));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53934 \x3d (function (){var G__54165 \x3d ctx;\nvar G__54166 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54165,G__54166) : sci.impl.evaluator.eval.call(null,G__54165,G__54166));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53935 \x3d (function (){var G__54167 \x3d ctx;\nvar G__54168 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54167,G__54168) : sci.impl.evaluator.eval.call(null,G__54167,G__54168));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53936 \x3d (function (){var G__54169 \x3d ctx;\nvar G__54170 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54169,G__54170) : sci.impl.evaluator.eval.call(null,G__54169,G__54170));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53937 \x3d (function (){var G__54171 \x3d ctx;\nvar G__54172 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54171,G__54172) : sci.impl.evaluator.eval.call(null,G__54171,G__54172));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg53938 \x3d (function (){var G__54173 \x3d ctx;\nvar G__54174 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54173,G__54174) : sci.impl.evaluator.eval.call(null,G__54173,G__54174));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nreturn (f.cljs$core$IFn$_invoke$arity$8 ? f.cljs$core$IFn$_invoke$arity$8(arg53931,arg53932,arg53933,arg53934,arg53935,arg53936,arg53937,arg53938) : f.call(null,arg53931,arg53932,arg53933,arg53934,arg53935,arg53936,arg53937,arg53938));\n\nbreak;\ncase (9):\nvar arg53939 \x3d (function (){var G__54177 \x3d ctx;\nvar G__54178 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54177,G__54178) : sci.impl.evaluator.eval.call(null,G__54177,G__54178));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53940 \x3d (function (){var G__54179 \x3d ctx;\nvar G__54180 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54179,G__54180) : sci.impl.evaluator.eval.call(null,G__54179,G__54180));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53941 \x3d (function (){var G__54182 \x3d ctx;\nvar G__54183 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54182,G__54183) : sci.impl.evaluator.eval.call(null,G__54182,G__54183));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53942 \x3d (function (){var G__54185 \x3d ctx;\nvar G__54186 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54185,G__54186) : sci.impl.evaluator.eval.call(null,G__54185,G__54186));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53943 \x3d (function (){var G__54187 \x3d ctx;\nvar G__54188 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54187,G__54188) : sci.impl.evaluator.eval.call(null,G__54187,G__54188));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53944 \x3d (function (){var G__54190 \x3d ctx;\nvar G__54191 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54190,G__54191) : sci.impl.evaluator.eval.call(null,G__54190,G__54191));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53945 \x3d (function (){var G__54193 \x3d ctx;\nvar G__54194 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54193,G__54194) : sci.impl.evaluator.eval.call(null,G__54193,G__54194));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg53946 \x3d (function (){var G__54196 \x3d ctx;\nvar G__54197 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54196,G__54197) : sci.impl.evaluator.eval.call(null,G__54196,G__54197));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg53947 \x3d (function (){var G__54199 \x3d ctx;\nvar G__54200 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54199,G__54200) : sci.impl.evaluator.eval.call(null,G__54199,G__54200));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nreturn (f.cljs$core$IFn$_invoke$arity$9 ? f.cljs$core$IFn$_invoke$arity$9(arg53939,arg53940,arg53941,arg53942,arg53943,arg53944,arg53945,arg53946,arg53947) : f.call(null,arg53939,arg53940,arg53941,arg53942,arg53943,arg53944,arg53945,arg53946,arg53947));\n\nbreak;\ncase (10):\nvar arg53948 \x3d (function (){var G__54201 \x3d ctx;\nvar G__54202 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54201,G__54202) : sci.impl.evaluator.eval.call(null,G__54201,G__54202));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53949 \x3d (function (){var G__54203 \x3d ctx;\nvar G__54204 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54203,G__54204) : sci.impl.evaluator.eval.call(null,G__54203,G__54204));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53950 \x3d (function (){var G__54205 \x3d ctx;\nvar G__54206 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54205,G__54206) : sci.impl.evaluator.eval.call(null,G__54205,G__54206));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53951 \x3d (function (){var G__54209 \x3d ctx;\nvar G__54210 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54209,G__54210) : sci.impl.evaluator.eval.call(null,G__54209,G__54210));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53952 \x3d (function (){var G__54212 \x3d ctx;\nvar G__54213 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54212,G__54213) : sci.impl.evaluator.eval.call(null,G__54212,G__54213));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53953 \x3d (function (){var G__54215 \x3d ctx;\nvar G__54216 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54215,G__54216) : sci.impl.evaluator.eval.call(null,G__54215,G__54216));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53954 \x3d (function (){var G__54218 \x3d ctx;\nvar G__54219 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54218,G__54219) : sci.impl.evaluator.eval.call(null,G__54218,G__54219));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg53955 \x3d (function (){var G__54220 \x3d ctx;\nvar G__54221 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54220,G__54221) : sci.impl.evaluator.eval.call(null,G__54220,G__54221));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg53956 \x3d (function (){var G__54222 \x3d ctx;\nvar G__54223 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54222,G__54223) : sci.impl.evaluator.eval.call(null,G__54222,G__54223));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg53957 \x3d (function (){var G__54225 \x3d ctx;\nvar G__54226 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54225,G__54226) : sci.impl.evaluator.eval.call(null,G__54225,G__54226));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nreturn (f.cljs$core$IFn$_invoke$arity$10 ? f.cljs$core$IFn$_invoke$arity$10(arg53948,arg53949,arg53950,arg53951,arg53952,arg53953,arg53954,arg53955,arg53956,arg53957) : f.call(null,arg53948,arg53949,arg53950,arg53951,arg53952,arg53953,arg53954,arg53955,arg53956,arg53957));\n\nbreak;\ncase (11):\nvar arg53958 \x3d (function (){var G__54230 \x3d ctx;\nvar G__54231 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54230,G__54231) : sci.impl.evaluator.eval.call(null,G__54230,G__54231));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53959 \x3d (function (){var G__54233 \x3d ctx;\nvar G__54234 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54233,G__54234) : sci.impl.evaluator.eval.call(null,G__54233,G__54234));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53960 \x3d (function (){var G__54235 \x3d ctx;\nvar G__54236 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54235,G__54236) : sci.impl.evaluator.eval.call(null,G__54235,G__54236));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53961 \x3d (function (){var G__54238 \x3d ctx;\nvar G__54239 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54238,G__54239) : sci.impl.evaluator.eval.call(null,G__54238,G__54239));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53962 \x3d (function (){var G__54241 \x3d ctx;\nvar G__54242 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54241,G__54242) : sci.impl.evaluator.eval.call(null,G__54241,G__54242));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53963 \x3d (function (){var G__54244 \x3d ctx;\nvar G__54245 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54244,G__54245) : sci.impl.evaluator.eval.call(null,G__54244,G__54245));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53964 \x3d (function (){var G__54246 \x3d ctx;\nvar G__54247 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54246,G__54247) : sci.impl.evaluator.eval.call(null,G__54246,G__54247));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg53965 \x3d (function (){var G__54248 \x3d ctx;\nvar G__54249 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54248,G__54249) : sci.impl.evaluator.eval.call(null,G__54248,G__54249));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg53966 \x3d (function (){var G__54250 \x3d ctx;\nvar G__54251 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54250,G__54251) : sci.impl.evaluator.eval.call(null,G__54250,G__54251));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg53967 \x3d (function (){var G__54254 \x3d ctx;\nvar G__54255 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54254,G__54255) : sci.impl.evaluator.eval.call(null,G__54254,G__54255));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg53968 \x3d (function (){var G__54256 \x3d ctx;\nvar G__54257 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54256,G__54257) : sci.impl.evaluator.eval.call(null,G__54256,G__54257));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nreturn (f.cljs$core$IFn$_invoke$arity$11 ? f.cljs$core$IFn$_invoke$arity$11(arg53958,arg53959,arg53960,arg53961,arg53962,arg53963,arg53964,arg53965,arg53966,arg53967,arg53968) : f.call(null,arg53958,arg53959,arg53960,arg53961,arg53962,arg53963,arg53964,arg53965,arg53966,arg53967,arg53968));\n\nbreak;\ncase (12):\nvar arg53969 \x3d (function (){var G__54258 \x3d ctx;\nvar G__54259 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54258,G__54259) : sci.impl.evaluator.eval.call(null,G__54258,G__54259));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53970 \x3d (function (){var G__54261 \x3d ctx;\nvar G__54262 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54261,G__54262) : sci.impl.evaluator.eval.call(null,G__54261,G__54262));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53971 \x3d (function (){var G__54263 \x3d ctx;\nvar G__54264 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54263,G__54264) : sci.impl.evaluator.eval.call(null,G__54263,G__54264));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53972 \x3d (function (){var G__54265 \x3d ctx;\nvar G__54266 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54265,G__54266) : sci.impl.evaluator.eval.call(null,G__54265,G__54266));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53973 \x3d (function (){var G__54268 \x3d ctx;\nvar G__54269 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54268,G__54269) : sci.impl.evaluator.eval.call(null,G__54268,G__54269));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53974 \x3d (function (){var G__54270 \x3d ctx;\nvar G__54271 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54270,G__54271) : sci.impl.evaluator.eval.call(null,G__54270,G__54271));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53975 \x3d (function (){var G__54275 \x3d ctx;\nvar G__54276 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54275,G__54276) : sci.impl.evaluator.eval.call(null,G__54275,G__54276));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg53976 \x3d (function (){var G__54277 \x3d ctx;\nvar G__54278 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54277,G__54278) : sci.impl.evaluator.eval.call(null,G__54277,G__54278));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg53977 \x3d (function (){var G__54280 \x3d ctx;\nvar G__54281 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54280,G__54281) : sci.impl.evaluator.eval.call(null,G__54280,G__54281));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg53978 \x3d (function (){var G__54284 \x3d ctx;\nvar G__54286 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54284,G__54286) : sci.impl.evaluator.eval.call(null,G__54284,G__54286));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg53979 \x3d (function (){var G__54287 \x3d ctx;\nvar G__54288 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54287,G__54288) : sci.impl.evaluator.eval.call(null,G__54287,G__54288));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg53980 \x3d (function (){var G__54289 \x3d ctx;\nvar G__54290 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54289,G__54290) : sci.impl.evaluator.eval.call(null,G__54289,G__54290));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nreturn (f.cljs$core$IFn$_invoke$arity$12 ? f.cljs$core$IFn$_invoke$arity$12(arg53969,arg53970,arg53971,arg53972,arg53973,arg53974,arg53975,arg53976,arg53977,arg53978,arg53979,arg53980) : f.call(null,arg53969,arg53970,arg53971,arg53972,arg53973,arg53974,arg53975,arg53976,arg53977,arg53978,arg53979,arg53980));\n\nbreak;\ncase (13):\nvar arg53981 \x3d (function (){var G__54295 \x3d ctx;\nvar G__54296 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54295,G__54296) : sci.impl.evaluator.eval.call(null,G__54295,G__54296));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53982 \x3d (function (){var G__54297 \x3d ctx;\nvar G__54298 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54297,G__54298) : sci.impl.evaluator.eval.call(null,G__54297,G__54298));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53983 \x3d (function (){var G__54300 \x3d ctx;\nvar G__54301 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54300,G__54301) : sci.impl.evaluator.eval.call(null,G__54300,G__54301));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53984 \x3d (function (){var G__54303 \x3d ctx;\nvar G__54305 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54303,G__54305) : sci.impl.evaluator.eval.call(null,G__54303,G__54305));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53985 \x3d (function (){var G__54307 \x3d ctx;\nvar G__54308 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54307,G__54308) : sci.impl.evaluator.eval.call(null,G__54307,G__54308));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53986 \x3d (function (){var G__54309 \x3d ctx;\nvar G__54310 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54309,G__54310) : sci.impl.evaluator.eval.call(null,G__54309,G__54310));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg53987 \x3d (function (){var G__54313 \x3d ctx;\nvar G__54314 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54313,G__54314) : sci.impl.evaluator.eval.call(null,G__54313,G__54314));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg53988 \x3d (function (){var G__54317 \x3d ctx;\nvar G__54318 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54317,G__54318) : sci.impl.evaluator.eval.call(null,G__54317,G__54318));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg53989 \x3d (function (){var G__54319 \x3d ctx;\nvar G__54320 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54319,G__54320) : sci.impl.evaluator.eval.call(null,G__54319,G__54320));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg53990 \x3d (function (){var G__54322 \x3d ctx;\nvar G__54323 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54322,G__54323) : sci.impl.evaluator.eval.call(null,G__54322,G__54323));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg53991 \x3d (function (){var G__54324 \x3d ctx;\nvar G__54325 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54324,G__54325) : sci.impl.evaluator.eval.call(null,G__54324,G__54325));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg53992 \x3d (function (){var G__54327 \x3d ctx;\nvar G__54328 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54327,G__54328) : sci.impl.evaluator.eval.call(null,G__54327,G__54328));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg53993 \x3d (function (){var G__54329 \x3d ctx;\nvar G__54330 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54329,G__54330) : sci.impl.evaluator.eval.call(null,G__54329,G__54330));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nreturn (f.cljs$core$IFn$_invoke$arity$13 ? f.cljs$core$IFn$_invoke$arity$13(arg53981,arg53982,arg53983,arg53984,arg53985,arg53986,arg53987,arg53988,arg53989,arg53990,arg53991,arg53992,arg53993) : f.call(null,arg53981,arg53982,arg53983,arg53984,arg53985,arg53986,arg53987,arg53988,arg53989,arg53990,arg53991,arg53992,arg53993));\n\nbreak;\ncase (14):\nvar arg53994 \x3d (function (){var G__54333 \x3d ctx;\nvar G__54334 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54333,G__54334) : sci.impl.evaluator.eval.call(null,G__54333,G__54334));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg53995 \x3d (function (){var G__54335 \x3d ctx;\nvar G__54336 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54335,G__54336) : sci.impl.evaluator.eval.call(null,G__54335,G__54336));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg53996 \x3d (function (){var G__54337 \x3d ctx;\nvar G__54338 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54337,G__54338) : sci.impl.evaluator.eval.call(null,G__54337,G__54338));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg53997 \x3d (function (){var G__54340 \x3d ctx;\nvar G__54341 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54340,G__54341) : sci.impl.evaluator.eval.call(null,G__54340,G__54341));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg53998 \x3d (function (){var G__54342 \x3d ctx;\nvar G__54343 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54342,G__54343) : sci.impl.evaluator.eval.call(null,G__54342,G__54343));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg53999 \x3d (function (){var G__54345 \x3d ctx;\nvar G__54346 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54345,G__54346) : sci.impl.evaluator.eval.call(null,G__54345,G__54346));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg54000 \x3d (function (){var G__54348 \x3d ctx;\nvar G__54349 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54348,G__54349) : sci.impl.evaluator.eval.call(null,G__54348,G__54349));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg54001 \x3d (function (){var G__54351 \x3d ctx;\nvar G__54352 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54351,G__54352) : sci.impl.evaluator.eval.call(null,G__54351,G__54352));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg54002 \x3d (function (){var G__54353 \x3d ctx;\nvar G__54354 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54353,G__54354) : sci.impl.evaluator.eval.call(null,G__54353,G__54354));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg54003 \x3d (function (){var G__54355 \x3d ctx;\nvar G__54356 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54355,G__54356) : sci.impl.evaluator.eval.call(null,G__54355,G__54356));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg54004 \x3d (function (){var G__54357 \x3d ctx;\nvar G__54358 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54357,G__54358) : sci.impl.evaluator.eval.call(null,G__54357,G__54358));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg54005 \x3d (function (){var G__54359 \x3d ctx;\nvar G__54360 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54359,G__54360) : sci.impl.evaluator.eval.call(null,G__54359,G__54360));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg54006 \x3d (function (){var G__54361 \x3d ctx;\nvar G__54362 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54361,G__54362) : sci.impl.evaluator.eval.call(null,G__54361,G__54362));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nvar arg54007 \x3d (function (){var G__54363 \x3d ctx;\nvar G__54364 \x3d cljs.core.first(args__$13);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54363,G__54364) : sci.impl.evaluator.eval.call(null,G__54363,G__54364));\n})();\nvar args__$14 \x3d cljs.core.rest(args__$13);\nreturn (f.cljs$core$IFn$_invoke$arity$14 ? f.cljs$core$IFn$_invoke$arity$14(arg53994,arg53995,arg53996,arg53997,arg53998,arg53999,arg54000,arg54001,arg54002,arg54003,arg54004,arg54005,arg54006,arg54007) : f.call(null,arg53994,arg53995,arg53996,arg53997,arg53998,arg53999,arg54000,arg54001,arg54002,arg54003,arg54004,arg54005,arg54006,arg54007));\n\nbreak;\ncase (15):\nvar arg54008 \x3d (function (){var G__54366 \x3d ctx;\nvar G__54367 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54366,G__54367) : sci.impl.evaluator.eval.call(null,G__54366,G__54367));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg54009 \x3d (function (){var G__54369 \x3d ctx;\nvar G__54370 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54369,G__54370) : sci.impl.evaluator.eval.call(null,G__54369,G__54370));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg54010 \x3d (function (){var G__54372 \x3d ctx;\nvar G__54373 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54372,G__54373) : sci.impl.evaluator.eval.call(null,G__54372,G__54373));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg54011 \x3d (function (){var G__54375 \x3d ctx;\nvar G__54376 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54375,G__54376) : sci.impl.evaluator.eval.call(null,G__54375,G__54376));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg54012 \x3d (function (){var G__54378 \x3d ctx;\nvar G__54379 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54378,G__54379) : sci.impl.evaluator.eval.call(null,G__54378,G__54379));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg54013 \x3d (function (){var G__54380 \x3d ctx;\nvar G__54381 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54380,G__54381) : sci.impl.evaluator.eval.call(null,G__54380,G__54381));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg54014 \x3d (function (){var G__54382 \x3d ctx;\nvar G__54383 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54382,G__54383) : sci.impl.evaluator.eval.call(null,G__54382,G__54383));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg54015 \x3d (function (){var G__54385 \x3d ctx;\nvar G__54386 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54385,G__54386) : sci.impl.evaluator.eval.call(null,G__54385,G__54386));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg54016 \x3d (function (){var G__54388 \x3d ctx;\nvar G__54389 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54388,G__54389) : sci.impl.evaluator.eval.call(null,G__54388,G__54389));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg54017 \x3d (function (){var G__54390 \x3d ctx;\nvar G__54391 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54390,G__54391) : sci.impl.evaluator.eval.call(null,G__54390,G__54391));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg54018 \x3d (function (){var G__54393 \x3d ctx;\nvar G__54394 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54393,G__54394) : sci.impl.evaluator.eval.call(null,G__54393,G__54394));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg54019 \x3d (function (){var G__54395 \x3d ctx;\nvar G__54396 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54395,G__54396) : sci.impl.evaluator.eval.call(null,G__54395,G__54396));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg54020 \x3d (function (){var G__54398 \x3d ctx;\nvar G__54399 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54398,G__54399) : sci.impl.evaluator.eval.call(null,G__54398,G__54399));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nvar arg54021 \x3d (function (){var G__54400 \x3d ctx;\nvar G__54401 \x3d cljs.core.first(args__$13);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54400,G__54401) : sci.impl.evaluator.eval.call(null,G__54400,G__54401));\n})();\nvar args__$14 \x3d cljs.core.rest(args__$13);\nvar arg54022 \x3d (function (){var G__54403 \x3d ctx;\nvar G__54404 \x3d cljs.core.first(args__$14);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54403,G__54404) : sci.impl.evaluator.eval.call(null,G__54403,G__54404));\n})();\nvar args__$15 \x3d cljs.core.rest(args__$14);\nreturn (f.cljs$core$IFn$_invoke$arity$15 ? f.cljs$core$IFn$_invoke$arity$15(arg54008,arg54009,arg54010,arg54011,arg54012,arg54013,arg54014,arg54015,arg54016,arg54017,arg54018,arg54019,arg54020,arg54021,arg54022) : f.call(null,arg54008,arg54009,arg54010,arg54011,arg54012,arg54013,arg54014,arg54015,arg54016,arg54017,arg54018,arg54019,arg54020,arg54021,arg54022));\n\nbreak;\ncase (16):\nvar arg54023 \x3d (function (){var G__54407 \x3d ctx;\nvar G__54408 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54407,G__54408) : sci.impl.evaluator.eval.call(null,G__54407,G__54408));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg54024 \x3d (function (){var G__54409 \x3d ctx;\nvar G__54410 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54409,G__54410) : sci.impl.evaluator.eval.call(null,G__54409,G__54410));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg54025 \x3d (function (){var G__54411 \x3d ctx;\nvar G__54412 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54411,G__54412) : sci.impl.evaluator.eval.call(null,G__54411,G__54412));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg54026 \x3d (function (){var G__54413 \x3d ctx;\nvar G__54414 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54413,G__54414) : sci.impl.evaluator.eval.call(null,G__54413,G__54414));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg54027 \x3d (function (){var G__54415 \x3d ctx;\nvar G__54416 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54415,G__54416) : sci.impl.evaluator.eval.call(null,G__54415,G__54416));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg54028 \x3d (function (){var G__54417 \x3d ctx;\nvar G__54418 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54417,G__54418) : sci.impl.evaluator.eval.call(null,G__54417,G__54418));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg54029 \x3d (function (){var G__54421 \x3d ctx;\nvar G__54422 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54421,G__54422) : sci.impl.evaluator.eval.call(null,G__54421,G__54422));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg54030 \x3d (function (){var G__54423 \x3d ctx;\nvar G__54424 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54423,G__54424) : sci.impl.evaluator.eval.call(null,G__54423,G__54424));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg54031 \x3d (function (){var G__54425 \x3d ctx;\nvar G__54426 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54425,G__54426) : sci.impl.evaluator.eval.call(null,G__54425,G__54426));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg54032 \x3d (function (){var G__54427 \x3d ctx;\nvar G__54428 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54427,G__54428) : sci.impl.evaluator.eval.call(null,G__54427,G__54428));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg54033 \x3d (function (){var G__54429 \x3d ctx;\nvar G__54430 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54429,G__54430) : sci.impl.evaluator.eval.call(null,G__54429,G__54430));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg54034 \x3d (function (){var G__54433 \x3d ctx;\nvar G__54434 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54433,G__54434) : sci.impl.evaluator.eval.call(null,G__54433,G__54434));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg54035 \x3d (function (){var G__54435 \x3d ctx;\nvar G__54436 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54435,G__54436) : sci.impl.evaluator.eval.call(null,G__54435,G__54436));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nvar arg54036 \x3d (function (){var G__54437 \x3d ctx;\nvar G__54438 \x3d cljs.core.first(args__$13);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54437,G__54438) : sci.impl.evaluator.eval.call(null,G__54437,G__54438));\n})();\nvar args__$14 \x3d cljs.core.rest(args__$13);\nvar arg54037 \x3d (function (){var G__54439 \x3d ctx;\nvar G__54440 \x3d cljs.core.first(args__$14);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54439,G__54440) : sci.impl.evaluator.eval.call(null,G__54439,G__54440));\n})();\nvar args__$15 \x3d cljs.core.rest(args__$14);\nvar arg54038 \x3d (function (){var G__54442 \x3d ctx;\nvar G__54443 \x3d cljs.core.first(args__$15);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54442,G__54443) : sci.impl.evaluator.eval.call(null,G__54442,G__54443));\n})();\nvar args__$16 \x3d cljs.core.rest(args__$15);\nreturn (f.cljs$core$IFn$_invoke$arity$16 ? f.cljs$core$IFn$_invoke$arity$16(arg54023,arg54024,arg54025,arg54026,arg54027,arg54028,arg54029,arg54030,arg54031,arg54032,arg54033,arg54034,arg54035,arg54036,arg54037,arg54038) : f.call(null,arg54023,arg54024,arg54025,arg54026,arg54027,arg54028,arg54029,arg54030,arg54031,arg54032,arg54033,arg54034,arg54035,arg54036,arg54037,arg54038));\n\nbreak;\ncase (17):\nvar arg54039 \x3d (function (){var G__54445 \x3d ctx;\nvar G__54446 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54445,G__54446) : sci.impl.evaluator.eval.call(null,G__54445,G__54446));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg54040 \x3d (function (){var G__54447 \x3d ctx;\nvar G__54448 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54447,G__54448) : sci.impl.evaluator.eval.call(null,G__54447,G__54448));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg54041 \x3d (function (){var G__54451 \x3d ctx;\nvar G__54452 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54451,G__54452) : sci.impl.evaluator.eval.call(null,G__54451,G__54452));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg54042 \x3d (function (){var G__54453 \x3d ctx;\nvar G__54454 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54453,G__54454) : sci.impl.evaluator.eval.call(null,G__54453,G__54454));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg54043 \x3d (function (){var G__54457 \x3d ctx;\nvar G__54458 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54457,G__54458) : sci.impl.evaluator.eval.call(null,G__54457,G__54458));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg54044 \x3d (function (){var G__54459 \x3d ctx;\nvar G__54460 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54459,G__54460) : sci.impl.evaluator.eval.call(null,G__54459,G__54460));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg54045 \x3d (function (){var G__54461 \x3d ctx;\nvar G__54462 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54461,G__54462) : sci.impl.evaluator.eval.call(null,G__54461,G__54462));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg54046 \x3d (function (){var G__54463 \x3d ctx;\nvar G__54464 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54463,G__54464) : sci.impl.evaluator.eval.call(null,G__54463,G__54464));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg54047 \x3d (function (){var G__54465 \x3d ctx;\nvar G__54466 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54465,G__54466) : sci.impl.evaluator.eval.call(null,G__54465,G__54466));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg54048 \x3d (function (){var G__54468 \x3d ctx;\nvar G__54469 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54468,G__54469) : sci.impl.evaluator.eval.call(null,G__54468,G__54469));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg54049 \x3d (function (){var G__54470 \x3d ctx;\nvar G__54471 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54470,G__54471) : sci.impl.evaluator.eval.call(null,G__54470,G__54471));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg54050 \x3d (function (){var G__54472 \x3d ctx;\nvar G__54473 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54472,G__54473) : sci.impl.evaluator.eval.call(null,G__54472,G__54473));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg54051 \x3d (function (){var G__54475 \x3d ctx;\nvar G__54476 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54475,G__54476) : sci.impl.evaluator.eval.call(null,G__54475,G__54476));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nvar arg54052 \x3d (function (){var G__54477 \x3d ctx;\nvar G__54478 \x3d cljs.core.first(args__$13);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54477,G__54478) : sci.impl.evaluator.eval.call(null,G__54477,G__54478));\n})();\nvar args__$14 \x3d cljs.core.rest(args__$13);\nvar arg54053 \x3d (function (){var G__54480 \x3d ctx;\nvar G__54481 \x3d cljs.core.first(args__$14);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54480,G__54481) : sci.impl.evaluator.eval.call(null,G__54480,G__54481));\n})();\nvar args__$15 \x3d cljs.core.rest(args__$14);\nvar arg54054 \x3d (function (){var G__54482 \x3d ctx;\nvar G__54483 \x3d cljs.core.first(args__$15);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54482,G__54483) : sci.impl.evaluator.eval.call(null,G__54482,G__54483));\n})();\nvar args__$16 \x3d cljs.core.rest(args__$15);\nvar arg54055 \x3d (function (){var G__54484 \x3d ctx;\nvar G__54485 \x3d cljs.core.first(args__$16);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54484,G__54485) : sci.impl.evaluator.eval.call(null,G__54484,G__54485));\n})();\nvar args__$17 \x3d cljs.core.rest(args__$16);\nreturn (f.cljs$core$IFn$_invoke$arity$17 ? f.cljs$core$IFn$_invoke$arity$17(arg54039,arg54040,arg54041,arg54042,arg54043,arg54044,arg54045,arg54046,arg54047,arg54048,arg54049,arg54050,arg54051,arg54052,arg54053,arg54054,arg54055) : f.call(null,arg54039,arg54040,arg54041,arg54042,arg54043,arg54044,arg54045,arg54046,arg54047,arg54048,arg54049,arg54050,arg54051,arg54052,arg54053,arg54054,arg54055));\n\nbreak;\ncase (18):\nvar arg54056 \x3d (function (){var G__54487 \x3d ctx;\nvar G__54488 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54487,G__54488) : sci.impl.evaluator.eval.call(null,G__54487,G__54488));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg54057 \x3d (function (){var G__54490 \x3d ctx;\nvar G__54491 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54490,G__54491) : sci.impl.evaluator.eval.call(null,G__54490,G__54491));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg54058 \x3d (function (){var G__54492 \x3d ctx;\nvar G__54493 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54492,G__54493) : sci.impl.evaluator.eval.call(null,G__54492,G__54493));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg54059 \x3d (function (){var G__54494 \x3d ctx;\nvar G__54495 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54494,G__54495) : sci.impl.evaluator.eval.call(null,G__54494,G__54495));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg54060 \x3d (function (){var G__54496 \x3d ctx;\nvar G__54497 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54496,G__54497) : sci.impl.evaluator.eval.call(null,G__54496,G__54497));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg54061 \x3d (function (){var G__54498 \x3d ctx;\nvar G__54499 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54498,G__54499) : sci.impl.evaluator.eval.call(null,G__54498,G__54499));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg54062 \x3d (function (){var G__54502 \x3d ctx;\nvar G__54503 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54502,G__54503) : sci.impl.evaluator.eval.call(null,G__54502,G__54503));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg54063 \x3d (function (){var G__54504 \x3d ctx;\nvar G__54505 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54504,G__54505) : sci.impl.evaluator.eval.call(null,G__54504,G__54505));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg54064 \x3d (function (){var G__54507 \x3d ctx;\nvar G__54508 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54507,G__54508) : sci.impl.evaluator.eval.call(null,G__54507,G__54508));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg54065 \x3d (function (){var G__54510 \x3d ctx;\nvar G__54511 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54510,G__54511) : sci.impl.evaluator.eval.call(null,G__54510,G__54511));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg54066 \x3d (function (){var G__54512 \x3d ctx;\nvar G__54513 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54512,G__54513) : sci.impl.evaluator.eval.call(null,G__54512,G__54513));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg54067 \x3d (function (){var G__54515 \x3d ctx;\nvar G__54516 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54515,G__54516) : sci.impl.evaluator.eval.call(null,G__54515,G__54516));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg54068 \x3d (function (){var G__54519 \x3d ctx;\nvar G__54520 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54519,G__54520) : sci.impl.evaluator.eval.call(null,G__54519,G__54520));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nvar arg54069 \x3d (function (){var G__54521 \x3d ctx;\nvar G__54522 \x3d cljs.core.first(args__$13);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54521,G__54522) : sci.impl.evaluator.eval.call(null,G__54521,G__54522));\n})();\nvar args__$14 \x3d cljs.core.rest(args__$13);\nvar arg54070 \x3d (function (){var G__54524 \x3d ctx;\nvar G__54525 \x3d cljs.core.first(args__$14);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54524,G__54525) : sci.impl.evaluator.eval.call(null,G__54524,G__54525));\n})();\nvar args__$15 \x3d cljs.core.rest(args__$14);\nvar arg54071 \x3d (function (){var G__54526 \x3d ctx;\nvar G__54527 \x3d cljs.core.first(args__$15);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54526,G__54527) : sci.impl.evaluator.eval.call(null,G__54526,G__54527));\n})();\nvar args__$16 \x3d cljs.core.rest(args__$15);\nvar arg54072 \x3d (function (){var G__54528 \x3d ctx;\nvar G__54529 \x3d cljs.core.first(args__$16);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54528,G__54529) : sci.impl.evaluator.eval.call(null,G__54528,G__54529));\n})();\nvar args__$17 \x3d cljs.core.rest(args__$16);\nvar arg54073 \x3d (function (){var G__54530 \x3d ctx;\nvar G__54531 \x3d cljs.core.first(args__$17);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54530,G__54531) : sci.impl.evaluator.eval.call(null,G__54530,G__54531));\n})();\nvar args__$18 \x3d cljs.core.rest(args__$17);\nreturn (f.cljs$core$IFn$_invoke$arity$18 ? f.cljs$core$IFn$_invoke$arity$18(arg54056,arg54057,arg54058,arg54059,arg54060,arg54061,arg54062,arg54063,arg54064,arg54065,arg54066,arg54067,arg54068,arg54069,arg54070,arg54071,arg54072,arg54073) : f.call(null,arg54056,arg54057,arg54058,arg54059,arg54060,arg54061,arg54062,arg54063,arg54064,arg54065,arg54066,arg54067,arg54068,arg54069,arg54070,arg54071,arg54072,arg54073));\n\nbreak;\ncase (19):\nvar arg54074 \x3d (function (){var G__54536 \x3d ctx;\nvar G__54537 \x3d cljs.core.first(args);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54536,G__54537) : sci.impl.evaluator.eval.call(null,G__54536,G__54537));\n})();\nvar args__$1 \x3d cljs.core.rest(args);\nvar arg54075 \x3d (function (){var G__54538 \x3d ctx;\nvar G__54539 \x3d cljs.core.first(args__$1);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54538,G__54539) : sci.impl.evaluator.eval.call(null,G__54538,G__54539));\n})();\nvar args__$2 \x3d cljs.core.rest(args__$1);\nvar arg54076 \x3d (function (){var G__54540 \x3d ctx;\nvar G__54541 \x3d cljs.core.first(args__$2);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54540,G__54541) : sci.impl.evaluator.eval.call(null,G__54540,G__54541));\n})();\nvar args__$3 \x3d cljs.core.rest(args__$2);\nvar arg54077 \x3d (function (){var G__54542 \x3d ctx;\nvar G__54543 \x3d cljs.core.first(args__$3);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54542,G__54543) : sci.impl.evaluator.eval.call(null,G__54542,G__54543));\n})();\nvar args__$4 \x3d cljs.core.rest(args__$3);\nvar arg54078 \x3d (function (){var G__54544 \x3d ctx;\nvar G__54545 \x3d cljs.core.first(args__$4);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54544,G__54545) : sci.impl.evaluator.eval.call(null,G__54544,G__54545));\n})();\nvar args__$5 \x3d cljs.core.rest(args__$4);\nvar arg54079 \x3d (function (){var G__54547 \x3d ctx;\nvar G__54548 \x3d cljs.core.first(args__$5);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54547,G__54548) : sci.impl.evaluator.eval.call(null,G__54547,G__54548));\n})();\nvar args__$6 \x3d cljs.core.rest(args__$5);\nvar arg54080 \x3d (function (){var G__54549 \x3d ctx;\nvar G__54550 \x3d cljs.core.first(args__$6);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54549,G__54550) : sci.impl.evaluator.eval.call(null,G__54549,G__54550));\n})();\nvar args__$7 \x3d cljs.core.rest(args__$6);\nvar arg54081 \x3d (function (){var G__54551 \x3d ctx;\nvar G__54552 \x3d cljs.core.first(args__$7);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54551,G__54552) : sci.impl.evaluator.eval.call(null,G__54551,G__54552));\n})();\nvar args__$8 \x3d cljs.core.rest(args__$7);\nvar arg54082 \x3d (function (){var G__54553 \x3d ctx;\nvar G__54554 \x3d cljs.core.first(args__$8);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54553,G__54554) : sci.impl.evaluator.eval.call(null,G__54553,G__54554));\n})();\nvar args__$9 \x3d cljs.core.rest(args__$8);\nvar arg54083 \x3d (function (){var G__54555 \x3d ctx;\nvar G__54556 \x3d cljs.core.first(args__$9);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54555,G__54556) : sci.impl.evaluator.eval.call(null,G__54555,G__54556));\n})();\nvar args__$10 \x3d cljs.core.rest(args__$9);\nvar arg54084 \x3d (function (){var G__54557 \x3d ctx;\nvar G__54558 \x3d cljs.core.first(args__$10);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54557,G__54558) : sci.impl.evaluator.eval.call(null,G__54557,G__54558));\n})();\nvar args__$11 \x3d cljs.core.rest(args__$10);\nvar arg54085 \x3d (function (){var G__54561 \x3d ctx;\nvar G__54562 \x3d cljs.core.first(args__$11);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54561,G__54562) : sci.impl.evaluator.eval.call(null,G__54561,G__54562));\n})();\nvar args__$12 \x3d cljs.core.rest(args__$11);\nvar arg54086 \x3d (function (){var G__54564 \x3d ctx;\nvar G__54565 \x3d cljs.core.first(args__$12);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54564,G__54565) : sci.impl.evaluator.eval.call(null,G__54564,G__54565));\n})();\nvar args__$13 \x3d cljs.core.rest(args__$12);\nvar arg54087 \x3d (function (){var G__54566 \x3d ctx;\nvar G__54567 \x3d cljs.core.first(args__$13);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54566,G__54567) : sci.impl.evaluator.eval.call(null,G__54566,G__54567));\n})();\nvar args__$14 \x3d cljs.core.rest(args__$13);\nvar arg54088 \x3d (function (){var G__54568 \x3d ctx;\nvar G__54569 \x3d cljs.core.first(args__$14);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54568,G__54569) : sci.impl.evaluator.eval.call(null,G__54568,G__54569));\n})();\nvar args__$15 \x3d cljs.core.rest(args__$14);\nvar arg54089 \x3d (function (){var G__54570 \x3d ctx;\nvar G__54571 \x3d cljs.core.first(args__$15);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54570,G__54571) : sci.impl.evaluator.eval.call(null,G__54570,G__54571));\n})();\nvar args__$16 \x3d cljs.core.rest(args__$15);\nvar arg54090 \x3d (function (){var G__54574 \x3d ctx;\nvar G__54575 \x3d cljs.core.first(args__$16);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54574,G__54575) : sci.impl.evaluator.eval.call(null,G__54574,G__54575));\n})();\nvar args__$17 \x3d cljs.core.rest(args__$16);\nvar arg54091 \x3d (function (){var G__54577 \x3d ctx;\nvar G__54578 \x3d cljs.core.first(args__$17);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54577,G__54578) : sci.impl.evaluator.eval.call(null,G__54577,G__54578));\n})();\nvar args__$18 \x3d cljs.core.rest(args__$17);\nvar arg54092 \x3d (function (){var G__54579 \x3d ctx;\nvar G__54580 \x3d cljs.core.first(args__$18);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54579,G__54580) : sci.impl.evaluator.eval.call(null,G__54579,G__54580));\n})();\nvar args__$19 \x3d cljs.core.rest(args__$18);\nreturn (f.cljs$core$IFn$_invoke$arity$19 ? f.cljs$core$IFn$_invoke$arity$19(arg54074,arg54075,arg54076,arg54077,arg54078,arg54079,arg54080,arg54081,arg54082,arg54083,arg54084,arg54085,arg54086,arg54087,arg54088,arg54089,arg54090,arg54091,arg54092) : f.call(null,arg54074,arg54075,arg54076,arg54077,arg54078,arg54079,arg54080,arg54081,arg54082,arg54083,arg54084,arg54085,arg54086,arg54087,arg54088,arg54089,arg54090,arg54091,arg54092));\n\nbreak;\ndefault:\nvar args__$1 \x3d cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((function (p1__53516_SHARP_){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,p1__53516_SHARP_) : sci.impl.evaluator.eval.call(null,ctx,p1__53516_SHARP_));\n}),args);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args__$1);\n\n}\n});\nsci.impl.evaluator.eval_special_call \x3d (function sci$impl$evaluator$eval_special_call(ctx,f_sym,expr){\nvar G__54582 \x3d sci.impl.utils.strip_core_ns(f_sym);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),G__54582)){\nreturn sci.impl.evaluator.eval_instance_method_invocation(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22and\x22,\x22and\x22,668631710,null),G__54582)){\nreturn sci.impl.evaluator.eval_and(ctx,cljs.core.rest(expr));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22import\x22,\x22import\x22,241030818,null),G__54582)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(sci.impl.evaluator.eval_import,ctx,cljs.core.rest(expr));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22case\x22,\x22case\x22,-1510733573,null),G__54582)){\nreturn sci.impl.evaluator.eval_case(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),G__54582)){\nreturn cljs.core.second(expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22in-ns\x22,\x22in-ns\x22,-2089468466,null),G__54582)){\nreturn sci.impl.evaluator.eval_in_ns(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22use\x22,\x22use\x22,-205850897,null),G__54582)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(sci.impl.load.eval_use,ctx,cljs.core.with_meta(cljs.core.rest(expr),cljs.core.meta(expr)));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),G__54582)){\nreturn sci.impl.evaluator.eval_set_BANG_(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22require\x22,\x22require\x22,1172530194,null),G__54582)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(sci.impl.load.eval_require,ctx,cljs.core.with_meta(cljs.core.rest(expr),cljs.core.meta(expr)));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),G__54582)){\nreturn sci.impl.evaluator.eval_constructor_invocation(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22refer\x22,\x22refer\x22,676235974,null),G__54582)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(sci.impl.load.eval_refer,ctx,cljs.core.rest(expr));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22lazy-seq\x22,\x22lazy-seq\x22,489632906,null),G__54582)){\nreturn (new cljs.core.LazySeq(null,(function (){var G__54584 \x3d ctx;\nvar G__54585 \x3d cljs.core.second(expr);\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(G__54584,G__54585) : sci.impl.evaluator.eval.call(null,G__54584,G__54585));\n})(),null,null));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),G__54582)){\nreturn sci.impl.evaluator.eval_throw(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),G__54582)){\nreturn sci.impl.evaluator.eval_try(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22or\x22,\x22or\x22,1876275696,null),G__54582)){\nreturn sci.impl.evaluator.eval_or(ctx,cljs.core.rest(expr));\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__54582)].join(\x27\x27)));\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nsci.impl.evaluator.eval_call \x3d (function sci$impl$evaluator$eval_call(ctx,expr){\ntry{var f \x3d cljs.core.first(expr);\nvar eval_QMARK_ \x3d (f instanceof sci.impl.types.EvalFn);\nvar op \x3d ((eval_QMARK_)?null:(function (){var G__54589 \x3d cljs.core.meta(f);\nif((G__54589 \x3d\x3d null)){\nreturn null;\n} else {\nreturn G__54589.get(new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978));\n}\n})());\nif((((f instanceof cljs.core.Symbol)) \x26\x26 (cljs.core.not(op)))){\nreturn sci.impl.evaluator.eval_special_call(ctx,f,expr);\n} else {\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(op,new cljs.core.Keyword(null,\x22static-access\x22,\x22static-access\x22,-1860919441)) : sci.impl.utils.kw_identical_QMARK_.call(null,op,new cljs.core.Keyword(null,\x22static-access\x22,\x22static-access\x22,-1860919441))))){\nreturn sci.impl.evaluator.eval_static_method_invocation(ctx,expr);\n} else {\nvar f__$1 \x3d (cljs.core.truth_((function (){var or__4160__auto__ \x3d op;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn eval_QMARK_;\n}\n})())?(sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,f) : sci.impl.evaluator.eval.call(null,ctx,f)):f);\nif(cljs.core.ifn_QMARK_(f__$1)){\nreturn sci.impl.evaluator.fn_call(ctx,f__$1,cljs.core.rest(expr));\n} else {\nthrow (new Error([\x22Cannot call \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([f__$1], 0)),\x22 as a function.\x22].join(\x27\x27)));\n}\n\n}\n}\n}catch (e54588){if((e54588 instanceof Error)){\nvar e \x3d e54588;\nreturn sci.impl.utils.rethrow_with_location_of_node(ctx,e,expr);\n} else {\nthrow e54588;\n\n}\n}});\nsci.impl.evaluator.handle_meta \x3d (function sci$impl$evaluator$handle_meta(ctx,m){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2((function (){var temp__5751__auto__ \x3d cljs.core.meta(m);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar mm \x3d temp__5751__auto__;\nif(cljs.core.truth_((cljs.core.truth_(mm)?mm.get(new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978)):null))){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,m) : sci.impl.evaluator.eval.call(null,ctx,m));\n} else {\nreturn m;\n}\n} else {\nreturn m;\n}\n})(),new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978));\n});\nsci.impl.evaluator.eval \x3d (function sci$impl$evaluator$eval(ctx,expr){\ntry{if((expr instanceof sci.impl.types.EvalFn)){\nvar f \x3d expr.f;\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(ctx) : f.call(null,ctx));\n} else {\nif((expr instanceof sci.impl.types.EvalVar)){\nvar v \x3d expr.v;\nreturn cljs.core._deref(v);\n} else {\nvar m \x3d cljs.core.meta(expr);\nvar op \x3d (cljs.core.truth_(m)?m.get(new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978)):null);\nvar ret \x3d ((cljs.core.not(op))?expr:(function (){var G__54605 \x3d op;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22call\x22,\x22call\x22,-519999866),G__54605)){\nreturn sci.impl.evaluator.eval_call(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22try\x22,\x22try\x22,1380742522),G__54605)){\nreturn sci.impl.evaluator.eval_try(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),G__54605)){\nvar fn_meta \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-meta\x22,\x22sci.impl/fn-meta\x22,1093684639).cljs$core$IFn$_invoke$arity$1(expr);\nvar the_fn \x3d sci.impl.fns.eval_fn(ctx,sci.impl.evaluator.eval,expr);\nvar fn_meta__$1 \x3d (cljs.core.truth_(fn_meta)?sci.impl.evaluator.handle_meta(ctx,fn_meta):null);\nif(cljs.core.truth_(fn_meta__$1)){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$3(the_fn,cljs.core.merge,fn_meta__$1);\n} else {\nreturn the_fn;\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22static-access\x22,\x22static-access\x22,-1860919441),G__54605)){\nreturn sci.impl.interop.get_static_field(expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22deref!\x22,\x22deref!\x22,153059469),G__54605)){\nvar v \x3d cljs.core.first(expr);\nvar v__$1 \x3d ((sci.impl.vars.var_QMARK_(v))?cljs.core.deref(v):v);\nvar v__$2 \x3d cljs.core.force(v__$1);\nreturn v__$2;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22resolve-sym\x22,\x22resolve-sym\x22,-1193683260),G__54605)){\nreturn ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22needs-ctx\x22,\x22needs-ctx\x22,1605017124,null),G__54605)){\nif((op \x3d\x3d\x3d sci.impl.utils.needs_ctx)){\nreturn cljs.core.partial.cljs$core$IFn$_invoke$arity$2(expr,ctx);\n} else {\nthrow (new Error([\x22unexpected: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr),\x22, type: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type(expr)),\x22, meta:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.meta(expr))].join(\x27\x27)));\n}\n} else {\nif(cljs.core.map_QMARK_(expr)){\nreturn cljs.core.with_meta(cljs.core.zipmap(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__54598_SHARP_){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,p1__54598_SHARP_) : sci.impl.evaluator.eval.call(null,ctx,p1__54598_SHARP_));\n}),cljs.core.keys(expr)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__54599_SHARP_){\nreturn (sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2 ? sci.impl.evaluator.eval.cljs$core$IFn$_invoke$arity$2(ctx,p1__54599_SHARP_) : sci.impl.evaluator.eval.call(null,ctx,p1__54599_SHARP_));\n}),cljs.core.vals(expr))),sci.impl.evaluator.handle_meta(ctx,m));\n} else {\nthrow (new Error([\x22unexpected: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr),\x22, type: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.type(expr)),\x22, meta:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.meta(expr))].join(\x27\x27)));\n\n}\n\n}\n}\n}\n}\n}\n}\n}\n})());\nreturn ret;\n\n}\n}\n}catch (e54600){if((e54600 instanceof Error)){\nvar e \x3d e54600;\nreturn sci.impl.utils.rethrow_with_location_of_node(ctx,e,expr);\n} else {\nthrow e54600;\n\n}\n}});\ncljs.core.vreset_BANG_(sci.impl.utils.eval_STAR_,sci.impl.evaluator.eval);\n");
SHADOW_ENV.evalLoad("sci.impl.for_macro.js", true , "goog.provide(\x27sci.impl.for_macro\x27);\nsci.impl.for_macro.assert_args \x3d (function sci$impl$for_macro$assert_args(expr,seq_exprs,_body_expr){\nvar arg_count_50653 \x3d (cljs.core.count(expr) - (1));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),arg_count_50653)){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2([\x22Wrong number of args (\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arg_count_50653),\x22) passed to: clojure.core/for\x22].join(\x27\x27),expr);\n}\n\nif(cljs.core.vector_QMARK_(seq_exprs)){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22for requires a vector for its binding\x22,expr);\n}\n\nif(cljs.core.even_QMARK_(cljs.core.count(seq_exprs))){\nreturn null;\n} else {\nreturn sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22for requires an even number of forms in binding vector\x22,expr);\n}\n});\nsci.impl.for_macro.expand_for \x3d (function sci$impl$for_macro$expand_for(_,p__50405){\nvar vec__50406 \x3d p__50405;\nvar ___$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50406,(0),null);\nvar seq_exprs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50406,(1),null);\nvar body_expr \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50406,(2),null);\nvar expr \x3d vec__50406;\nsci.impl.for_macro.assert_args(expr,seq_exprs,body_expr);\n\nvar to_groups \x3d (function (seq_exprs__$1){\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (groups,p__50417){\nvar vec__50421 \x3d p__50417;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50421,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50421,(1),null);\nif((k instanceof cljs.core.Keyword)){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.pop(groups),cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.peek(groups),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null)));\n} else {\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(groups,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null));\n}\n}),cljs.core.PersistentVector.EMPTY,cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),seq_exprs__$1));\n});\nvar err \x3d (function() { \nvar G__50668__delegate \x3d function (msg){\nthrow (new Error(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.str,msg)));\n};\nvar G__50668 \x3d function (var_args){\nvar msg \x3d null;\nif (arguments.length \x3e 0) {\nvar G__50669__i \x3d 0, G__50669__a \x3d new Array(arguments.length -  0);\nwhile (G__50669__i \x3c G__50669__a.length) {G__50669__a[G__50669__i] \x3d arguments[G__50669__i + 0]; ++G__50669__i;}\n  msg \x3d new cljs.core.IndexedSeq(G__50669__a,0,null);\n} \nreturn G__50668__delegate.call(this,msg);};\nG__50668.cljs$lang$maxFixedArity \x3d 0;\nG__50668.cljs$lang$applyTo \x3d (function (arglist__50671){\nvar msg \x3d cljs.core.seq(arglist__50671);\nreturn G__50668__delegate(msg);\n});\nG__50668.cljs$core$IFn$_invoke$arity$variadic \x3d G__50668__delegate;\nreturn G__50668;\n})()\n;\nvar emit_bind \x3d (function sci$impl$for_macro$expand_for_$_emit_bind(p__50447){\nvar vec__50450 \x3d p__50447;\nvar seq__50451 \x3d cljs.core.seq(vec__50450);\nvar first__50452 \x3d cljs.core.first(seq__50451);\nvar seq__50451__$1 \x3d cljs.core.next(seq__50451);\nvar vec__50453 \x3d first__50452;\nvar seq__50454 \x3d cljs.core.seq(vec__50453);\nvar first__50455 \x3d cljs.core.first(seq__50454);\nvar seq__50454__$1 \x3d cljs.core.next(seq__50454);\nvar bind \x3d first__50455;\nvar first__50455__$1 \x3d cljs.core.first(seq__50454__$1);\nvar seq__50454__$2 \x3d cljs.core.next(seq__50454__$1);\nvar expr__$1 \x3d first__50455__$1;\nvar mod_pairs \x3d seq__50454__$2;\nvar vec__50456 \x3d seq__50451__$1;\nvar vec__50459 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50456,(0),null);\nvar ___$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50459,(0),null);\nvar next_expr \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50459,(1),null);\nvar next_groups \x3d vec__50456;\nvar giter \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22iter__\x22);\nvar gxs \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22s__\x22);\nvar do_mod \x3d (function sci$impl$for_macro$expand_for_$_emit_bind_$_do_mod(p__50477){\nvar vec__50483 \x3d p__50477;\nvar seq__50484 \x3d cljs.core.seq(vec__50483);\nvar first__50485 \x3d cljs.core.first(seq__50484);\nvar seq__50484__$1 \x3d cljs.core.next(seq__50484);\nvar vec__50486 \x3d first__50485;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50486,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50486,(1),null);\nvar pair \x3d vec__50486;\nvar etc \x3d seq__50484__$1;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22let\x22,\x22let\x22,-1282412701))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind_$_do_mod(etc),null,(1),null))], 0))));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22while\x22,\x22while\x22,963117786))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind_$_do_mod(etc),null,(1),null))], 0))));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22when\x22,\x22when\x22,-576417306))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind_$_do_mod(etc),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22rest\x22,\x22cljs.core/rest\x22,-285075455,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null))))),null,(1),null))], 0))));\n} else {\nif((k instanceof cljs.core.Keyword)){\nreturn err(\x22Invalid \x27for\x27 keyword \x22,k);\n} else {\nif(next_groups){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22iterys__50389__auto__\x22,\x22iterys__50389__auto__\x22,-740622799,null),null,(1),null)),(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind(next_groups),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22fs__50390__auto__\x22,\x22fs__50390__auto__\x22,-152144801,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22seq\x22,\x22cljs.core/seq\x22,-1649497689,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22iterys__50389__auto__\x22,\x22iterys__50389__auto__\x22,-740622799,null),null,(1),null)),(new cljs.core.List(null,next_expr,null,(1),null))))),null,(1),null))))),null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22fs__50390__auto__\x22,\x22fs__50390__auto__\x22,-152144801,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22concat\x22,\x22cljs.core/concat\x22,-1133584918,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22fs__50390__auto__\x22,\x22fs__50390__auto__\x22,-152144801,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,giter,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22rest\x22,\x22cljs.core/rest\x22,-285075455,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22rest\x22,\x22cljs.core/rest\x22,-285075455,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n} else {\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22cons\x22,\x22cljs.core/cons\x22,96507417,null),null,(1),null)),(new cljs.core.List(null,body_expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,giter,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22rest\x22,\x22cljs.core/rest\x22,-285075455,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null))))),null,(1),null))], 0))));\n\n}\n}\n}\n}\n}\n});\nif(next_groups){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,giter,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,gxs,null,(1),null)))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22lazy-seq\x22,\x22cljs.core/lazy-seq\x22,627681297,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_loop,null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,gxs,null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when-first\x22,\x22cljs.core/when-first\x22,-667185267,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,bind,null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,do_mod(mod_pairs),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))))),null,(1),null))], 0))));\n} else {\nvar gi \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22i__\x22);\nvar gb \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22b__\x22);\nvar do_cmod \x3d (function sci$impl$for_macro$expand_for_$_emit_bind_$_do_cmod(p__50564){\nvar vec__50565 \x3d p__50564;\nvar seq__50566 \x3d cljs.core.seq(vec__50565);\nvar first__50567 \x3d cljs.core.first(seq__50566);\nvar seq__50566__$1 \x3d cljs.core.next(seq__50566);\nvar vec__50568 \x3d first__50567;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50568,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50568,(1),null);\nvar pair \x3d vec__50568;\nvar etc \x3d seq__50566__$1;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22let\x22,\x22let\x22,-1282412701))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind_$_do_cmod(etc),null,(1),null))], 0))));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22while\x22,\x22while\x22,963117786))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind_$_do_cmod(etc),null,(1),null))], 0))));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(k,new cljs.core.Keyword(null,\x22when\x22,\x22when\x22,-576417306))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,v,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,sci$impl$for_macro$expand_for_$_emit_bind_$_do_cmod(etc),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-inc\x22,\x22cljs.core/unchecked-inc\x22,-501313167,null),null,(1),null)),(new cljs.core.List(null,gi,null,(1),null))))),null,(1),null))))),null,(1),null))], 0))));\n} else {\nif((k instanceof cljs.core.Keyword)){\nreturn err(\x22Invalid \x27for\x27 keyword \x22,k);\n} else {\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-append\x22,\x22cljs.core/chunk-append\x22,-243671470,null),null,(1),null)),(new cljs.core.List(null,gb,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,body_expr,null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-inc\x22,\x22cljs.core/unchecked-inc\x22,-501313167,null),null,(1),null)),(new cljs.core.List(null,gi,null,(1),null))))),null,(1),null))))),null,(1),null))], 0))));\n\n}\n}\n}\n}\n});\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,giter,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,gxs,null,(1),null)))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22lazy-seq\x22,\x22cljs.core/lazy-seq\x22,627681297,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_loop,null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,gxs,null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,gxs,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22seq\x22,\x22cljs.core/seq\x22,-1649497689,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunked-seq?\x22,\x22cljs.core/chunked-seq?\x22,-712922369,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22c__50394__auto__\x22,\x22c__50394__auto__\x22,2129555264,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-first\x22,\x22cljs.core/chunk-first\x22,-1157877305,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22size__50395__auto__\x22,\x22size__50395__auto__\x22,1079440439,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22int\x22,\x22cljs.core/int\x22,20935062,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22count\x22,\x22cljs.core/count\x22,-921270233,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22c__50394__auto__\x22,\x22c__50394__auto__\x22,2129555264,null),null,(1),null))))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,gb,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-buffer\x22,\x22cljs.core/chunk-buffer\x22,14093626,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22size__50395__auto__\x22,\x22size__50395__auto__\x22,1079440439,null),null,(1),null))))),null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_loop,null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,gi,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22int\x22,\x22cljs.core/int\x22,20935062,null),null,(1),null)),(new cljs.core.List(null,(0),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3c\x22,\x22cljs.core/\x3c\x22,1677496129,null),null,(1),null)),(new cljs.core.List(null,gi,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22size__50395__auto__\x22,\x22size__50395__auto__\x22,1079440439,null),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,bind,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nth\x22,\x22cljs.core/nth\x22,1961052085,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22c__50394__auto__\x22,\x22c__50394__auto__\x22,2129555264,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,gi,null,(1),null))], 0)))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,do_cmod(mod_pairs),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,true,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-cons\x22,\x22cljs.core/chunk-cons\x22,-250075688,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk\x22,\x22cljs.core/chunk\x22,847936424,null),null,(1),null)),(new cljs.core.List(null,gb,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,giter,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-rest\x22,\x22cljs.core/chunk-rest\x22,-398161143,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-cons\x22,\x22cljs.core/chunk-cons\x22,-250075688,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk\x22,\x22cljs.core/chunk\x22,847936424,null),null,(1),null)),(new cljs.core.List(null,gb,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,null,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,bind,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22first\x22,\x22cljs.core/first\x22,-752535972,null),null,(1),null)),(new cljs.core.List(null,gxs,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,do_mod(mod_pairs),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))))),null,(1),null))], 0))));\n}\n});\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22iter__50397__auto__\x22,\x22iter__50397__auto__\x22,-821420267,null),null,(1),null)),(new cljs.core.List(null,emit_bind(to_groups(seq_exprs)),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22iter__50397__auto__\x22,\x22iter__50397__auto__\x22,-821420267,null),null,(1),null)),(new cljs.core.List(null,cljs.core.second(seq_exprs),null,(1),null))))),null,(1),null))], 0))));\n});\n");
SHADOW_ENV.evalLoad("sci.impl.resolve.js", true , "goog.provide(\x27sci.impl.resolve\x27);\nsci.impl.resolve.throw_error_with_location \x3d (function sci$impl$resolve$throw_error_with_location(msg,node){\nreturn sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$3(msg,node,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22phase\x22,\x22phase\x22,575722892),\x22analysis\x22], null));\n});\nsci.impl.resolve.mark_resolve_sym \x3d (function sci$impl$resolve$mark_resolve_sym(sym){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(sym,(function (m){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22resolve-sym\x22,\x22resolve-sym\x22,-1193683260));\n}));\n});\nsci.impl.resolve.check_permission_BANG_ \x3d (function sci$impl$resolve$check_permission_BANG_(ctx,sym,p__59807){\nvar vec__59808 \x3d p__59807;\nvar check_sym \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59808,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59808,(1),null);\nvar or__4160__auto__ \x3d (sci.impl.utils.allowed_loop \x3d\x3d\x3d sym);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (sci.impl.utils.allowed_recur \x3d\x3d\x3d sym);\nif(or__4160__auto____$1){\nreturn or__4160__auto____$1;\n} else {\nvar check_sym__$1 \x3d sci.impl.utils.strip_core_ns(check_sym);\nvar allow \x3d new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745).cljs$core$IFn$_invoke$arity$1(ctx);\nif((cljs.core.truth_(allow)?((((sci.impl.vars.var_QMARK_(v)) \x26\x26 (cljs.core.not(new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(v)))))) || (cljs.core.contains_QMARK_(allow,check_sym__$1))):true)){\n} else {\nsci.impl.resolve.throw_error_with_location([cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym),\x22 is not allowed!\x22].join(\x27\x27),sym);\n}\n\nvar deny \x3d new cljs.core.Keyword(null,\x22deny\x22,\x22deny\x22,1589338523).cljs$core$IFn$_invoke$arity$1(ctx);\nif((cljs.core.truth_(deny)?cljs.core.contains_QMARK_(deny,check_sym__$1):false)){\nreturn sci.impl.resolve.throw_error_with_location([cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym),\x22 is not allowed!\x22].join(\x27\x27),sym);\n} else {\nreturn null;\n}\n}\n}\n});\nsci.impl.resolve.lookup_STAR_ \x3d (function sci$impl$resolve$lookup_STAR_(ctx,sym,call_QMARK_){\nvar sym_ns \x3d (function (){var G__59820 \x3d cljs.core.namespace(sym);\nif((G__59820 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(G__59820);\n}\n})();\nvar sym_name \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(sym));\nvar env \x3d ctx.get(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235));\nvar env__$1 \x3d cljs.core.deref(env);\nvar cnn \x3d sci.impl.vars.current_ns_name();\nvar the_current_ns \x3d (function (){var G__59821 \x3d new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(env__$1);\nreturn (cnn.cljs$core$IFn$_invoke$arity$1 ? cnn.cljs$core$IFn$_invoke$arity$1(G__59821) : cnn.call(null,G__59821));\n})();\nvar sym_ns__$1 \x3d (cljs.core.truth_(sym_ns)?(function (){var or__4160__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(the_current_ns,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714),sym_ns], null));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sym_ns;\n}\n})():null);\nif(cljs.core.truth_(sym_ns__$1)){\nvar or__4160__auto__ \x3d ((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(sym_ns__$1,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null))) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(sym_ns__$1,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null)))))?(function (){var or__4160__auto__ \x3d (function (){var G__59830 \x3d env__$1;\nvar G__59830__$1 \x3d (((G__59830 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(G__59830));\nvar G__59830__$2 \x3d (((G__59830__$1 \x3d\x3d null))?null:cljs.core.get.cljs$core$IFn$_invoke$arity$2(G__59830__$1,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null)));\nif((G__59830__$2 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.find(G__59830__$2,sym_name);\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar temp__5753__auto__ \x3d (cljs.core.truth_(call_QMARK_)?cljs.core.get.cljs$core$IFn$_invoke$arity$2(sci.impl.utils.ana_macros,sym_name):null);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym,v], null);\n} else {\nreturn null;\n}\n}\n})():null);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (function (){var G__59832 \x3d env__$1;\nvar G__59832__$1 \x3d (((G__59832 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(G__59832));\nvar G__59832__$2 \x3d (((G__59832__$1 \x3d\x3d null))?null:(sym_ns__$1.cljs$core$IFn$_invoke$arity$1 ? sym_ns__$1.cljs$core$IFn$_invoke$arity$1(G__59832__$1) : sym_ns__$1.call(null,G__59832__$1)));\nif((G__59832__$2 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.find(G__59832__$2,sym_name);\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar temp__5753__auto__ \x3d sci.impl.interop.resolve_class(ctx,sym_ns__$1);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar clazz \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym,cljs.core.with_meta(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [clazz,sym_name], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22static-access\x22,\x22static-access\x22,-1860919441)], null))], null);\n} else {\nreturn null;\n}\n}\n}\n} else {\nvar or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_current_ns);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar refers \x3d temp__5753__auto__;\nreturn cljs.core.find(refers,sym_name);\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d cljs.core.find(the_current_ns,sym);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d (function (){var kv \x3d (function (){var G__59840 \x3d env__$1;\nvar G__59840__$1 \x3d (((G__59840 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(G__59840));\nvar G__59840__$2 \x3d (((G__59840__$1 \x3d\x3d null))?null:cljs.core.get.cljs$core$IFn$_invoke$arity$2(G__59840__$1,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null)));\nif((G__59840__$2 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.find(G__59840__$2,sym_name);\n}\n})();\nif(cljs.core.truth_((function (){var G__59844 \x3d the_current_ns;\nvar G__59844__$1 \x3d (((G__59844 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553).cljs$core$IFn$_invoke$arity$1(G__59844));\nvar G__59844__$2 \x3d (((G__59844__$1 \x3d\x3d null))?null:cljs.core.get.cljs$core$IFn$_invoke$arity$2(G__59844__$1,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null)));\nvar G__59844__$3 \x3d (((G__59844__$2 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22exclude\x22,\x22exclude\x22,-1230250334).cljs$core$IFn$_invoke$arity$1(G__59844__$2));\nif((G__59844__$3 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.contains_QMARK_(G__59844__$3,sym_name);\n}\n})())){\nreturn null;\n} else {\nreturn kv;\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d (cljs.core.truth_((cljs.core.truth_(call_QMARK_)?cljs.core.get.cljs$core$IFn$_invoke$arity$2(sci.impl.utils.ana_macros,sym):null))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym,sym], null):null);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d (function (){var temp__5753__auto__ \x3d sci.impl.interop.resolve_class(ctx,sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar c \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym,c], null);\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar temp__5753__auto__ \x3d sci.impl.records.resolve_record_or_protocol_class.cljs$core$IFn$_invoke$arity$2(ctx,sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar x \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym,x], null);\n} else {\nreturn null;\n}\n}\n}\n}\n}\n}\n}\n});\nsci.impl.resolve.tag \x3d (function sci$impl$resolve$tag(_ctx,expr){\nvar temp__5753__auto__ \x3d cljs.core.meta(expr);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar m \x3d temp__5753__auto__;\nreturn new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223).cljs$core$IFn$_invoke$arity$1(m);\n} else {\nreturn null;\n}\n});\nsci.impl.resolve.lookup \x3d (function sci$impl$resolve$lookup(ctx,sym,call_QMARK_){\nvar bindings \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar vec__59845 \x3d (function (){var or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d cljs.core.find(bindings,sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar vec__59853 \x3d temp__5753__auto__;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59853,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59853,(1),null);\nvar t \x3d sci.impl.resolve.tag(ctx,v);\nvar v__$1 \x3d sci.impl.resolve.mark_resolve_sym(k);\nvar v__$2 \x3d (cljs.core.truth_(t)?cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$4(v__$1,cljs.core.assoc,new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),t):(cljs.core.truth_(call_QMARK_)?v__$1:sci.impl.utils.ctx_fn((function (ctx__$1){\nreturn ctx__$1.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(v__$1);\n}),v__$1)));\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v__$2], null);\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar temp__5753__auto__ \x3d sci.impl.resolve.lookup_STAR_(ctx,sym,call_QMARK_);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar kv \x3d temp__5753__auto__;\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22check-permissions\x22,\x22check-permissions\x22,669054317).cljs$core$IFn$_invoke$arity$1(ctx))){\nsci.impl.resolve.check_permission_BANG_(ctx,sym,kv);\n} else {\n}\n\nreturn kv;\n} else {\nreturn null;\n}\n}\n})();\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59845,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59845,(1),null);\nvar kv \x3d vec__59845;\nvar temp__5751__auto__ \x3d ((cljs.core.not(new cljs.core.Keyword(\x22sci.impl\x22,\x22prevent-deref\x22,\x22sci.impl/prevent-deref\x22,-1401491385).cljs$core$IFn$_invoke$arity$1(ctx)))?cljs.core.meta(k):false);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar m \x3d temp__5751__auto__;\nif(cljs.core.truth_(new cljs.core.Keyword(\x22sci.impl\x22,\x22deref!\x22,\x22sci.impl/deref!\x22,599653178).cljs$core$IFn$_invoke$arity$1(m))){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,cljs.core.with_meta(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [v], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22deref!\x22,\x22deref!\x22,153059469)], null))], null);\n} else {\nreturn kv;\n}\n} else {\nreturn kv;\n}\n});\ncljs.core.vreset_BANG_(sci.impl.utils.lookup,sci.impl.resolve.lookup);\nsci.impl.resolve.resolve_symbol \x3d (function sci$impl$resolve$resolve_symbol(var_args){\nvar G__59861 \x3d arguments.length;\nswitch (G__59861) {\ncase 2:\nreturn sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,sym){\nreturn sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$3(ctx,sym,false);\n}));\n\n(sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,sym,call_QMARK_){\nvar sym__$1 \x3d sym;\nvar res \x3d cljs.core.second((function (){var or__4160__auto__ \x3d sci.impl.resolve.lookup(ctx,sym__$1,call_QMARK_);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar n \x3d cljs.core.name(sym__$1);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d call_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((clojure.string.starts_with_QMARK_(n,\x22.\x22)) \x26\x26 ((((n).length) \x3e (1))));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym__$1,new cljs.core.Symbol(null,\x22expand-dot*\x22,\x22expand-dot*\x22,-1946890561,null)], null);\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d call_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((clojure.string.ends_with_QMARK_(n,\x22.\x22)) \x26\x26 ((((n).length) \x3e (1))));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sym__$1,new cljs.core.Symbol(null,\x22expand-constructor\x22,\x22expand-constructor\x22,-343741576,null)], null);\n} else {\nif(clojure.string.starts_with_QMARK_(n,\x22\x27\x22)){\nvar v \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(n,(1)));\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [v,v], null);\n} else {\nreturn sci.impl.resolve.throw_error_with_location([\x22Could not resolve symbol: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym__$1)].join(\x27\x27),sym__$1);\n\n}\n}\n}\n}\n})());\nreturn res;\n}));\n\n(sci.impl.resolve.resolve_symbol.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("sci.impl.analyzer.js", true , "goog.provide(\x27sci.impl.analyzer\x27);\nsci.impl.analyzer.special_syms \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 13, [new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),\x22null\x22,new cljs.core.Symbol(null,\x22finally\x22,\x22finally\x22,-1065347064,null),\x22null\x22,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),\x22null\x22,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),\x22null\x22,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),\x22null\x22,new cljs.core.Symbol(null,\x22recur\x22,\x22recur\x22,1202958259,null),\x22null\x22,new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),\x22null\x22,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),\x22null\x22,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),\x22null\x22,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),\x22null\x22,new cljs.core.Symbol(null,\x22catch\x22,\x22catch\x22,-1616370245,null),\x22null\x22,new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),\x22null\x22,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),\x22null\x22], null), null);\nsci.impl.analyzer.throw_error_with_location \x3d (function sci$impl$analyzer$throw_error_with_location(msg,node){\nreturn sci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$3(msg,node,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22phase\x22,\x22phase\x22,575722892),\x22analysis\x22], null));\n});\n\n\n\nsci.impl.analyzer.macroexpand_1 \x3d (function sci$impl$analyzer$macroexpand_1(ctx,expr){\nvar original_expr \x3d expr;\nif(cljs.core.seq_QMARK_(expr)){\nvar op \x3d cljs.core.first(expr);\nif((op instanceof cljs.core.Symbol)){\nif(cljs.core.truth_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(sci.impl.analyzer.special_syms,op))){\nreturn expr;\n} else {\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22for\x22,\x22for\x22,316745208,null),null], null), null),op)){\nvar G__61393 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(\x22sci.impl\x22,\x22macroexpanding\x22,\x22sci.impl/macroexpanding\x22,2113471825),true);\nvar G__61394 \x3d expr;\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61393,G__61394) : sci.impl.analyzer.analyze.call(null,G__61393,G__61394));\n} else {\nvar f \x3d (function (){try{return sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$3(ctx,op,true);\n}catch (e61395){var _ \x3d e61395;\nreturn new cljs.core.Keyword(\x22sci.impl.analyzer\x22,\x22unresolved\x22,\x22sci.impl.analyzer/unresolved\x22,308754858);\n}})();\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.analyzer\x22,\x22unresolved\x22,\x22sci.impl.analyzer/unresolved\x22,308754858),f) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.analyzer\x22,\x22unresolved\x22,\x22sci.impl.analyzer/unresolved\x22,308754858),f)))){\nreturn expr;\n} else {\nvar f__$1 \x3d (cljs.core.truth_(((sci.impl.vars.var_QMARK_(f))?sci.impl.vars.isMacro(f):false))?cljs.core.deref(f):f);\nif(cljs.core.truth_(sci.impl.utils.macro_QMARK_(f__$1))){\nvar f__$2 \x3d (((sci.impl.utils.needs_ctx \x3d\x3d\x3d (function (){var G__61397 \x3d f__$1;\nvar G__61397__$1 \x3d (((G__61397 \x3d\x3d null))?null:cljs.core.meta(G__61397));\nif((G__61397__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978).cljs$core$IFn$_invoke$arity$1(G__61397__$1);\n}\n})()))?cljs.core.partial.cljs$core$IFn$_invoke$arity$2(f__$1,ctx):f__$1);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(f__$2,original_expr,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192).cljs$core$IFn$_invoke$arity$1(ctx),cljs.core.rest(expr));\n} else {\nreturn expr;\n}\n}\n\n}\n}\n} else {\nreturn expr;\n}\n} else {\nreturn expr;\n}\n});\nsci.impl.analyzer.macroexpand \x3d (function sci$impl$analyzer$macroexpand(ctx,form){\nvar ex \x3d sci.impl.analyzer.macroexpand_1(ctx,form);\nif((ex \x3d\x3d\x3d form)){\nreturn form;\n} else {\nreturn (sci.impl.analyzer.macroexpand.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.macroexpand.cljs$core$IFn$_invoke$arity$2(ctx,ex) : sci.impl.analyzer.macroexpand.call(null,ctx,ex));\n}\n});\ncljs.core.vreset_BANG_(sci.impl.utils.macroexpand_STAR_,sci.impl.analyzer.macroexpand);\ncljs.core.vreset_BANG_(sci.impl.utils.macroexpand_1_STAR_,sci.impl.analyzer.macroexpand_1);\nsci.impl.analyzer.return_do \x3d (function sci$impl$analyzer$return_do(expr,analyzed_children){\nvar G__61400 \x3d cljs.core.count(analyzed_children);\nswitch (G__61400) {\ncase (0):\nreturn null;\n\nbreak;\ncase (1):\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nsci.impl.evaluator.eval(ctx,arg0);\n\nreturn sci.impl.evaluator.eval(ctx,arg1);\n}),expr);\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nsci.impl.evaluator.eval(ctx,arg0);\n\nsci.impl.evaluator.eval(ctx,arg1);\n\nreturn sci.impl.evaluator.eval(ctx,arg2);\n}),expr);\n\nbreak;\ndefault:\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.evaluator.eval_do(ctx,analyzed_children);\n}),expr);\n\n}\n});\nsci.impl.analyzer.return_or \x3d (function sci$impl$analyzer$return_or(expr,analyzed_children){\nvar G__61403 \x3d cljs.core.count(analyzed_children);\nswitch (G__61403) {\ncase (0):\nreturn null;\n\nbreak;\ncase (1):\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg1);\n}\n}),expr);\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg2);\n}\n}\n}),expr);\n\nbreak;\ncase (4):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg3);\n}\n}\n}\n}),expr);\n\nbreak;\ncase (5):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg4);\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (6):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg5);\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (7):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg6);\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (8):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg7);\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (9):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg8);\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (10):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg9);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (11):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg10);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (12):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg11);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (13):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg12);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (14):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nvar or__4160__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(or__4160__auto____$12)){\nreturn or__4160__auto____$12;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg13);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (15):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nvar or__4160__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(or__4160__auto____$12)){\nreturn or__4160__auto____$12;\n} else {\nvar or__4160__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(or__4160__auto____$13)){\nreturn or__4160__auto____$13;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg14);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (16):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nvar or__4160__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(or__4160__auto____$12)){\nreturn or__4160__auto____$12;\n} else {\nvar or__4160__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(or__4160__auto____$13)){\nreturn or__4160__auto____$13;\n} else {\nvar or__4160__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(or__4160__auto____$14)){\nreturn or__4160__auto____$14;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg15);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (17):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nvar or__4160__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(or__4160__auto____$12)){\nreturn or__4160__auto____$12;\n} else {\nvar or__4160__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(or__4160__auto____$13)){\nreturn or__4160__auto____$13;\n} else {\nvar or__4160__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(or__4160__auto____$14)){\nreturn or__4160__auto____$14;\n} else {\nvar or__4160__auto____$15 \x3d sci.impl.evaluator.eval(ctx,arg15);\nif(cljs.core.truth_(or__4160__auto____$15)){\nreturn or__4160__auto____$15;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg16);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (18):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nvar or__4160__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(or__4160__auto____$12)){\nreturn or__4160__auto____$12;\n} else {\nvar or__4160__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(or__4160__auto____$13)){\nreturn or__4160__auto____$13;\n} else {\nvar or__4160__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(or__4160__auto____$14)){\nreturn or__4160__auto____$14;\n} else {\nvar or__4160__auto____$15 \x3d sci.impl.evaluator.eval(ctx,arg15);\nif(cljs.core.truth_(or__4160__auto____$15)){\nreturn or__4160__auto____$15;\n} else {\nvar or__4160__auto____$16 \x3d sci.impl.evaluator.eval(ctx,arg16);\nif(cljs.core.truth_(or__4160__auto____$16)){\nreturn or__4160__auto____$16;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg17);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ncase (19):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nvar arg18 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(18));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar or__4160__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nvar or__4160__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(or__4160__auto____$4)){\nreturn or__4160__auto____$4;\n} else {\nvar or__4160__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(or__4160__auto____$5)){\nreturn or__4160__auto____$5;\n} else {\nvar or__4160__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(or__4160__auto____$6)){\nreturn or__4160__auto____$6;\n} else {\nvar or__4160__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(or__4160__auto____$7)){\nreturn or__4160__auto____$7;\n} else {\nvar or__4160__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(or__4160__auto____$8)){\nreturn or__4160__auto____$8;\n} else {\nvar or__4160__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(or__4160__auto____$9)){\nreturn or__4160__auto____$9;\n} else {\nvar or__4160__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(or__4160__auto____$10)){\nreturn or__4160__auto____$10;\n} else {\nvar or__4160__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(or__4160__auto____$11)){\nreturn or__4160__auto____$11;\n} else {\nvar or__4160__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(or__4160__auto____$12)){\nreturn or__4160__auto____$12;\n} else {\nvar or__4160__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(or__4160__auto____$13)){\nreturn or__4160__auto____$13;\n} else {\nvar or__4160__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(or__4160__auto____$14)){\nreturn or__4160__auto____$14;\n} else {\nvar or__4160__auto____$15 \x3d sci.impl.evaluator.eval(ctx,arg15);\nif(cljs.core.truth_(or__4160__auto____$15)){\nreturn or__4160__auto____$15;\n} else {\nvar or__4160__auto____$16 \x3d sci.impl.evaluator.eval(ctx,arg16);\nif(cljs.core.truth_(or__4160__auto____$16)){\nreturn or__4160__auto____$16;\n} else {\nvar or__4160__auto____$17 \x3d sci.impl.evaluator.eval(ctx,arg17);\nif(cljs.core.truth_(or__4160__auto____$17)){\nreturn or__4160__auto____$17;\n} else {\nreturn sci.impl.evaluator.eval(ctx,arg18);\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}),expr);\n\nbreak;\ndefault:\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.evaluator.eval_or(ctx,analyzed_children);\n}),expr);\n\n}\n});\nsci.impl.analyzer.return_and \x3d (function sci$impl$analyzer$return_and(expr,analyzed_children){\nvar G__61442 \x3d cljs.core.count(analyzed_children);\nswitch (G__61442) {\ncase (0):\nreturn null;\n\nbreak;\ncase (1):\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn sci.impl.evaluator.eval(ctx,arg1);\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nreturn sci.impl.evaluator.eval(ctx,arg2);\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (4):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nreturn sci.impl.evaluator.eval(ctx,arg3);\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (5):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nreturn sci.impl.evaluator.eval(ctx,arg4);\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (6):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nreturn sci.impl.evaluator.eval(ctx,arg5);\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (7):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nreturn sci.impl.evaluator.eval(ctx,arg6);\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (8):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nreturn sci.impl.evaluator.eval(ctx,arg7);\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (9):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nreturn sci.impl.evaluator.eval(ctx,arg8);\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (10):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nreturn sci.impl.evaluator.eval(ctx,arg9);\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (11):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nreturn sci.impl.evaluator.eval(ctx,arg10);\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (12):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nreturn sci.impl.evaluator.eval(ctx,arg11);\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (13):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nreturn sci.impl.evaluator.eval(ctx,arg12);\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (14):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nvar and__4149__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(and__4149__auto____$12)){\nreturn sci.impl.evaluator.eval(ctx,arg13);\n} else {\nreturn and__4149__auto____$12;\n}\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (15):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nvar and__4149__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(and__4149__auto____$12)){\nvar and__4149__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(and__4149__auto____$13)){\nreturn sci.impl.evaluator.eval(ctx,arg14);\n} else {\nreturn and__4149__auto____$13;\n}\n} else {\nreturn and__4149__auto____$12;\n}\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (16):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nvar and__4149__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(and__4149__auto____$12)){\nvar and__4149__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(and__4149__auto____$13)){\nvar and__4149__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(and__4149__auto____$14)){\nreturn sci.impl.evaluator.eval(ctx,arg15);\n} else {\nreturn and__4149__auto____$14;\n}\n} else {\nreturn and__4149__auto____$13;\n}\n} else {\nreturn and__4149__auto____$12;\n}\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (17):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nvar and__4149__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(and__4149__auto____$12)){\nvar and__4149__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(and__4149__auto____$13)){\nvar and__4149__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(and__4149__auto____$14)){\nvar and__4149__auto____$15 \x3d sci.impl.evaluator.eval(ctx,arg15);\nif(cljs.core.truth_(and__4149__auto____$15)){\nreturn sci.impl.evaluator.eval(ctx,arg16);\n} else {\nreturn and__4149__auto____$15;\n}\n} else {\nreturn and__4149__auto____$14;\n}\n} else {\nreturn and__4149__auto____$13;\n}\n} else {\nreturn and__4149__auto____$12;\n}\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (18):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nvar and__4149__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(and__4149__auto____$12)){\nvar and__4149__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(and__4149__auto____$13)){\nvar and__4149__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(and__4149__auto____$14)){\nvar and__4149__auto____$15 \x3d sci.impl.evaluator.eval(ctx,arg15);\nif(cljs.core.truth_(and__4149__auto____$15)){\nvar and__4149__auto____$16 \x3d sci.impl.evaluator.eval(ctx,arg16);\nif(cljs.core.truth_(and__4149__auto____$16)){\nreturn sci.impl.evaluator.eval(ctx,arg17);\n} else {\nreturn and__4149__auto____$16;\n}\n} else {\nreturn and__4149__auto____$15;\n}\n} else {\nreturn and__4149__auto____$14;\n}\n} else {\nreturn and__4149__auto____$13;\n}\n} else {\nreturn and__4149__auto____$12;\n}\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ncase (19):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nvar arg18 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(18));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nvar and__4149__auto__ \x3d sci.impl.evaluator.eval(ctx,arg0);\nif(cljs.core.truth_(and__4149__auto__)){\nvar and__4149__auto____$1 \x3d sci.impl.evaluator.eval(ctx,arg1);\nif(cljs.core.truth_(and__4149__auto____$1)){\nvar and__4149__auto____$2 \x3d sci.impl.evaluator.eval(ctx,arg2);\nif(cljs.core.truth_(and__4149__auto____$2)){\nvar and__4149__auto____$3 \x3d sci.impl.evaluator.eval(ctx,arg3);\nif(cljs.core.truth_(and__4149__auto____$3)){\nvar and__4149__auto____$4 \x3d sci.impl.evaluator.eval(ctx,arg4);\nif(cljs.core.truth_(and__4149__auto____$4)){\nvar and__4149__auto____$5 \x3d sci.impl.evaluator.eval(ctx,arg5);\nif(cljs.core.truth_(and__4149__auto____$5)){\nvar and__4149__auto____$6 \x3d sci.impl.evaluator.eval(ctx,arg6);\nif(cljs.core.truth_(and__4149__auto____$6)){\nvar and__4149__auto____$7 \x3d sci.impl.evaluator.eval(ctx,arg7);\nif(cljs.core.truth_(and__4149__auto____$7)){\nvar and__4149__auto____$8 \x3d sci.impl.evaluator.eval(ctx,arg8);\nif(cljs.core.truth_(and__4149__auto____$8)){\nvar and__4149__auto____$9 \x3d sci.impl.evaluator.eval(ctx,arg9);\nif(cljs.core.truth_(and__4149__auto____$9)){\nvar and__4149__auto____$10 \x3d sci.impl.evaluator.eval(ctx,arg10);\nif(cljs.core.truth_(and__4149__auto____$10)){\nvar and__4149__auto____$11 \x3d sci.impl.evaluator.eval(ctx,arg11);\nif(cljs.core.truth_(and__4149__auto____$11)){\nvar and__4149__auto____$12 \x3d sci.impl.evaluator.eval(ctx,arg12);\nif(cljs.core.truth_(and__4149__auto____$12)){\nvar and__4149__auto____$13 \x3d sci.impl.evaluator.eval(ctx,arg13);\nif(cljs.core.truth_(and__4149__auto____$13)){\nvar and__4149__auto____$14 \x3d sci.impl.evaluator.eval(ctx,arg14);\nif(cljs.core.truth_(and__4149__auto____$14)){\nvar and__4149__auto____$15 \x3d sci.impl.evaluator.eval(ctx,arg15);\nif(cljs.core.truth_(and__4149__auto____$15)){\nvar and__4149__auto____$16 \x3d sci.impl.evaluator.eval(ctx,arg16);\nif(cljs.core.truth_(and__4149__auto____$16)){\nvar and__4149__auto____$17 \x3d sci.impl.evaluator.eval(ctx,arg17);\nif(cljs.core.truth_(and__4149__auto____$17)){\nreturn sci.impl.evaluator.eval(ctx,arg18);\n} else {\nreturn and__4149__auto____$17;\n}\n} else {\nreturn and__4149__auto____$16;\n}\n} else {\nreturn and__4149__auto____$15;\n}\n} else {\nreturn and__4149__auto____$14;\n}\n} else {\nreturn and__4149__auto____$13;\n}\n} else {\nreturn and__4149__auto____$12;\n}\n} else {\nreturn and__4149__auto____$11;\n}\n} else {\nreturn and__4149__auto____$10;\n}\n} else {\nreturn and__4149__auto____$9;\n}\n} else {\nreturn and__4149__auto____$8;\n}\n} else {\nreturn and__4149__auto____$7;\n}\n} else {\nreturn and__4149__auto____$6;\n}\n} else {\nreturn and__4149__auto____$5;\n}\n} else {\nreturn and__4149__auto____$4;\n}\n} else {\nreturn and__4149__auto____$3;\n}\n} else {\nreturn and__4149__auto____$2;\n}\n} else {\nreturn and__4149__auto____$1;\n}\n} else {\nreturn and__4149__auto__;\n}\n}),expr);\n\nbreak;\ndefault:\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.evaluator.eval_and(ctx,analyzed_children);\n}),expr);\n\n}\n});\nsci.impl.analyzer.recur_0 \x3d sci.impl.fns.__GT_Recur(cljs.core.PersistentVector.EMPTY);\nsci.impl.analyzer.return_recur \x3d (function sci$impl$analyzer$return_recur(expr,analyzed_children){\nvar G__61486 \x3d cljs.core.count(analyzed_children);\nswitch (G__61486) {\ncase (0):\nreturn sci.impl.utils.ctx_fn((function (_){\nreturn sci.impl.analyzer.recur_0;\n}),expr);\n\nbreak;\ncase (1):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0)], null));\n}),expr);\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1)], null));\n}),expr);\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2)], null));\n}),expr);\n\nbreak;\ncase (4):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3)], null));\n}),expr);\n\nbreak;\ncase (5):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4)], null));\n}),expr);\n\nbreak;\ncase (6):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5)], null));\n}),expr);\n\nbreak;\ncase (7):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6)], null));\n}),expr);\n\nbreak;\ncase (8):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7)], null));\n}),expr);\n\nbreak;\ncase (9):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8)], null));\n}),expr);\n\nbreak;\ncase (10):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 10, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9)], null));\n}),expr);\n\nbreak;\ncase (11):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 11, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10)], null));\n}),expr);\n\nbreak;\ncase (12):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 12, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11)], null));\n}),expr);\n\nbreak;\ncase (13):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 13, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12)], null));\n}),expr);\n\nbreak;\ncase (14):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 14, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12),sci.impl.evaluator.eval(ctx,arg13)], null));\n}),expr);\n\nbreak;\ncase (15):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 15, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12),sci.impl.evaluator.eval(ctx,arg13),sci.impl.evaluator.eval(ctx,arg14)], null));\n}),expr);\n\nbreak;\ncase (16):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 16, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12),sci.impl.evaluator.eval(ctx,arg13),sci.impl.evaluator.eval(ctx,arg14),sci.impl.evaluator.eval(ctx,arg15)], null));\n}),expr);\n\nbreak;\ncase (17):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 17, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12),sci.impl.evaluator.eval(ctx,arg13),sci.impl.evaluator.eval(ctx,arg14),sci.impl.evaluator.eval(ctx,arg15),sci.impl.evaluator.eval(ctx,arg16)], null));\n}),expr);\n\nbreak;\ncase (18):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 18, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12),sci.impl.evaluator.eval(ctx,arg13),sci.impl.evaluator.eval(ctx,arg14),sci.impl.evaluator.eval(ctx,arg15),sci.impl.evaluator.eval(ctx,arg16),sci.impl.evaluator.eval(ctx,arg17)], null));\n}),expr);\n\nbreak;\ncase (19):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nvar arg18 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(18));\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.fns.__GT_Recur(new cljs.core.PersistentVector(null, 19, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.evaluator.eval(ctx,arg0),sci.impl.evaluator.eval(ctx,arg1),sci.impl.evaluator.eval(ctx,arg2),sci.impl.evaluator.eval(ctx,arg3),sci.impl.evaluator.eval(ctx,arg4),sci.impl.evaluator.eval(ctx,arg5),sci.impl.evaluator.eval(ctx,arg6),sci.impl.evaluator.eval(ctx,arg7),sci.impl.evaluator.eval(ctx,arg8),sci.impl.evaluator.eval(ctx,arg9),sci.impl.evaluator.eval(ctx,arg10),sci.impl.evaluator.eval(ctx,arg11),sci.impl.evaluator.eval(ctx,arg12),sci.impl.evaluator.eval(ctx,arg13),sci.impl.evaluator.eval(ctx,arg14),sci.impl.evaluator.eval(ctx,arg15),sci.impl.evaluator.eval(ctx,arg16),sci.impl.evaluator.eval(ctx,arg17),sci.impl.evaluator.eval(ctx,arg18)], null));\n}),expr);\n\nbreak;\ndefault:\nreturn sci.impl.utils.ctx_fn((function (ctx){\nreturn sci.impl.evaluator.fn_call(ctx,cljs.core.comp.cljs$core$IFn$_invoke$arity$2(sci.impl.fns.__GT_Recur,cljs.core.vector),analyzed_children);\n}),expr);\n\n}\n});\nsci.impl.analyzer.analyze_children \x3d (function sci$impl$analyzer$analyze_children(ctx,children){\nreturn cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((function (p1__61507_SHARP_){\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,p1__61507_SHARP_) : sci.impl.analyzer.analyze.call(null,ctx,p1__61507_SHARP_));\n}),children);\n});\nsci.impl.analyzer.expand_fn_args_PLUS_body \x3d (function sci$impl$analyzer$expand_fn_args_PLUS_body(p__61512,fn_name,p__61513,macro_QMARK_){\nvar map__61514 \x3d p__61512;\nvar map__61514__$1 \x3d cljs.core.__destructure_map(map__61514);\nvar ctx \x3d map__61514__$1;\nvar fn_expr \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61514__$1,new cljs.core.Keyword(null,\x22fn-expr\x22,\x22fn-expr\x22,-933027985));\nvar vec__61515 \x3d p__61513;\nvar seq__61516 \x3d cljs.core.seq(vec__61515);\nvar first__61517 \x3d cljs.core.first(seq__61516);\nvar seq__61516__$1 \x3d cljs.core.next(seq__61516);\nvar binding_vector \x3d first__61517;\nvar body_exprs \x3d seq__61516__$1;\nif(cljs.core.truth_(binding_vector)){\n} else {\nsci.impl.analyzer.throw_error_with_location(\x22Parameter declaration missing.\x22,fn_expr);\n}\n\nif(cljs.core.vector_QMARK_(binding_vector)){\n} else {\nsci.impl.analyzer.throw_error_with_location(\x22Parameter declaration should be a vector\x22,fn_expr);\n}\n\nvar binding_vector__$1 \x3d (cljs.core.truth_(macro_QMARK_)?cljs.core.into.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26form\x22,\x22\x26form\x22,1482799337,null),new cljs.core.Symbol(null,\x22\x26env\x22,\x22\x26env\x22,-919163083,null)], null),binding_vector):binding_vector);\nvar fixed_args \x3d cljs.core.take_while.cljs$core$IFn$_invoke$arity$2((function (p1__61508_SHARP_){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),p1__61508_SHARP_);\n}),binding_vector__$1);\nvar fixed_arity \x3d cljs.core.count(fixed_args);\nvar var_arg_name \x3d cljs.core.second(cljs.core.drop_while.cljs$core$IFn$_invoke$arity$2((function (p1__61509_SHARP_){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),p1__61509_SHARP_);\n}),binding_vector__$1));\nvar next_body \x3d cljs.core.next(body_exprs);\nvar conds \x3d ((next_body)?(function (){var e \x3d cljs.core.first(body_exprs);\nif(cljs.core.map_QMARK_(e)){\nreturn e;\n} else {\nreturn null;\n}\n})():null);\nvar body_exprs__$1 \x3d (cljs.core.truth_(conds)?next_body:body_exprs);\nvar conds__$1 \x3d (function (){var or__4160__auto__ \x3d conds;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.meta(binding_vector__$1);\n}\n})();\nvar pre \x3d new cljs.core.Keyword(null,\x22pre\x22,\x22pre\x22,2118456869).cljs$core$IFn$_invoke$arity$1(conds__$1);\nvar post \x3d new cljs.core.Keyword(null,\x22post\x22,\x22post\x22,269697687).cljs$core$IFn$_invoke$arity$1(conds__$1);\nvar body_exprs__$2 \x3d (cljs.core.truth_(post)?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null)),(new cljs.core.List(null,((((1) \x3c cljs.core.count(body_exprs__$1)))?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),body_exprs__$1))):cljs.core.first(body_exprs__$1)),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (c){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22assert\x22,\x22cljs.core/assert\x22,1075777968,null),null,(1),null)),(new cljs.core.List(null,c,null,(1),null)))));\n}),post),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22%\x22,\x22%\x22,-950237169,null),null,(1),null))], 0)))),null,(1),null))))):body_exprs__$1);\nvar body_exprs__$3 \x3d (cljs.core.truth_(pre)?cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (c){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22assert\x22,\x22cljs.core/assert\x22,1075777968,null),null,(1),null)),(new cljs.core.List(null,c,null,(1),null)))));\n}),pre),body_exprs__$2):body_exprs__$2);\nvar map__61519 \x3d sci.impl.utils.maybe_destructured(binding_vector__$1,body_exprs__$3);\nvar map__61519__$1 \x3d cljs.core.__destructure_map(map__61519);\nvar params \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61519__$1,new cljs.core.Keyword(null,\x22params\x22,\x22params\x22,710516235));\nvar body \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61519__$1,new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669));\nvar ctx__$1 \x3d cljs.core.update.cljs$core$IFn$_invoke$arity$4(ctx,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),cljs.core.merge,cljs.core.zipmap(params,cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(null)));\nvar body__$1 \x3d sci.impl.analyzer.return_do(fn_expr,sci.impl.analyzer.analyze_children(ctx__$1,body));\nreturn new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(\x22sci.impl\x22,\x22body\x22,\x22sci.impl/body\x22,-1493886648),body__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22params\x22,\x22sci.impl/params\x22,-175360738),params,new cljs.core.Keyword(\x22sci.impl\x22,\x22fixed-arity\x22,\x22sci.impl/fixed-arity\x22,-1251617052),fixed_arity,new cljs.core.Keyword(\x22sci.impl\x22,\x22var-arg-name\x22,\x22sci.impl/var-arg-name\x22,1800498100),var_arg_name,new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-name\x22,\x22sci.impl/fn-name\x22,-1172300569),fn_name], null);\n});\nsci.impl.analyzer.analyzed_fn_meta \x3d (function sci$impl$analyzer$analyzed_fn_meta(ctx,m){\nvar meta_needs_eval_QMARK_ \x3d (cljs.core.count(m) \x3e (2));\nvar m__$1 \x3d ((meta_needs_eval_QMARK_)?sci.impl.utils.mark_eval((function (){var G__61524 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964),true);\nvar G__61525 \x3d m;\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61524,G__61525) : sci.impl.analyzer.analyze.call(null,G__61524,G__61525));\n})()):m);\nreturn m__$1;\n});\nsci.impl.analyzer.expand_fn \x3d (function sci$impl$analyzer$expand_fn(ctx,p__61527,macro_QMARK_){\nvar vec__61528 \x3d p__61527;\nvar seq__61529 \x3d cljs.core.seq(vec__61528);\nvar first__61530 \x3d cljs.core.first(seq__61529);\nvar seq__61529__$1 \x3d cljs.core.next(seq__61529);\nvar _fn \x3d first__61530;\nvar first__61530__$1 \x3d cljs.core.first(seq__61529__$1);\nvar seq__61529__$2 \x3d cljs.core.next(seq__61529__$1);\nvar name_QMARK_ \x3d first__61530__$1;\nvar body \x3d seq__61529__$2;\nvar fn_expr \x3d vec__61528;\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22fn-expr\x22,\x22fn-expr\x22,-933027985),fn_expr);\nvar fn_name \x3d (((name_QMARK_ instanceof cljs.core.Symbol))?name_QMARK_:null);\nvar body__$1 \x3d (cljs.core.truth_(fn_name)?body:cljs.core.cons(name_QMARK_,body));\nvar bodies \x3d ((cljs.core.seq_QMARK_(cljs.core.first(body__$1)))?body__$1:new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [body__$1], null));\nvar ctx__$2 \x3d (cljs.core.truth_(fn_name)?cljs.core.assoc_in(ctx__$1,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),fn_name], null),null):ctx__$1);\nvar analyzed_bodies \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p__61532,body__$2){\nvar map__61533 \x3d p__61532;\nvar map__61533__$1 \x3d cljs.core.__destructure_map(map__61533);\nvar acc \x3d map__61533__$1;\nvar max_fixed \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61533__$1,new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124));\nvar min_varargs \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61533__$1,new cljs.core.Keyword(null,\x22min-varargs\x22,\x22min-varargs\x22,1999010596));\nvar arglist \x3d cljs.core.first(body__$2);\nvar body__$3 \x3d sci.impl.analyzer.expand_fn_args_PLUS_body(ctx__$2,fn_name,body__$2,macro_QMARK_);\nvar body__$4 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(body__$3,new cljs.core.Keyword(\x22sci.impl\x22,\x22arglist\x22,\x22sci.impl/arglist\x22,2082561957),arglist);\nvar var_arg_name \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22var-arg-name\x22,\x22sci.impl/var-arg-name\x22,1800498100).cljs$core$IFn$_invoke$arity$1(body__$4);\nvar fixed_arity \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22fixed-arity\x22,\x22sci.impl/fixed-arity\x22,-1251617052).cljs$core$IFn$_invoke$arity$1(body__$4);\nvar new_min_varargs \x3d (cljs.core.truth_(var_arg_name)?fixed_arity:null);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d var_arg_name;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn min_varargs;\n} else {\nreturn and__4149__auto__;\n}\n})())){\nsci.impl.analyzer.throw_error_with_location(\x22Can\x27t have more than 1 variadic overload\x22,fn_expr);\n} else {\n}\n\nif(cljs.core.truth_(((cljs.core.not(var_arg_name))?(function (){var and__4149__auto__ \x3d min_varargs;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn (fixed_arity \x3e min_varargs);\n} else {\nreturn and__4149__auto__;\n}\n})():false))){\nsci.impl.analyzer.throw_error_with_location(\x22Can\x27t have fixed arity function with more params than variadic function\x22,fn_expr);\n} else {\n}\n\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(cljs.core.update.cljs$core$IFn$_invoke$arity$4(cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(acc,new cljs.core.Keyword(null,\x22min-varargs\x22,\x22min-varargs\x22,1999010596),new_min_varargs,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124),(function (){var x__4249__auto__ \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22fixed-arity\x22,\x22sci.impl/fixed-arity\x22,-1251617052).cljs$core$IFn$_invoke$arity$1(body__$4);\nvar y__4250__auto__ \x3d max_fixed;\nreturn ((x__4249__auto__ \x3e y__4250__auto__) ? x__4249__auto__ : y__4250__auto__);\n})()], 0)),new cljs.core.Keyword(null,\x22bodies\x22,\x22bodies\x22,-1295887172),cljs.core.conj,body__$4),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.conj,arglist);\n}),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22bodies\x22,\x22bodies\x22,-1295887172),cljs.core.PersistentVector.EMPTY,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.PersistentVector.EMPTY,new cljs.core.Keyword(null,\x22min-var-args\x22,\x22min-var-args\x22,-1883389660),null,new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124),(-1)], null),bodies);\nvar arities \x3d new cljs.core.Keyword(null,\x22bodies\x22,\x22bodies\x22,-1295887172).cljs$core$IFn$_invoke$arity$1(analyzed_bodies);\nvar arglists \x3d new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(analyzed_bodies);\nvar fn_meta \x3d cljs.core.meta(fn_expr);\nvar ana_fn_meta \x3d sci.impl.analyzer.analyzed_fn_meta(ctx__$2,fn_meta);\nvar fn_meta__$1 \x3d (((fn_meta \x3d\x3d\x3d ana_fn_meta))?null:cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(ana_fn_meta,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514)], 0)));\nreturn cljs.core.with_meta(new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-bodies\x22,\x22sci.impl/fn-bodies\x22,134751661),arities,new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-name\x22,\x22sci.impl/fn-name\x22,-1172300569),fn_name,new cljs.core.Keyword(\x22sci.impl\x22,\x22arglists\x22,\x22sci.impl/arglists\x22,-802264395),arglists,new cljs.core.Keyword(\x22sci.impl\x22,\x22fn\x22,\x22sci.impl/fn\x22,1695180073),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-meta\x22,\x22sci.impl/fn-meta\x22,1093684639),fn_meta__$1], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204)], null));\n});\nsci.impl.analyzer.expand_let_STAR_ \x3d (function sci$impl$analyzer$expand_let_STAR_(ctx,destructured_let_bindings,exprs){\nvar vec__61537 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (p__61540,p__61541){\nvar vec__61542 \x3d p__61540;\nvar ctx__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61542,(0),null);\nvar new_let_bindings \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61542,(1),null);\nvar vec__61545 \x3d p__61541;\nvar binding_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61545,(0),null);\nvar binding_value \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61545,(1),null);\nvar v \x3d (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx__$1,binding_value) : sci.impl.analyzer.analyze.call(null,ctx__$1,binding_value));\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.update.cljs$core$IFn$_invoke$arity$5(ctx__$1,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),cljs.core.assoc,binding_name,v),cljs.core.conj.cljs$core$IFn$_invoke$arity$variadic(new_let_bindings,binding_name,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v], 0))], null);\n}),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [ctx,cljs.core.PersistentVector.EMPTY], null),cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),destructured_let_bindings));\nvar ctx__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61537,(0),null);\nvar new_let_bindings \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61537,(1),null);\nvar body \x3d sci.impl.analyzer.analyze_children(ctx__$1,exprs);\nreturn sci.impl.utils.ctx_fn((function (ctx__$2){\nreturn sci.impl.evaluator.eval_let(ctx__$2,new_let_bindings,body);\n}),null);\n});\n/**\n * The let macro from clojure.core\n */\nsci.impl.analyzer.expand_let \x3d (function sci$impl$analyzer$expand_let(ctx,p__61550){\nvar vec__61551 \x3d p__61550;\nvar seq__61552 \x3d cljs.core.seq(vec__61551);\nvar first__61553 \x3d cljs.core.first(seq__61552);\nvar seq__61552__$1 \x3d cljs.core.next(seq__61552);\nvar _let \x3d first__61553;\nvar first__61553__$1 \x3d cljs.core.first(seq__61552__$1);\nvar seq__61552__$2 \x3d cljs.core.next(seq__61552__$1);\nvar let_bindings \x3d first__61553__$1;\nvar exprs \x3d seq__61552__$2;\nvar let_bindings__$1 \x3d sci.impl.destructure.destructure(let_bindings);\nreturn sci.impl.analyzer.expand_let_STAR_(ctx,let_bindings__$1,exprs);\n});\nsci.impl.analyzer.expand_def \x3d (function sci$impl$analyzer$expand_def(ctx,expr){\nvar vec__61555 \x3d expr;\nvar _def \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61555,(0),null);\nvar var_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61555,(1),null);\nvar _QMARK_docstring \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61555,(2),null);\nvar _QMARK_init \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61555,(3),null);\nvar G__61558_62765 \x3d ctx;\nvar G__61559_62766 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,var_name], null);\n(sci.impl.analyzer.expand_declare.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.expand_declare.cljs$core$IFn$_invoke$arity$2(G__61558_62765,G__61559_62766) : sci.impl.analyzer.expand_declare.call(null,G__61558_62765,G__61559_62766));\n\nif(cljs.core.simple_symbol_QMARK_(var_name)){\n} else {\nsci.impl.analyzer.throw_error_with_location(\x22Var name should be simple symbol.\x22,expr);\n}\n\nvar arg_count \x3d cljs.core.count(expr);\nvar docstring \x3d ((((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((4),arg_count)) \x26\x26 (typeof _QMARK_docstring \x3d\x3d\x3d \x27string\x27)))?_QMARK_docstring:null);\nvar expected_arg_count \x3d (cljs.core.truth_(docstring)?(4):(3));\nif((arg_count \x3c\x3d expected_arg_count)){\n} else {\nthrow (new Error(\x22Too many arguments to def\x22));\n}\n\nvar init \x3d (cljs.core.truth_(docstring)?_QMARK_init:_QMARK_docstring);\nvar init__$1 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),arg_count))?new cljs.core.Keyword(\x22sci.impl\x22,\x22var.unbound\x22,\x22sci.impl/var.unbound\x22,-1824207647):(sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,init) : sci.impl.analyzer.analyze.call(null,ctx,init)));\nvar m \x3d cljs.core.meta(var_name);\nvar m__$1 \x3d (function (){var G__61561 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964),true);\nvar G__61562 \x3d m;\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61561,G__61562) : sci.impl.analyzer.analyze.call(null,G__61561,G__61562));\n})();\nvar m__$2 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),cljs.core.deref(sci.impl.vars.current_ns));\nvar m__$3 \x3d (cljs.core.truth_(docstring)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m__$2,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),docstring):m__$2);\nvar var_name__$1 \x3d cljs.core.with_meta(var_name,m__$3);\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nreturn sci.impl.evaluator.eval_def(ctx__$1,var_name__$1,init__$1);\n}),expr);\n});\nsci.impl.analyzer.expand_defn \x3d (function sci$impl$analyzer$expand_defn(ctx,p__61564){\nvar vec__61566 \x3d p__61564;\nvar seq__61567 \x3d cljs.core.seq(vec__61566);\nvar first__61568 \x3d cljs.core.first(seq__61567);\nvar seq__61567__$1 \x3d cljs.core.next(seq__61567);\nvar op \x3d first__61568;\nvar first__61568__$1 \x3d cljs.core.first(seq__61567__$1);\nvar seq__61567__$2 \x3d cljs.core.next(seq__61567__$1);\nvar fn_name \x3d first__61568__$1;\nvar body \x3d seq__61567__$2;\nvar expr \x3d vec__61566;\nif(cljs.core.simple_symbol_QMARK_(fn_name)){\n} else {\nsci.impl.analyzer.throw_error_with_location(\x22Var name should be simple symbol.\x22,expr);\n}\n\nvar G__61569_62773 \x3d ctx;\nvar G__61570_62774 \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,fn_name], null);\n(sci.impl.analyzer.expand_declare.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.expand_declare.cljs$core$IFn$_invoke$arity$2(G__61569_62773,G__61570_62774) : sci.impl.analyzer.expand_declare.call(null,G__61569_62773,G__61570_62774));\n\nvar macro_QMARK_ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22defmacro\x22,cljs.core.name(op));\nvar vec__61571 \x3d cljs.core.split_with(cljs.core.comp.cljs$core$IFn$_invoke$arity$2(cljs.core.not,cljs.core.sequential_QMARK_),body);\nvar pre_body \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61571,(0),null);\nvar body__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61571,(1),null);\nvar _ \x3d ((cljs.core.empty_QMARK_(body__$1))?sci.impl.analyzer.throw_error_with_location(\x22Parameter declaration missing.\x22,expr):null);\nvar docstring \x3d (function (){var temp__5753__auto__ \x3d cljs.core.first(pre_body);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ds \x3d temp__5753__auto__;\nif(typeof ds \x3d\x3d\x3d \x27string\x27){\nreturn ds;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n})();\nvar meta_map \x3d (function (){var temp__5753__auto__ \x3d cljs.core.last(pre_body);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar m \x3d temp__5753__auto__;\nif(cljs.core.map_QMARK_(m)){\nreturn m;\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n})();\nvar meta_map__$1 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.meta(fn_name),cljs.core.meta(expr),meta_map], 0));\nvar meta_map__$2 \x3d (function (){var G__61575 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964),true);\nvar G__61576 \x3d meta_map__$1;\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61575,G__61576) : sci.impl.analyzer.analyze.call(null,G__61575,G__61576));\n})();\nvar fn_body \x3d cljs.core.with_meta(cljs.core.cons(new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),body__$1),cljs.core.meta(expr));\nvar f \x3d sci.impl.analyzer.expand_fn(ctx,fn_body,macro_QMARK_);\nvar arglists \x3d cljs.core.seq(new cljs.core.Keyword(\x22sci.impl\x22,\x22arglists\x22,\x22sci.impl/arglists\x22,-802264395).cljs$core$IFn$_invoke$arity$1(f));\nvar meta_map__$3 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(meta_map__$2,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),cljs.core.deref(sci.impl.vars.current_ns),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),arglists], 0));\nvar fn_name__$1 \x3d cljs.core.with_meta(fn_name,(function (){var G__61578 \x3d meta_map__$3;\nvar G__61578__$1 \x3d (cljs.core.truth_(docstring)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61578,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),docstring):G__61578);\nif(macro_QMARK_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61578__$1,new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404),true);\n} else {\nreturn G__61578__$1;\n}\n})());\nvar f__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(f,new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),macro_QMARK_,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(\x22sci.impl\x22,\x22fn-name\x22,\x22sci.impl/fn-name\x22,-1172300569),fn_name__$1,new cljs.core.Keyword(\x22sci.impl\x22,\x22var\x22,\x22sci.impl/var\x22,-2041185552),true], 0));\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nreturn sci.impl.evaluator.eval_def(ctx__$1,fn_name__$1,f__$1);\n}),expr);\n});\nsci.impl.analyzer.expand_loop \x3d (function sci$impl$analyzer$expand_loop(ctx,expr){\nvar bv \x3d cljs.core.second(expr);\nvar arg_names \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),bv);\nvar init_vals \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),cljs.core.rest(bv));\nvar vec__61580 \x3d ((cljs.core.every_QMARK_(cljs.core.symbol_QMARK_,arg_names))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [bv,arg_names], null):(function (){var syms \x3d cljs.core.repeatedly.cljs$core$IFn$_invoke$arity$2(cljs.core.count(arg_names),(function (){\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\n}));\nvar bv1 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$3(cljs.core.vector,syms,init_vals);\nvar bv2 \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$3(cljs.core.vector,arg_names,syms);\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentVector.EMPTY,cljs.core.cat,cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(bv1,bv2)),syms], null);\n})());\nvar bv__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61580,(0),null);\nvar syms \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61580,(1),null);\nvar body \x3d cljs.core.nnext(expr);\nvar expansion \x3d (new cljs.core.List(null,new cljs.core.Symbol(null,\x22let\x22,\x22let\x22,358118826,null),(new cljs.core.List(null,bv__$1,(new cljs.core.List(null,cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(arg_names),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),syms),null,(1),null)),(2),null)),(3),null));\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,expansion) : sci.impl.analyzer.analyze.call(null,ctx,expansion));\n});\nsci.impl.analyzer.expand_lazy_seq \x3d (function sci$impl$analyzer$expand_lazy_seq(ctx,expr){\nvar body \x3d cljs.core.rest(expr);\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22lazy-seq\x22,\x22cljs.core/lazy-seq\x22,627681297,null),(new cljs.core.List(null,(function (){var G__61585 \x3d ctx;\nvar G__61586 \x3d (new cljs.core.List(null,new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),(new cljs.core.List(null,cljs.core.PersistentVector.EMPTY,(new cljs.core.List(null,cljs.core.cons(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),body),null,(1),null)),(2),null)),(3),null));\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61585,G__61586) : sci.impl.analyzer.analyze.call(null,G__61585,G__61586));\n})(),null,(1),null)),(2),null)));\n});\nsci.impl.analyzer.return_if \x3d (function sci$impl$analyzer$return_if(ctx,expr){\nvar exprs \x3d cljs.core.rest(expr);\nvar children \x3d sci.impl.analyzer.analyze_children(ctx,exprs);\nvar G__61588 \x3d cljs.core.count(children);\nswitch (G__61588) {\ncase (0):\ncase (1):\nreturn sci.impl.analyzer.throw_error_with_location(\x22Too few arguments to if\x22,expr);\n\nbreak;\ncase (2):\nvar condition \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(0));\nvar then \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(1));\nif(cljs.core.not(condition)){\nreturn null;\n} else {\nif(sci.impl.utils.constant_QMARK_(condition)){\nreturn then;\n} else {\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nif(cljs.core.truth_(sci.impl.evaluator.eval(ctx__$1,condition))){\nreturn sci.impl.evaluator.eval(ctx__$1,then);\n} else {\nreturn null;\n}\n}),cljs.core.with_meta(expr,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22call\x22,\x22call\x22,-519999866)], null)));\n\n}\n}\n\nbreak;\ncase (3):\nvar condition \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(0));\nvar then \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(1));\nvar else$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(2));\nif(cljs.core.not(condition)){\nreturn else$;\n} else {\nif(sci.impl.utils.constant_QMARK_(condition)){\nreturn then;\n} else {\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nif(cljs.core.truth_(sci.impl.evaluator.eval(ctx__$1,condition))){\nreturn sci.impl.evaluator.eval(ctx__$1,then);\n} else {\nreturn sci.impl.evaluator.eval(ctx__$1,else$);\n}\n}),cljs.core.with_meta(expr,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22call\x22,\x22call\x22,-519999866)], null)));\n\n}\n}\n\nbreak;\ndefault:\nreturn sci.impl.analyzer.throw_error_with_location(\x22Too many arguments to if\x22,expr);\n\n}\n});\nsci.impl.analyzer.expand_case \x3d (function sci$impl$analyzer$expand_case(ctx,expr){\nvar v \x3d (function (){var G__61591 \x3d ctx;\nvar G__61592 \x3d cljs.core.second(expr);\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61591,G__61592) : sci.impl.analyzer.analyze.call(null,G__61591,G__61592));\n})();\nvar clauses \x3d cljs.core.nnext(expr);\nvar match_clauses \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),clauses);\nvar result_clauses \x3d sci.impl.analyzer.analyze_children(ctx,cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),cljs.core.rest(clauses)));\nvar default$ \x3d ((cljs.core.odd_QMARK_(cljs.core.count(clauses)))?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22val\x22,\x22val\x22,128701612),(function (){var G__61594 \x3d ctx;\nvar G__61595 \x3d cljs.core.last(clauses);\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61594,G__61595) : sci.impl.analyzer.analyze.call(null,G__61594,G__61595));\n})()], null):null);\nvar cases \x3d cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(match_clauses,result_clauses);\nvar assoc_new \x3d (function (m,k,v__$1){\nif((!(cljs.core.contains_QMARK_(m,k)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,v__$1);\n} else {\nreturn sci.impl.analyzer.throw_error_with_location([\x22Duplicate case test constant \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(k)].join(\x27\x27),expr);\n}\n});\nvar case_map \x3d (function (){var cases__$1 \x3d cljs.core.seq(cases);\nvar ret_map \x3d cljs.core.PersistentArrayMap.EMPTY;\nwhile(true){\nif(cases__$1){\nvar vec__61600 \x3d cases__$1;\nvar seq__61601 \x3d cljs.core.seq(vec__61600);\nvar first__61602 \x3d cljs.core.first(seq__61601);\nvar seq__61601__$1 \x3d cljs.core.next(seq__61601);\nvar k \x3d first__61602;\nvar first__61602__$1 \x3d cljs.core.first(seq__61601__$1);\nvar seq__61601__$2 \x3d cljs.core.next(seq__61601__$1);\nvar v__$1 \x3d first__61602__$1;\nvar cases__$2 \x3d seq__61601__$2;\nif(cljs.core.list_QMARK_(k)){\nvar G__62812 \x3d cases__$2;\nvar G__62813 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(((function (cases__$1,ret_map,vec__61600,seq__61601,first__61602,seq__61601__$1,k,first__61602__$1,seq__61601__$2,v__$1,cases__$2,v,clauses,match_clauses,result_clauses,default$,cases,assoc_new){\nreturn (function (acc,k__$1){\nreturn assoc_new(acc,k__$1,v__$1);\n});})(cases__$1,ret_map,vec__61600,seq__61601,first__61602,seq__61601__$1,k,first__61602__$1,seq__61601__$2,v__$1,cases__$2,v,clauses,match_clauses,result_clauses,default$,cases,assoc_new))\n,ret_map,k);\ncases__$1 \x3d G__62812;\nret_map \x3d G__62813;\ncontinue;\n} else {\nvar G__62815 \x3d cases__$2;\nvar G__62816 \x3d assoc_new(ret_map,k,v__$1);\ncases__$1 \x3d G__62815;\nret_map \x3d G__62816;\ncontinue;\n}\n} else {\nreturn ret_map;\n}\nbreak;\n}\n})();\nvar ret \x3d sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,\x22case\x22,\x22case\x22,-1510733573,null),(new cljs.core.List(null,new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22case-map\x22,\x22case-map\x22,955082964),case_map,new cljs.core.Keyword(null,\x22case-val\x22,\x22case-val\x22,880926521),v,new cljs.core.Keyword(null,\x22case-default\x22,\x22case-default\x22,1140470708),default$], null),(new cljs.core.List(null,default$,null,(1),null)),(2),null)),(3),null)));\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(ret);\n});\nsci.impl.analyzer.expand_try \x3d (function sci$impl$analyzer$expand_try(ctx,p__61605){\nvar vec__61606 \x3d p__61605;\nvar seq__61607 \x3d cljs.core.seq(vec__61606);\nvar first__61608 \x3d cljs.core.first(seq__61607);\nvar seq__61607__$1 \x3d cljs.core.next(seq__61607);\nvar _try \x3d first__61608;\nvar body \x3d seq__61607__$1;\nvar vec__61609 \x3d (function (){var exprs \x3d cljs.core.seq(body);\nvar body_exprs \x3d cljs.core.PersistentVector.EMPTY;\nvar catch_exprs \x3d cljs.core.PersistentVector.EMPTY;\nvar finally_expr \x3d null;\nwhile(true){\nif(exprs){\nvar expr \x3d cljs.core.first(exprs);\nvar exprs__$1 \x3d cljs.core.next(exprs);\nif(((cljs.core.seq_QMARK_(expr)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22catch\x22,\x22catch\x22,-1616370245,null),cljs.core.first(expr))))){\nvar G__62822 \x3d exprs__$1;\nvar G__62823 \x3d body_exprs;\nvar G__62824 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(catch_exprs,expr);\nvar G__62825 \x3d finally_expr;\nexprs \x3d G__62822;\nbody_exprs \x3d G__62823;\ncatch_exprs \x3d G__62824;\nfinally_expr \x3d G__62825;\ncontinue;\n} else {\nif(((cljs.core.not(exprs__$1)) \x26\x26 (((cljs.core.seq_QMARK_(expr)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22finally\x22,\x22finally\x22,-1065347064,null),cljs.core.first(expr))))))){\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [body_exprs,catch_exprs,expr], null);\n} else {\nvar G__62826 \x3d exprs__$1;\nvar G__62827 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(body_exprs,expr);\nvar G__62828 \x3d catch_exprs;\nvar G__62829 \x3d finally_expr;\nexprs \x3d G__62826;\nbody_exprs \x3d G__62827;\ncatch_exprs \x3d G__62828;\nfinally_expr \x3d G__62829;\ncontinue;\n\n}\n}\n} else {\nreturn new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [body_exprs,catch_exprs,finally_expr], null);\n}\nbreak;\n}\n})();\nvar body_exprs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61609,(0),null);\nvar catches \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61609,(1),null);\nvar finally$ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61609,(2),null);\nvar body__$1 \x3d (function (){var G__61615 \x3d ctx;\nvar G__61616 \x3d cljs.core.cons(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),body_exprs);\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61615,G__61616) : sci.impl.analyzer.analyze.call(null,G__61615,G__61616));\n})();\nvar catches__$1 \x3d cljs.core.mapv.cljs$core$IFn$_invoke$arity$2((function (c){\nvar vec__61617 \x3d c;\nvar seq__61618 \x3d cljs.core.seq(vec__61617);\nvar first__61619 \x3d cljs.core.first(seq__61618);\nvar seq__61618__$1 \x3d cljs.core.next(seq__61618);\nvar _ \x3d first__61619;\nvar first__61619__$1 \x3d cljs.core.first(seq__61618__$1);\nvar seq__61618__$2 \x3d cljs.core.next(seq__61618__$1);\nvar ex \x3d first__61619__$1;\nvar first__61619__$2 \x3d cljs.core.first(seq__61618__$2);\nvar seq__61618__$3 \x3d cljs.core.next(seq__61618__$2);\nvar binding \x3d first__61619__$2;\nvar body__$2 \x3d seq__61618__$3;\nvar temp__5751__auto__ \x3d sci.impl.interop.resolve_class(ctx,ex);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar clazz \x3d temp__5751__auto__;\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996),clazz,new cljs.core.Keyword(null,\x22binding\x22,\x22binding\x22,539932593),binding,new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669),(function (){var G__61621 \x3d cljs.core.assoc_in(ctx,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),binding], null),null);\nvar G__61622 \x3d cljs.core.cons(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),body__$2);\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61621,G__61622) : sci.impl.analyzer.analyze.call(null,G__61621,G__61622));\n})()], null);\n} else {\nreturn sci.impl.analyzer.throw_error_with_location([\x22Unable to resolve classname: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ex)].join(\x27\x27),ex);\n}\n}),catches);\nvar finally$__$1 \x3d (cljs.core.truth_(finally$)?(function (){var G__61623 \x3d ctx;\nvar G__61624 \x3d cljs.core.cons(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),cljs.core.rest(finally$));\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__61623,G__61624) : sci.impl.analyzer.analyze.call(null,G__61623,G__61624));\n})():null);\nreturn cljs.core.with_meta(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22try\x22,\x22sci.impl/try\x22,2142624741),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22body\x22,\x22body\x22,-2049205669),body__$1,new cljs.core.Keyword(null,\x22catches\x22,\x22catches\x22,-1478797617),catches__$1,new cljs.core.Keyword(null,\x22finally\x22,\x22finally\x22,1589088705),finally$__$1], null)], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22try\x22,\x22try\x22,1380742522)], null));\n});\nsci.impl.analyzer.expand_declare \x3d (function sci$impl$analyzer$expand_declare(ctx,p__61626){\nvar vec__61627 \x3d p__61626;\nvar seq__61628 \x3d cljs.core.seq(vec__61627);\nvar first__61629 \x3d cljs.core.first(seq__61628);\nvar seq__61628__$1 \x3d cljs.core.next(seq__61628);\nvar _declare \x3d first__61629;\nvar names \x3d seq__61628__$1;\nvar expr \x3d vec__61627;\nvar cnn_62835 \x3d sci.impl.vars.current_ns_name();\nvar env_62836 \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar the_current_ns_62837 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(env_62836),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cnn_62835], null));\nvar refers_62838 \x3d new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_current_ns_62837);\nvar the_current_ns_62839__$1 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (acc,name){\nvar temp__5751__auto__ \x3d (function (){var and__4149__auto__ \x3d refers_62838;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn refers_62838.get(name);\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar x \x3d temp__5751__auto__;\nreturn sci.impl.analyzer.throw_error_with_location([cljs.core.str.cljs$core$IFn$_invoke$arity$1(name),\x22 already refers to \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x),\x22 in namespace \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cnn_62835)].join(\x27\x27),expr);\n} else {\nif(cljs.core.not(cljs.core.get.cljs$core$IFn$_invoke$arity$2(the_current_ns_62837,name))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(acc,name,(function (){var G__61631 \x3d sci.impl.vars.__GT_SciVar(null,cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cnn_62835),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name)),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),cljs.core.deref(sci.impl.vars.current_ns),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.core.deref(sci.impl.vars.current_file)], null),false);\nG__61631.sci$impl$vars$IVar$unbind$arity$1(null);\n\nreturn G__61631;\n})());\n} else {\nreturn the_current_ns_62837;\n}\n}\n}),the_current_ns_62837,names);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(env_62836,(function (env__$1){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$5(env__$1,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cljs.core.assoc,cnn_62835,the_current_ns_62839__$1);\n}));\n\nreturn null;\n});\nsci.impl.analyzer.expand_dot \x3d (function sci$impl$analyzer$expand_dot(ctx,p__61634){\nvar vec__61635 \x3d p__61634;\nvar seq__61636 \x3d cljs.core.seq(vec__61635);\nvar first__61637 \x3d cljs.core.first(seq__61636);\nvar seq__61636__$1 \x3d cljs.core.next(seq__61636);\nvar _dot \x3d first__61637;\nvar first__61637__$1 \x3d cljs.core.first(seq__61636__$1);\nvar seq__61636__$2 \x3d cljs.core.next(seq__61636__$1);\nvar instance_expr \x3d first__61637__$1;\nvar first__61637__$2 \x3d cljs.core.first(seq__61636__$2);\nvar seq__61636__$3 \x3d cljs.core.next(seq__61636__$2);\nvar method_expr \x3d first__61637__$2;\nvar args \x3d seq__61636__$3;\nvar _expr \x3d vec__61635;\nvar vec__61639 \x3d ((cljs.core.seq_QMARK_(method_expr))?method_expr:cljs.core.cons(method_expr,args));\nvar seq__61640 \x3d cljs.core.seq(vec__61639);\nvar first__61641 \x3d cljs.core.first(seq__61640);\nvar seq__61640__$1 \x3d cljs.core.next(seq__61640);\nvar method_expr__$1 \x3d first__61641;\nvar args__$1 \x3d seq__61640__$1;\nvar instance_expr__$1 \x3d (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,instance_expr) : sci.impl.analyzer.analyze.call(null,ctx,instance_expr));\nvar instance_expr__$2 \x3d sci.impl.utils.vary_meta_STAR_(instance_expr__$1,(function (m){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar t \x3d temp__5751__auto__;\nvar clazz \x3d (function (){var or__4160__auto__ \x3d sci.impl.interop.resolve_class(ctx,t);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d sci.impl.records.resolve_record_class(ctx,t);\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn sci.impl.analyzer.throw_error_with_location([\x22Unable to resolve classname: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(t)].join(\x27\x27),t);\n}\n}\n})();\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new cljs.core.Keyword(null,\x22tag-class\x22,\x22tag-class\x22,714967874),clazz);\n} else {\nreturn m;\n}\n}));\nvar method_expr__$2 \x3d cljs.core.name(method_expr__$1);\nvar args__$2 \x3d ((args__$1)?sci.impl.analyzer.analyze_children(ctx,args__$1):null);\nvar res \x3d sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),null,(1),null)),(new cljs.core.List(null,instance_expr__$2,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,method_expr__$2,null,(1),null)),(new cljs.core.List(null,args__$2,null,(1),null))], 0)))));\nreturn res;\n});\n/**\n * Expands (. x method)\n */\nsci.impl.analyzer.expand_dot_STAR__STAR_ \x3d (function sci$impl$analyzer$expand_dot_STAR__STAR_(ctx,expr){\nif((cljs.core.count(expr) \x3c (3))){\nthrow (new Error(\x22Malformed member expression, expecting (.member target ...)\x22));\n} else {\n}\n\nreturn sci.impl.analyzer.expand_dot(ctx,expr);\n});\n/**\n * Expands (.foo x)\n */\nsci.impl.analyzer.expand_dot_STAR_ \x3d (function sci$impl$analyzer$expand_dot_STAR_(ctx,p__61644){\nvar vec__61646 \x3d p__61644;\nvar seq__61647 \x3d cljs.core.seq(vec__61646);\nvar first__61648 \x3d cljs.core.first(seq__61647);\nvar seq__61647__$1 \x3d cljs.core.next(seq__61647);\nvar method_name \x3d first__61648;\nvar first__61648__$1 \x3d cljs.core.first(seq__61647__$1);\nvar seq__61647__$2 \x3d cljs.core.next(seq__61647__$1);\nvar obj \x3d first__61648__$1;\nvar args \x3d seq__61647__$2;\nvar expr \x3d vec__61646;\nif((cljs.core.count(expr) \x3c (2))){\nthrow (new Error(\x22Malformed member expression, expecting (.member target ...)\x22));\n} else {\n}\n\nreturn sci.impl.analyzer.expand_dot(ctx,(new cljs.core.List(null,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),(new cljs.core.List(null,obj,(new cljs.core.List(null,cljs.core.cons(cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$2(cljs.core.name(method_name),(1))),args),null,(1),null)),(2),null)),(3),null)));\n});\nsci.impl.analyzer.expand_new \x3d (function sci$impl$analyzer$expand_new(ctx,p__61650){\nvar vec__61651 \x3d p__61650;\nvar seq__61652 \x3d cljs.core.seq(vec__61651);\nvar first__61653 \x3d cljs.core.first(seq__61652);\nvar seq__61652__$1 \x3d cljs.core.next(seq__61652);\nvar _new \x3d first__61653;\nvar first__61653__$1 \x3d cljs.core.first(seq__61652__$1);\nvar seq__61652__$2 \x3d cljs.core.next(seq__61652__$1);\nvar class_sym \x3d first__61653__$1;\nvar args \x3d seq__61652__$2;\nvar _expr \x3d vec__61651;\nvar temp__5751__auto__ \x3d sci.impl.interop.resolve_class_opts(ctx,class_sym);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar map__61655 \x3d temp__5751__auto__;\nvar map__61655__$1 \x3d cljs.core.__destructure_map(map__61655);\nvar _opts \x3d map__61655__$1;\nvar constructor$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61655__$1,new cljs.core.Keyword(null,\x22constructor\x22,\x22constructor\x22,-1953928811));\nvar args__$1 \x3d sci.impl.analyzer.analyze_children(ctx,args);\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),(new cljs.core.List(null,constructor$,(new cljs.core.List(null,args__$1,null,(1),null)),(2),null)),(3),null)));\n} else {\nvar temp__5751__auto____$1 \x3d sci.impl.records.resolve_record_class(ctx,class_sym);\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar record \x3d temp__5751__auto____$1;\nvar args__$1 \x3d sci.impl.analyzer.analyze_children(ctx,args);\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.record\x22,\x22constructor\x22,\x22sci.impl.record/constructor\x22,-2025684209).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(record)),args__$1));\n} else {\nreturn sci.impl.analyzer.throw_error_with_location([\x22Unable to resolve classname: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(class_sym)].join(\x27\x27),class_sym);\n}\n}\n});\nsci.impl.analyzer.expand_constructor \x3d (function sci$impl$analyzer$expand_constructor(ctx,p__61657){\nvar vec__61658 \x3d p__61657;\nvar seq__61659 \x3d cljs.core.seq(vec__61658);\nvar first__61660 \x3d cljs.core.first(seq__61659);\nvar seq__61659__$1 \x3d cljs.core.next(seq__61659);\nvar constructor_sym \x3d first__61660;\nvar args \x3d seq__61659__$1;\nvar constructor_name \x3d cljs.core.name(constructor_sym);\nvar class_sym \x3d cljs.core.with_meta(cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.subs.cljs$core$IFn$_invoke$arity$3(constructor_name,(0),(((constructor_name).length) - (1)))),cljs.core.meta(constructor_sym));\nreturn sci.impl.analyzer.expand_new(ctx,cljs.core.with_meta(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),class_sym,args),cljs.core.meta(constructor_sym)));\n});\nsci.impl.analyzer.analyze_ns_form \x3d (function sci$impl$analyzer$analyze_ns_form(ctx,p__61663){\nvar vec__61664 \x3d p__61663;\nvar seq__61665 \x3d cljs.core.seq(vec__61664);\nvar first__61666 \x3d cljs.core.first(seq__61665);\nvar seq__61665__$1 \x3d cljs.core.next(seq__61665);\nvar _ns \x3d first__61666;\nvar first__61666__$1 \x3d cljs.core.first(seq__61665__$1);\nvar seq__61665__$2 \x3d cljs.core.next(seq__61665__$1);\nvar ns_name \x3d first__61666__$1;\nvar exprs \x3d seq__61665__$2;\nvar expr \x3d vec__61664;\nif((ns_name instanceof cljs.core.Symbol)){\n} else {\nthrow (new Error([\x22Namespace name must be symbol, got: \x22,cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([ns_name], 0))].join(\x27\x27)));\n}\n\nvar vec__61667 \x3d (function (){var fexpr \x3d cljs.core.first(exprs);\nif(typeof fexpr \x3d\x3d\x3d \x27string\x27){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [fexpr,cljs.core.next(exprs)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,exprs], null);\n}\n})();\nvar docstring \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61667,(0),null);\nvar exprs__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61667,(1),null);\nvar vec__61670 \x3d (function (){var m \x3d cljs.core.first(exprs__$1);\nif(cljs.core.map_QMARK_(m)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [m,cljs.core.next(exprs__$1)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,exprs__$1], null);\n}\n})();\nvar attr_map \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61670,(0),null);\nvar exprs__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61670,(1),null);\nvar attr_map__$1 \x3d (cljs.core.truth_(docstring)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(attr_map,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),docstring):attr_map);\nsci.impl.utils.set_namespace_BANG_(ctx,ns_name,attr_map__$1);\n\nvar exprs__$3 \x3d exprs__$2;\nvar ret \x3d cljs.core.PersistentVector.EMPTY;\nwhile(true){\nif(cljs.core.truth_(exprs__$3)){\nvar vec__61680 \x3d cljs.core.first(exprs__$3);\nvar seq__61681 \x3d cljs.core.seq(vec__61680);\nvar first__61682 \x3d cljs.core.first(seq__61681);\nvar seq__61681__$1 \x3d cljs.core.next(seq__61681);\nvar k \x3d first__61682;\nvar args \x3d seq__61681__$1;\nvar expr__$1 \x3d vec__61680;\nvar G__61683 \x3d k;\nvar G__61683__$1 \x3d (((G__61683 instanceof cljs.core.Keyword))?G__61683.fqn:null);\nswitch (G__61683__$1) {\ncase \x22require\x22:\ncase \x22use\x22:\nvar G__62850 \x3d cljs.core.next(exprs__$3);\nvar G__62851 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.with_meta(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2(cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(k)),args),cljs.core.meta(expr__$1))));\nexprs__$3 \x3d G__62850;\nret \x3d G__62851;\ncontinue;\n\nbreak;\ncase \x22import\x22:\nvar G__62852 \x3d cljs.core.next(exprs__$3);\nvar G__62853 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.with_meta(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22import\x22,\x22import\x22,241030818,null),args),cljs.core.meta(expr__$1))));\nexprs__$3 \x3d G__62852;\nret \x3d G__62853;\ncontinue;\n\nbreak;\ncase \x22refer-clojure\x22:\nvar G__62854 \x3d cljs.core.next(exprs__$3);\nvar G__62855 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.with_meta(cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(null,\x22refer\x22,\x22refer\x22,676235974,null),new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),args),cljs.core.meta(expr__$1))));\nexprs__$3 \x3d G__62854;\nret \x3d G__62855;\ncontinue;\n\nbreak;\ncase \x22gen-class\x22:\nvar G__62857 \x3d cljs.core.next(exprs__$3);\nvar G__62858 \x3d ret;\nexprs__$3 \x3d G__62857;\nret \x3d G__62858;\ncontinue;\n\nbreak;\ndefault:\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__61683__$1)].join(\x27\x27)));\n\n}\n} else {\nreturn sci.impl.analyzer.return_do(expr,cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,sci.impl.utils.ctx_fn(((function (exprs__$3,ret,vec__61667,docstring,exprs__$1,vec__61670,attr_map,exprs__$2,attr_map__$1,vec__61664,seq__61665,first__61666,seq__61665__$1,_ns,first__61666__$1,seq__61665__$2,ns_name,exprs,expr){\nreturn (function (ctx__$1){\nsci.impl.load.add_loaded_lib(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx__$1),ns_name);\n\nreturn null;\n});})(exprs__$3,ret,vec__61667,docstring,exprs__$1,vec__61670,attr_map,exprs__$2,attr_map__$1,vec__61664,seq__61665,first__61666,seq__61665__$1,_ns,first__61666__$1,seq__61665__$2,ns_name,exprs,expr))\n,null)));\n}\nbreak;\n}\n});\nsci.impl.analyzer.analyze_var \x3d (function sci$impl$analyzer$analyze_var(ctx,p__61686){\nvar vec__61687 \x3d p__61686;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61687,(0),null);\nvar var_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61687,(1),null);\nreturn sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(\x22sci.impl\x22,\x22prevent-deref\x22,\x22sci.impl/prevent-deref\x22,-1401491385),true),var_name);\n});\nsci.impl.analyzer.analyze_set_BANG_ \x3d (function sci$impl$analyzer$analyze_set_BANG_(ctx,p__61691){\nvar vec__61692 \x3d p__61691;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61692,(0),null);\nvar obj \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61692,(1),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__61692,(2),null);\nvar obj__$1 \x3d (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,obj) : sci.impl.analyzer.analyze.call(null,ctx,obj));\nvar v__$1 \x3d (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,v) : sci.impl.analyzer.analyze.call(null,ctx,v));\nvar obj__$2 \x3d sci.impl.types.getVal(obj__$1);\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),(new cljs.core.List(null,obj__$2,(new cljs.core.List(null,v__$1,null,(1),null)),(2),null)),(3),null)));\n});\nsci.impl.analyzer.return_binding_call \x3d (function sci$impl$analyzer$return_binding_call(_ctx,expr,f,analyzed_children){\nreturn sci.impl.utils.ctx_fn((function (){var G__61697 \x3d cljs.core.count(analyzed_children);\nswitch (G__61697) {\ncase (0):\nreturn (function (ctx){\nvar fexpr__61698 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61698.cljs$core$IFn$_invoke$arity$0 ? fexpr__61698.cljs$core$IFn$_invoke$arity$0() : fexpr__61698.call(null));\n});\n\nbreak;\ncase (1):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nreturn (function (ctx){\nvar G__61700 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar fexpr__61699 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61699.cljs$core$IFn$_invoke$arity$1 ? fexpr__61699.cljs$core$IFn$_invoke$arity$1(G__61700) : fexpr__61699.call(null,G__61700));\n});\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn (function (ctx){\nvar G__61703 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61704 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar fexpr__61702 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61702.cljs$core$IFn$_invoke$arity$2 ? fexpr__61702.cljs$core$IFn$_invoke$arity$2(G__61703,G__61704) : fexpr__61702.call(null,G__61703,G__61704));\n});\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn (function (ctx){\nvar G__61707 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61708 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61709 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar fexpr__61706 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61706.cljs$core$IFn$_invoke$arity$3 ? fexpr__61706.cljs$core$IFn$_invoke$arity$3(G__61707,G__61708,G__61709) : fexpr__61706.call(null,G__61707,G__61708,G__61709));\n});\n\nbreak;\ncase (4):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nreturn (function (ctx){\nvar G__61711 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61712 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61713 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61714 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar fexpr__61710 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61710.cljs$core$IFn$_invoke$arity$4 ? fexpr__61710.cljs$core$IFn$_invoke$arity$4(G__61711,G__61712,G__61713,G__61714) : fexpr__61710.call(null,G__61711,G__61712,G__61713,G__61714));\n});\n\nbreak;\ncase (5):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nreturn (function (ctx){\nvar G__61717 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61718 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61719 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61720 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61721 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar fexpr__61716 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61716.cljs$core$IFn$_invoke$arity$5 ? fexpr__61716.cljs$core$IFn$_invoke$arity$5(G__61717,G__61718,G__61719,G__61720,G__61721) : fexpr__61716.call(null,G__61717,G__61718,G__61719,G__61720,G__61721));\n});\n\nbreak;\ncase (6):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nreturn (function (ctx){\nvar G__61724 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61725 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61726 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61727 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61728 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61729 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar fexpr__61723 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61723.cljs$core$IFn$_invoke$arity$6 ? fexpr__61723.cljs$core$IFn$_invoke$arity$6(G__61724,G__61725,G__61726,G__61727,G__61728,G__61729) : fexpr__61723.call(null,G__61724,G__61725,G__61726,G__61727,G__61728,G__61729));\n});\n\nbreak;\ncase (7):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nreturn (function (ctx){\nvar G__61732 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61733 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61734 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61735 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61736 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61737 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61738 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar fexpr__61731 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61731.cljs$core$IFn$_invoke$arity$7 ? fexpr__61731.cljs$core$IFn$_invoke$arity$7(G__61732,G__61733,G__61734,G__61735,G__61736,G__61737,G__61738) : fexpr__61731.call(null,G__61732,G__61733,G__61734,G__61735,G__61736,G__61737,G__61738));\n});\n\nbreak;\ncase (8):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nreturn (function (ctx){\nvar G__61741 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61742 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61743 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61744 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61745 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61746 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61747 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61748 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar fexpr__61740 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61740.cljs$core$IFn$_invoke$arity$8 ? fexpr__61740.cljs$core$IFn$_invoke$arity$8(G__61741,G__61742,G__61743,G__61744,G__61745,G__61746,G__61747,G__61748) : fexpr__61740.call(null,G__61741,G__61742,G__61743,G__61744,G__61745,G__61746,G__61747,G__61748));\n});\n\nbreak;\ncase (9):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nreturn (function (ctx){\nvar G__61751 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61752 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61753 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61754 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61755 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61756 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61757 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61758 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61759 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar fexpr__61750 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61750.cljs$core$IFn$_invoke$arity$9 ? fexpr__61750.cljs$core$IFn$_invoke$arity$9(G__61751,G__61752,G__61753,G__61754,G__61755,G__61756,G__61757,G__61758,G__61759) : fexpr__61750.call(null,G__61751,G__61752,G__61753,G__61754,G__61755,G__61756,G__61757,G__61758,G__61759));\n});\n\nbreak;\ncase (10):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nreturn (function (ctx){\nvar G__61762 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61763 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61764 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61765 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61766 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61767 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61768 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61769 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61770 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61771 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar fexpr__61761 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61761.cljs$core$IFn$_invoke$arity$10 ? fexpr__61761.cljs$core$IFn$_invoke$arity$10(G__61762,G__61763,G__61764,G__61765,G__61766,G__61767,G__61768,G__61769,G__61770,G__61771) : fexpr__61761.call(null,G__61762,G__61763,G__61764,G__61765,G__61766,G__61767,G__61768,G__61769,G__61770,G__61771));\n});\n\nbreak;\ncase (11):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nreturn (function (ctx){\nvar G__61775 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61776 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61777 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61778 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61779 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61780 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61781 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61782 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61783 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61784 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61785 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar fexpr__61774 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61774.cljs$core$IFn$_invoke$arity$11 ? fexpr__61774.cljs$core$IFn$_invoke$arity$11(G__61775,G__61776,G__61777,G__61778,G__61779,G__61780,G__61781,G__61782,G__61783,G__61784,G__61785) : fexpr__61774.call(null,G__61775,G__61776,G__61777,G__61778,G__61779,G__61780,G__61781,G__61782,G__61783,G__61784,G__61785));\n});\n\nbreak;\ncase (12):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nreturn (function (ctx){\nvar G__61788 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61789 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61790 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61791 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61792 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61793 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61794 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61795 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61796 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61797 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61798 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61799 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar fexpr__61787 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61787.cljs$core$IFn$_invoke$arity$12 ? fexpr__61787.cljs$core$IFn$_invoke$arity$12(G__61788,G__61789,G__61790,G__61791,G__61792,G__61793,G__61794,G__61795,G__61796,G__61797,G__61798,G__61799) : fexpr__61787.call(null,G__61788,G__61789,G__61790,G__61791,G__61792,G__61793,G__61794,G__61795,G__61796,G__61797,G__61798,G__61799));\n});\n\nbreak;\ncase (13):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nreturn (function (ctx){\nvar G__61802 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61803 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61804 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61805 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61806 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61807 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61808 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61809 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61810 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61811 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61812 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61813 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61814 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar fexpr__61801 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61801.cljs$core$IFn$_invoke$arity$13 ? fexpr__61801.cljs$core$IFn$_invoke$arity$13(G__61802,G__61803,G__61804,G__61805,G__61806,G__61807,G__61808,G__61809,G__61810,G__61811,G__61812,G__61813,G__61814) : fexpr__61801.call(null,G__61802,G__61803,G__61804,G__61805,G__61806,G__61807,G__61808,G__61809,G__61810,G__61811,G__61812,G__61813,G__61814));\n});\n\nbreak;\ncase (14):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nreturn (function (ctx){\nvar G__61816 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61817 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61818 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61819 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61820 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61821 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61822 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61823 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61824 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61825 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61826 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61827 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61828 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__61829 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar fexpr__61815 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61815.cljs$core$IFn$_invoke$arity$14 ? fexpr__61815.cljs$core$IFn$_invoke$arity$14(G__61816,G__61817,G__61818,G__61819,G__61820,G__61821,G__61822,G__61823,G__61824,G__61825,G__61826,G__61827,G__61828,G__61829) : fexpr__61815.call(null,G__61816,G__61817,G__61818,G__61819,G__61820,G__61821,G__61822,G__61823,G__61824,G__61825,G__61826,G__61827,G__61828,G__61829));\n});\n\nbreak;\ncase (15):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nreturn (function (ctx){\nvar G__61833 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61834 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61835 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61836 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61837 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61838 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61839 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61840 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61841 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61842 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61843 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61844 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61845 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__61846 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__61847 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar fexpr__61832 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61832.cljs$core$IFn$_invoke$arity$15 ? fexpr__61832.cljs$core$IFn$_invoke$arity$15(G__61833,G__61834,G__61835,G__61836,G__61837,G__61838,G__61839,G__61840,G__61841,G__61842,G__61843,G__61844,G__61845,G__61846,G__61847) : fexpr__61832.call(null,G__61833,G__61834,G__61835,G__61836,G__61837,G__61838,G__61839,G__61840,G__61841,G__61842,G__61843,G__61844,G__61845,G__61846,G__61847));\n});\n\nbreak;\ncase (16):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nreturn (function (ctx){\nvar G__61849 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61850 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61851 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61852 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61853 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61854 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61855 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61856 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61857 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61858 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61859 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61860 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61861 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__61862 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__61863 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__61864 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar fexpr__61848 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61848.cljs$core$IFn$_invoke$arity$16 ? fexpr__61848.cljs$core$IFn$_invoke$arity$16(G__61849,G__61850,G__61851,G__61852,G__61853,G__61854,G__61855,G__61856,G__61857,G__61858,G__61859,G__61860,G__61861,G__61862,G__61863,G__61864) : fexpr__61848.call(null,G__61849,G__61850,G__61851,G__61852,G__61853,G__61854,G__61855,G__61856,G__61857,G__61858,G__61859,G__61860,G__61861,G__61862,G__61863,G__61864));\n});\n\nbreak;\ncase (17):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nreturn (function (ctx){\nvar G__61874 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61875 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61876 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61877 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61878 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61879 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61880 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61881 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61882 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61883 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61884 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61885 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61886 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__61887 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__61888 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__61889 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__61890 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar fexpr__61873 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61873.cljs$core$IFn$_invoke$arity$17 ? fexpr__61873.cljs$core$IFn$_invoke$arity$17(G__61874,G__61875,G__61876,G__61877,G__61878,G__61879,G__61880,G__61881,G__61882,G__61883,G__61884,G__61885,G__61886,G__61887,G__61888,G__61889,G__61890) : fexpr__61873.call(null,G__61874,G__61875,G__61876,G__61877,G__61878,G__61879,G__61880,G__61881,G__61882,G__61883,G__61884,G__61885,G__61886,G__61887,G__61888,G__61889,G__61890));\n});\n\nbreak;\ncase (18):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nreturn (function (ctx){\nvar G__61892 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61893 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61894 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61895 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61896 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61897 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61898 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61899 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61900 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61901 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61902 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61903 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61904 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__61905 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__61906 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__61907 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__61908 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar G__61909 \x3d sci.impl.evaluator.eval(ctx,arg17);\nvar fexpr__61891 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61891.cljs$core$IFn$_invoke$arity$18 ? fexpr__61891.cljs$core$IFn$_invoke$arity$18(G__61892,G__61893,G__61894,G__61895,G__61896,G__61897,G__61898,G__61899,G__61900,G__61901,G__61902,G__61903,G__61904,G__61905,G__61906,G__61907,G__61908,G__61909) : fexpr__61891.call(null,G__61892,G__61893,G__61894,G__61895,G__61896,G__61897,G__61898,G__61899,G__61900,G__61901,G__61902,G__61903,G__61904,G__61905,G__61906,G__61907,G__61908,G__61909));\n});\n\nbreak;\ncase (19):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nvar arg18 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(18));\nreturn (function (ctx){\nvar G__61914 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61915 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61916 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61917 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61918 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61919 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61920 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61921 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61922 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__61923 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__61924 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__61925 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__61926 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__61927 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__61928 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__61929 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__61930 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar G__61931 \x3d sci.impl.evaluator.eval(ctx,arg17);\nvar G__61932 \x3d sci.impl.evaluator.eval(ctx,arg18);\nvar fexpr__61913 \x3d ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f);\nreturn (fexpr__61913.cljs$core$IFn$_invoke$arity$19 ? fexpr__61913.cljs$core$IFn$_invoke$arity$19(G__61914,G__61915,G__61916,G__61917,G__61918,G__61919,G__61920,G__61921,G__61922,G__61923,G__61924,G__61925,G__61926,G__61927,G__61928,G__61929,G__61930,G__61931,G__61932) : fexpr__61913.call(null,G__61914,G__61915,G__61916,G__61917,G__61918,G__61919,G__61920,G__61921,G__61922,G__61923,G__61924,G__61925,G__61926,G__61927,G__61928,G__61929,G__61930,G__61931,G__61932));\n});\n\nbreak;\ndefault:\nreturn (function (ctx){\nreturn sci.impl.evaluator.fn_call(ctx,ctx.get(new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192)).get(f),analyzed_children);\n});\n\n}\n})(),expr);\n});\nsci.impl.analyzer.return_needs_ctx_call \x3d (function sci$impl$analyzer$return_needs_ctx_call(_ctx,expr,f,analyzed_children){\nreturn sci.impl.utils.ctx_fn((function (){var G__61935 \x3d cljs.core.count(analyzed_children);\nswitch (G__61935) {\ncase (0):\nreturn (function (ctx){\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(ctx) : f.call(null,ctx));\n});\n\nbreak;\ncase (1):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nreturn (function (ctx){\nvar G__61936 \x3d ctx;\nvar G__61937 \x3d sci.impl.evaluator.eval(ctx,arg0);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__61936,G__61937) : f.call(null,G__61936,G__61937));\n});\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn (function (ctx){\nvar G__61938 \x3d ctx;\nvar G__61939 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61940 \x3d sci.impl.evaluator.eval(ctx,arg1);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__61938,G__61939,G__61940) : f.call(null,G__61938,G__61939,G__61940));\n});\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn (function (ctx){\nvar G__61941 \x3d ctx;\nvar G__61942 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61943 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61944 \x3d sci.impl.evaluator.eval(ctx,arg2);\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(G__61941,G__61942,G__61943,G__61944) : f.call(null,G__61941,G__61942,G__61943,G__61944));\n});\n\nbreak;\ncase (4):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nreturn (function (ctx){\nvar G__61945 \x3d ctx;\nvar G__61946 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61947 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61948 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61949 \x3d sci.impl.evaluator.eval(ctx,arg3);\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(G__61945,G__61946,G__61947,G__61948,G__61949) : f.call(null,G__61945,G__61946,G__61947,G__61948,G__61949));\n});\n\nbreak;\ncase (5):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nreturn (function (ctx){\nvar G__61951 \x3d ctx;\nvar G__61952 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61953 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61954 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61955 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61956 \x3d sci.impl.evaluator.eval(ctx,arg4);\nreturn (f.cljs$core$IFn$_invoke$arity$6 ? f.cljs$core$IFn$_invoke$arity$6(G__61951,G__61952,G__61953,G__61954,G__61955,G__61956) : f.call(null,G__61951,G__61952,G__61953,G__61954,G__61955,G__61956));\n});\n\nbreak;\ncase (6):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nreturn (function (ctx){\nvar G__61957 \x3d ctx;\nvar G__61958 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61959 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61960 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61961 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61962 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61963 \x3d sci.impl.evaluator.eval(ctx,arg5);\nreturn (f.cljs$core$IFn$_invoke$arity$7 ? f.cljs$core$IFn$_invoke$arity$7(G__61957,G__61958,G__61959,G__61960,G__61961,G__61962,G__61963) : f.call(null,G__61957,G__61958,G__61959,G__61960,G__61961,G__61962,G__61963));\n});\n\nbreak;\ncase (7):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nreturn (function (ctx){\nvar G__61969 \x3d ctx;\nvar G__61970 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61971 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61972 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61973 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61974 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61975 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61976 \x3d sci.impl.evaluator.eval(ctx,arg6);\nreturn (f.cljs$core$IFn$_invoke$arity$8 ? f.cljs$core$IFn$_invoke$arity$8(G__61969,G__61970,G__61971,G__61972,G__61973,G__61974,G__61975,G__61976) : f.call(null,G__61969,G__61970,G__61971,G__61972,G__61973,G__61974,G__61975,G__61976));\n});\n\nbreak;\ncase (8):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nreturn (function (ctx){\nvar G__61977 \x3d ctx;\nvar G__61978 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61979 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61980 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61981 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61982 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61983 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61984 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61985 \x3d sci.impl.evaluator.eval(ctx,arg7);\nreturn (f.cljs$core$IFn$_invoke$arity$9 ? f.cljs$core$IFn$_invoke$arity$9(G__61977,G__61978,G__61979,G__61980,G__61981,G__61982,G__61983,G__61984,G__61985) : f.call(null,G__61977,G__61978,G__61979,G__61980,G__61981,G__61982,G__61983,G__61984,G__61985));\n});\n\nbreak;\ncase (9):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nreturn (function (ctx){\nvar G__61986 \x3d ctx;\nvar G__61987 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61988 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61989 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__61990 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__61991 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__61992 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__61993 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__61994 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__61995 \x3d sci.impl.evaluator.eval(ctx,arg8);\nreturn (f.cljs$core$IFn$_invoke$arity$10 ? f.cljs$core$IFn$_invoke$arity$10(G__61986,G__61987,G__61988,G__61989,G__61990,G__61991,G__61992,G__61993,G__61994,G__61995) : f.call(null,G__61986,G__61987,G__61988,G__61989,G__61990,G__61991,G__61992,G__61993,G__61994,G__61995));\n});\n\nbreak;\ncase (10):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nreturn (function (ctx){\nvar G__61996 \x3d ctx;\nvar G__61997 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__61998 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__61999 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62000 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62001 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62002 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62003 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62004 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62005 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62006 \x3d sci.impl.evaluator.eval(ctx,arg9);\nreturn (f.cljs$core$IFn$_invoke$arity$11 ? f.cljs$core$IFn$_invoke$arity$11(G__61996,G__61997,G__61998,G__61999,G__62000,G__62001,G__62002,G__62003,G__62004,G__62005,G__62006) : f.call(null,G__61996,G__61997,G__61998,G__61999,G__62000,G__62001,G__62002,G__62003,G__62004,G__62005,G__62006));\n});\n\nbreak;\ncase (11):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nreturn (function (ctx){\nvar G__62008 \x3d ctx;\nvar G__62009 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62010 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62011 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62012 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62013 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62014 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62015 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62016 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62017 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62018 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62019 \x3d sci.impl.evaluator.eval(ctx,arg10);\nreturn (f.cljs$core$IFn$_invoke$arity$12 ? f.cljs$core$IFn$_invoke$arity$12(G__62008,G__62009,G__62010,G__62011,G__62012,G__62013,G__62014,G__62015,G__62016,G__62017,G__62018,G__62019) : f.call(null,G__62008,G__62009,G__62010,G__62011,G__62012,G__62013,G__62014,G__62015,G__62016,G__62017,G__62018,G__62019));\n});\n\nbreak;\ncase (12):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nreturn (function (ctx){\nvar G__62022 \x3d ctx;\nvar G__62023 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62024 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62025 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62026 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62027 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62028 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62029 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62030 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62031 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62032 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62033 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62034 \x3d sci.impl.evaluator.eval(ctx,arg11);\nreturn (f.cljs$core$IFn$_invoke$arity$13 ? f.cljs$core$IFn$_invoke$arity$13(G__62022,G__62023,G__62024,G__62025,G__62026,G__62027,G__62028,G__62029,G__62030,G__62031,G__62032,G__62033,G__62034) : f.call(null,G__62022,G__62023,G__62024,G__62025,G__62026,G__62027,G__62028,G__62029,G__62030,G__62031,G__62032,G__62033,G__62034));\n});\n\nbreak;\ncase (13):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nreturn (function (ctx){\nvar G__62037 \x3d ctx;\nvar G__62038 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62039 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62040 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62041 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62042 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62043 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62044 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62045 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62046 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62047 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62048 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62049 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62050 \x3d sci.impl.evaluator.eval(ctx,arg12);\nreturn (f.cljs$core$IFn$_invoke$arity$14 ? f.cljs$core$IFn$_invoke$arity$14(G__62037,G__62038,G__62039,G__62040,G__62041,G__62042,G__62043,G__62044,G__62045,G__62046,G__62047,G__62048,G__62049,G__62050) : f.call(null,G__62037,G__62038,G__62039,G__62040,G__62041,G__62042,G__62043,G__62044,G__62045,G__62046,G__62047,G__62048,G__62049,G__62050));\n});\n\nbreak;\ncase (14):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nreturn (function (ctx){\nvar G__62052 \x3d ctx;\nvar G__62053 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62054 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62055 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62056 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62057 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62058 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62059 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62060 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62061 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62062 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62063 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62064 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62065 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62066 \x3d sci.impl.evaluator.eval(ctx,arg13);\nreturn (f.cljs$core$IFn$_invoke$arity$15 ? f.cljs$core$IFn$_invoke$arity$15(G__62052,G__62053,G__62054,G__62055,G__62056,G__62057,G__62058,G__62059,G__62060,G__62061,G__62062,G__62063,G__62064,G__62065,G__62066) : f.call(null,G__62052,G__62053,G__62054,G__62055,G__62056,G__62057,G__62058,G__62059,G__62060,G__62061,G__62062,G__62063,G__62064,G__62065,G__62066));\n});\n\nbreak;\ncase (15):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nreturn (function (ctx){\nvar G__62069 \x3d ctx;\nvar G__62070 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62071 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62072 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62073 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62074 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62075 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62076 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62077 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62078 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62079 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62080 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62081 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62082 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62083 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62084 \x3d sci.impl.evaluator.eval(ctx,arg14);\nreturn (f.cljs$core$IFn$_invoke$arity$16 ? f.cljs$core$IFn$_invoke$arity$16(G__62069,G__62070,G__62071,G__62072,G__62073,G__62074,G__62075,G__62076,G__62077,G__62078,G__62079,G__62080,G__62081,G__62082,G__62083,G__62084) : f.call(null,G__62069,G__62070,G__62071,G__62072,G__62073,G__62074,G__62075,G__62076,G__62077,G__62078,G__62079,G__62080,G__62081,G__62082,G__62083,G__62084));\n});\n\nbreak;\ncase (16):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nreturn (function (ctx){\nvar G__62086 \x3d ctx;\nvar G__62087 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62088 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62089 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62090 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62091 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62092 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62093 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62094 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62095 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62096 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62097 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62098 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62099 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62100 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62101 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62102 \x3d sci.impl.evaluator.eval(ctx,arg15);\nreturn (f.cljs$core$IFn$_invoke$arity$17 ? f.cljs$core$IFn$_invoke$arity$17(G__62086,G__62087,G__62088,G__62089,G__62090,G__62091,G__62092,G__62093,G__62094,G__62095,G__62096,G__62097,G__62098,G__62099,G__62100,G__62101,G__62102) : f.call(null,G__62086,G__62087,G__62088,G__62089,G__62090,G__62091,G__62092,G__62093,G__62094,G__62095,G__62096,G__62097,G__62098,G__62099,G__62100,G__62101,G__62102));\n});\n\nbreak;\ncase (17):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nreturn (function (ctx){\nvar G__62104 \x3d ctx;\nvar G__62105 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62106 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62107 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62108 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62109 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62110 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62111 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62112 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62113 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62114 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62115 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62116 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62117 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62118 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62119 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62120 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__62121 \x3d sci.impl.evaluator.eval(ctx,arg16);\nreturn (f.cljs$core$IFn$_invoke$arity$18 ? f.cljs$core$IFn$_invoke$arity$18(G__62104,G__62105,G__62106,G__62107,G__62108,G__62109,G__62110,G__62111,G__62112,G__62113,G__62114,G__62115,G__62116,G__62117,G__62118,G__62119,G__62120,G__62121) : f.call(null,G__62104,G__62105,G__62106,G__62107,G__62108,G__62109,G__62110,G__62111,G__62112,G__62113,G__62114,G__62115,G__62116,G__62117,G__62118,G__62119,G__62120,G__62121));\n});\n\nbreak;\ncase (18):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nreturn (function (ctx){\nvar G__62124 \x3d ctx;\nvar G__62125 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62126 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62127 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62128 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62129 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62130 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62131 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62132 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62133 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62134 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62135 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62136 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62137 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62138 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62139 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62140 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__62141 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar G__62142 \x3d sci.impl.evaluator.eval(ctx,arg17);\nreturn (f.cljs$core$IFn$_invoke$arity$19 ? f.cljs$core$IFn$_invoke$arity$19(G__62124,G__62125,G__62126,G__62127,G__62128,G__62129,G__62130,G__62131,G__62132,G__62133,G__62134,G__62135,G__62136,G__62137,G__62138,G__62139,G__62140,G__62141,G__62142) : f.call(null,G__62124,G__62125,G__62126,G__62127,G__62128,G__62129,G__62130,G__62131,G__62132,G__62133,G__62134,G__62135,G__62136,G__62137,G__62138,G__62139,G__62140,G__62141,G__62142));\n});\n\nbreak;\ncase (19):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nvar arg18 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(18));\nreturn (function (ctx){\nvar G__62145 \x3d ctx;\nvar G__62146 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62147 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62148 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62149 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62150 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62151 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62152 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62153 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62154 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62155 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62156 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62157 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62158 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62159 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62160 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62161 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__62162 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar G__62163 \x3d sci.impl.evaluator.eval(ctx,arg17);\nvar G__62164 \x3d sci.impl.evaluator.eval(ctx,arg18);\nreturn (f.cljs$core$IFn$_invoke$arity$20 ? f.cljs$core$IFn$_invoke$arity$20(G__62145,G__62146,G__62147,G__62148,G__62149,G__62150,G__62151,G__62152,G__62153,G__62154,G__62155,G__62156,G__62157,G__62158,G__62159,G__62160,G__62161,G__62162,G__62163,G__62164) : f.call(null,G__62145,G__62146,G__62147,G__62148,G__62149,G__62150,G__62151,G__62152,G__62153,G__62154,G__62155,G__62156,G__62157,G__62158,G__62159,G__62160,G__62161,G__62162,G__62163,G__62164));\n});\n\nbreak;\ndefault:\nreturn (function (ctx){\nreturn sci.impl.evaluator.fn_call(ctx,f,cljs.core.cons(ctx,analyzed_children));\n});\n\n}\n})(),expr);\n});\nsci.impl.analyzer.return_call \x3d (function sci$impl$analyzer$return_call(_ctx,expr,f,analyzed_children){\nreturn sci.impl.utils.ctx_fn((function (){var G__62168 \x3d cljs.core.count(analyzed_children);\nswitch (G__62168) {\ncase (0):\nreturn (function (ctx){\nreturn (f.cljs$core$IFn$_invoke$arity$0 ? f.cljs$core$IFn$_invoke$arity$0() : f.call(null));\n});\n\nbreak;\ncase (1):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nreturn (function (ctx){\nvar G__62170 \x3d sci.impl.evaluator.eval(ctx,arg0);\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(G__62170) : f.call(null,G__62170));\n});\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nreturn (function (ctx){\nvar G__62171 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62172 \x3d sci.impl.evaluator.eval(ctx,arg1);\nreturn (f.cljs$core$IFn$_invoke$arity$2 ? f.cljs$core$IFn$_invoke$arity$2(G__62171,G__62172) : f.call(null,G__62171,G__62172));\n});\n\nbreak;\ncase (3):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nreturn (function (ctx){\nvar G__62174 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62175 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62176 \x3d sci.impl.evaluator.eval(ctx,arg2);\nreturn (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(G__62174,G__62175,G__62176) : f.call(null,G__62174,G__62175,G__62176));\n});\n\nbreak;\ncase (4):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nreturn (function (ctx){\nvar G__62177 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62179 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62180 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62181 \x3d sci.impl.evaluator.eval(ctx,arg3);\nreturn (f.cljs$core$IFn$_invoke$arity$4 ? f.cljs$core$IFn$_invoke$arity$4(G__62177,G__62179,G__62180,G__62181) : f.call(null,G__62177,G__62179,G__62180,G__62181));\n});\n\nbreak;\ncase (5):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nreturn (function (ctx){\nvar G__62182 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62183 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62184 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62185 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62186 \x3d sci.impl.evaluator.eval(ctx,arg4);\nreturn (f.cljs$core$IFn$_invoke$arity$5 ? f.cljs$core$IFn$_invoke$arity$5(G__62182,G__62183,G__62184,G__62185,G__62186) : f.call(null,G__62182,G__62183,G__62184,G__62185,G__62186));\n});\n\nbreak;\ncase (6):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nreturn (function (ctx){\nvar G__62188 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62189 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62190 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62191 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62192 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62193 \x3d sci.impl.evaluator.eval(ctx,arg5);\nreturn (f.cljs$core$IFn$_invoke$arity$6 ? f.cljs$core$IFn$_invoke$arity$6(G__62188,G__62189,G__62190,G__62191,G__62192,G__62193) : f.call(null,G__62188,G__62189,G__62190,G__62191,G__62192,G__62193));\n});\n\nbreak;\ncase (7):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nreturn (function (ctx){\nvar G__62195 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62196 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62197 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62198 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62199 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62200 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62201 \x3d sci.impl.evaluator.eval(ctx,arg6);\nreturn (f.cljs$core$IFn$_invoke$arity$7 ? f.cljs$core$IFn$_invoke$arity$7(G__62195,G__62196,G__62197,G__62198,G__62199,G__62200,G__62201) : f.call(null,G__62195,G__62196,G__62197,G__62198,G__62199,G__62200,G__62201));\n});\n\nbreak;\ncase (8):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nreturn (function (ctx){\nvar G__62203 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62204 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62205 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62206 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62207 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62208 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62209 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62210 \x3d sci.impl.evaluator.eval(ctx,arg7);\nreturn (f.cljs$core$IFn$_invoke$arity$8 ? f.cljs$core$IFn$_invoke$arity$8(G__62203,G__62204,G__62205,G__62206,G__62207,G__62208,G__62209,G__62210) : f.call(null,G__62203,G__62204,G__62205,G__62206,G__62207,G__62208,G__62209,G__62210));\n});\n\nbreak;\ncase (9):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nreturn (function (ctx){\nvar G__62212 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62213 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62214 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62215 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62216 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62217 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62218 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62219 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62220 \x3d sci.impl.evaluator.eval(ctx,arg8);\nreturn (f.cljs$core$IFn$_invoke$arity$9 ? f.cljs$core$IFn$_invoke$arity$9(G__62212,G__62213,G__62214,G__62215,G__62216,G__62217,G__62218,G__62219,G__62220) : f.call(null,G__62212,G__62213,G__62214,G__62215,G__62216,G__62217,G__62218,G__62219,G__62220));\n});\n\nbreak;\ncase (10):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nreturn (function (ctx){\nvar G__62222 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62223 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62224 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62225 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62226 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62227 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62228 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62229 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62230 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62231 \x3d sci.impl.evaluator.eval(ctx,arg9);\nreturn (f.cljs$core$IFn$_invoke$arity$10 ? f.cljs$core$IFn$_invoke$arity$10(G__62222,G__62223,G__62224,G__62225,G__62226,G__62227,G__62228,G__62229,G__62230,G__62231) : f.call(null,G__62222,G__62223,G__62224,G__62225,G__62226,G__62227,G__62228,G__62229,G__62230,G__62231));\n});\n\nbreak;\ncase (11):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nreturn (function (ctx){\nvar G__62234 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62235 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62236 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62237 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62238 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62239 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62240 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62241 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62242 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62243 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62244 \x3d sci.impl.evaluator.eval(ctx,arg10);\nreturn (f.cljs$core$IFn$_invoke$arity$11 ? f.cljs$core$IFn$_invoke$arity$11(G__62234,G__62235,G__62236,G__62237,G__62238,G__62239,G__62240,G__62241,G__62242,G__62243,G__62244) : f.call(null,G__62234,G__62235,G__62236,G__62237,G__62238,G__62239,G__62240,G__62241,G__62242,G__62243,G__62244));\n});\n\nbreak;\ncase (12):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nreturn (function (ctx){\nvar G__62246 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62247 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62248 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62249 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62250 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62251 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62252 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62253 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62254 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62255 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62256 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62257 \x3d sci.impl.evaluator.eval(ctx,arg11);\nreturn (f.cljs$core$IFn$_invoke$arity$12 ? f.cljs$core$IFn$_invoke$arity$12(G__62246,G__62247,G__62248,G__62249,G__62250,G__62251,G__62252,G__62253,G__62254,G__62255,G__62256,G__62257) : f.call(null,G__62246,G__62247,G__62248,G__62249,G__62250,G__62251,G__62252,G__62253,G__62254,G__62255,G__62256,G__62257));\n});\n\nbreak;\ncase (13):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nreturn (function (ctx){\nvar G__62260 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62261 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62262 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62263 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62264 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62265 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62266 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62267 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62268 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62269 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62270 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62271 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62272 \x3d sci.impl.evaluator.eval(ctx,arg12);\nreturn (f.cljs$core$IFn$_invoke$arity$13 ? f.cljs$core$IFn$_invoke$arity$13(G__62260,G__62261,G__62262,G__62263,G__62264,G__62265,G__62266,G__62267,G__62268,G__62269,G__62270,G__62271,G__62272) : f.call(null,G__62260,G__62261,G__62262,G__62263,G__62264,G__62265,G__62266,G__62267,G__62268,G__62269,G__62270,G__62271,G__62272));\n});\n\nbreak;\ncase (14):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nreturn (function (ctx){\nvar G__62274 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62275 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62276 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62277 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62278 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62279 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62280 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62281 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62282 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62283 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62284 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62285 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62286 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62287 \x3d sci.impl.evaluator.eval(ctx,arg13);\nreturn (f.cljs$core$IFn$_invoke$arity$14 ? f.cljs$core$IFn$_invoke$arity$14(G__62274,G__62275,G__62276,G__62277,G__62278,G__62279,G__62280,G__62281,G__62282,G__62283,G__62284,G__62285,G__62286,G__62287) : f.call(null,G__62274,G__62275,G__62276,G__62277,G__62278,G__62279,G__62280,G__62281,G__62282,G__62283,G__62284,G__62285,G__62286,G__62287));\n});\n\nbreak;\ncase (15):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nreturn (function (ctx){\nvar G__62290 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62291 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62292 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62293 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62294 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62295 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62296 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62297 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62298 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62299 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62300 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62301 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62302 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62303 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62304 \x3d sci.impl.evaluator.eval(ctx,arg14);\nreturn (f.cljs$core$IFn$_invoke$arity$15 ? f.cljs$core$IFn$_invoke$arity$15(G__62290,G__62291,G__62292,G__62293,G__62294,G__62295,G__62296,G__62297,G__62298,G__62299,G__62300,G__62301,G__62302,G__62303,G__62304) : f.call(null,G__62290,G__62291,G__62292,G__62293,G__62294,G__62295,G__62296,G__62297,G__62298,G__62299,G__62300,G__62301,G__62302,G__62303,G__62304));\n});\n\nbreak;\ncase (16):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nreturn (function (ctx){\nvar G__62306 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62307 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62308 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62309 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62310 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62311 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62312 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62313 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62314 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62315 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62316 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62317 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62318 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62319 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62320 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62321 \x3d sci.impl.evaluator.eval(ctx,arg15);\nreturn (f.cljs$core$IFn$_invoke$arity$16 ? f.cljs$core$IFn$_invoke$arity$16(G__62306,G__62307,G__62308,G__62309,G__62310,G__62311,G__62312,G__62313,G__62314,G__62315,G__62316,G__62317,G__62318,G__62319,G__62320,G__62321) : f.call(null,G__62306,G__62307,G__62308,G__62309,G__62310,G__62311,G__62312,G__62313,G__62314,G__62315,G__62316,G__62317,G__62318,G__62319,G__62320,G__62321));\n});\n\nbreak;\ncase (17):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nreturn (function (ctx){\nvar G__62324 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62325 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62326 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62327 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62328 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62329 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62330 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62331 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62332 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62333 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62334 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62335 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62336 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62337 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62338 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62339 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__62340 \x3d sci.impl.evaluator.eval(ctx,arg16);\nreturn (f.cljs$core$IFn$_invoke$arity$17 ? f.cljs$core$IFn$_invoke$arity$17(G__62324,G__62325,G__62326,G__62327,G__62328,G__62329,G__62330,G__62331,G__62332,G__62333,G__62334,G__62335,G__62336,G__62337,G__62338,G__62339,G__62340) : f.call(null,G__62324,G__62325,G__62326,G__62327,G__62328,G__62329,G__62330,G__62331,G__62332,G__62333,G__62334,G__62335,G__62336,G__62337,G__62338,G__62339,G__62340));\n});\n\nbreak;\ncase (18):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nreturn (function (ctx){\nvar G__62343 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62344 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62345 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62346 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62347 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62348 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62349 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62350 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62351 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62352 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62353 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62354 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62355 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62356 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62357 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62358 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__62359 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar G__62360 \x3d sci.impl.evaluator.eval(ctx,arg17);\nreturn (f.cljs$core$IFn$_invoke$arity$18 ? f.cljs$core$IFn$_invoke$arity$18(G__62343,G__62344,G__62345,G__62346,G__62347,G__62348,G__62349,G__62350,G__62351,G__62352,G__62353,G__62354,G__62355,G__62356,G__62357,G__62358,G__62359,G__62360) : f.call(null,G__62343,G__62344,G__62345,G__62346,G__62347,G__62348,G__62349,G__62350,G__62351,G__62352,G__62353,G__62354,G__62355,G__62356,G__62357,G__62358,G__62359,G__62360));\n});\n\nbreak;\ncase (19):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(1));\nvar arg2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(2));\nvar arg3 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(3));\nvar arg4 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(4));\nvar arg5 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(5));\nvar arg6 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(6));\nvar arg7 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(7));\nvar arg8 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(8));\nvar arg9 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(9));\nvar arg10 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(10));\nvar arg11 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(11));\nvar arg12 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(12));\nvar arg13 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(13));\nvar arg14 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(14));\nvar arg15 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(15));\nvar arg16 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(16));\nvar arg17 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(17));\nvar arg18 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(analyzed_children,(18));\nreturn (function (ctx){\nvar G__62363 \x3d sci.impl.evaluator.eval(ctx,arg0);\nvar G__62364 \x3d sci.impl.evaluator.eval(ctx,arg1);\nvar G__62365 \x3d sci.impl.evaluator.eval(ctx,arg2);\nvar G__62366 \x3d sci.impl.evaluator.eval(ctx,arg3);\nvar G__62367 \x3d sci.impl.evaluator.eval(ctx,arg4);\nvar G__62368 \x3d sci.impl.evaluator.eval(ctx,arg5);\nvar G__62369 \x3d sci.impl.evaluator.eval(ctx,arg6);\nvar G__62370 \x3d sci.impl.evaluator.eval(ctx,arg7);\nvar G__62371 \x3d sci.impl.evaluator.eval(ctx,arg8);\nvar G__62372 \x3d sci.impl.evaluator.eval(ctx,arg9);\nvar G__62373 \x3d sci.impl.evaluator.eval(ctx,arg10);\nvar G__62374 \x3d sci.impl.evaluator.eval(ctx,arg11);\nvar G__62375 \x3d sci.impl.evaluator.eval(ctx,arg12);\nvar G__62376 \x3d sci.impl.evaluator.eval(ctx,arg13);\nvar G__62377 \x3d sci.impl.evaluator.eval(ctx,arg14);\nvar G__62378 \x3d sci.impl.evaluator.eval(ctx,arg15);\nvar G__62379 \x3d sci.impl.evaluator.eval(ctx,arg16);\nvar G__62380 \x3d sci.impl.evaluator.eval(ctx,arg17);\nvar G__62381 \x3d sci.impl.evaluator.eval(ctx,arg18);\nreturn (f.cljs$core$IFn$_invoke$arity$19 ? f.cljs$core$IFn$_invoke$arity$19(G__62363,G__62364,G__62365,G__62366,G__62367,G__62368,G__62369,G__62370,G__62371,G__62372,G__62373,G__62374,G__62375,G__62376,G__62377,G__62378,G__62379,G__62380,G__62381) : f.call(null,G__62363,G__62364,G__62365,G__62366,G__62367,G__62368,G__62369,G__62370,G__62371,G__62372,G__62373,G__62374,G__62375,G__62376,G__62377,G__62378,G__62379,G__62380,G__62381));\n});\n\nbreak;\ndefault:\nreturn (function (ctx){\nreturn sci.impl.evaluator.fn_call(ctx,f,analyzed_children);\n});\n\n}\n})(),expr);\n});\nsci.impl.analyzer.analyze_call \x3d (function sci$impl$analyzer$analyze_call(ctx,expr,top_level_QMARK_){\nvar f \x3d cljs.core.first(expr);\nif((f instanceof cljs.core.Symbol)){\nvar special_sym \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(sci.impl.analyzer.special_syms,f);\nvar _ \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d special_sym;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(null,\x22check-permissions\x22,\x22check-permissions\x22,669054317).cljs$core$IFn$_invoke$arity$1(ctx);\n} else {\nreturn and__4149__auto__;\n}\n})())?sci.impl.resolve.check_permission_BANG_(ctx,f,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [special_sym,null], null)):null);\nvar f__$1 \x3d (function (){var or__4160__auto__ \x3d special_sym;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$3(ctx,f,true);\n}\n})();\nvar f_meta \x3d cljs.core.meta(f__$1);\nvar eval_QMARK_ \x3d (function (){var and__4149__auto__ \x3d f_meta;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978).cljs$core$IFn$_invoke$arity$1(f_meta);\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d f_meta;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn new cljs.core.Keyword(\x22sci.impl.analyzer\x22,\x22static-access\x22,\x22sci.impl.analyzer/static-access\x22,-79014000).cljs$core$IFn$_invoke$arity$1(f_meta);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn sci.impl.analyzer.expand_dot_STAR__STAR_(ctx,cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$4(new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),cljs.core.first(f__$1),cljs.core.second(f__$1),cljs.core.rest(expr)));\n} else {\nif(cljs.core.truth_(((cljs.core.not(eval_QMARK_))?(function (){var or__4160__auto__ \x3d special_sym;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.contains_QMARK_(sci.impl.utils.ana_macros,f__$1);\n}\n})():false))){\nvar G__62384 \x3d f__$1;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),G__62384)){\nreturn sci.impl.analyzer.expand_dot_STAR__STAR_(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22and\x22,\x22and\x22,668631710,null),G__62384)){\nreturn sci.impl.analyzer.return_and(expr,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22import\x22,\x22import\x22,241030818,null),G__62384)){\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22case\x22,\x22case\x22,-1510733573,null),G__62384)){\nreturn sci.impl.analyzer.expand_case(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),G__62384)){\nreturn sci.impl.analyzer.expand_fn(ctx,expr,false);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),G__62384)){\nreturn sci.impl.analyzer.return_if(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22defmacro\x22,\x22defmacro\x22,2054157304,null),G__62384)){\nvar ret \x3d sci.impl.analyzer.expand_defn(ctx,expr);\nreturn ret;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22defn\x22,\x22defn\x22,-126010802,null),G__62384)){\nvar ret \x3d sci.impl.analyzer.expand_defn(ctx,expr);\nreturn ret;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),G__62384)){\nreturn sci.impl.analyzer.return_do(expr,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22loop\x22,\x22loop\x22,1244978678,null),G__62384)){\nreturn sci.impl.analyzer.expand_loop(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22doseq\x22,\x22doseq\x22,221164135,null),G__62384)){\nvar G__62385 \x3d ctx;\nvar G__62386 \x3d sci.impl.doseq_macro.expand_doseq(ctx,expr);\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__62385,G__62386) : sci.impl.analyzer.analyze.call(null,G__62385,G__62386));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22expand-constructor\x22,\x22expand-constructor\x22,-343741576,null),G__62384)){\nreturn sci.impl.analyzer.expand_constructor(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),G__62384)){\nreturn sci.impl.analyzer.expand_def(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22declare\x22,\x22declare\x22,654042991,null),G__62384)){\nreturn sci.impl.analyzer.expand_declare(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),G__62384)){\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22expand-dot*\x22,\x22expand-dot*\x22,-1946890561,null),G__62384)){\nreturn sci.impl.analyzer.expand_dot_STAR_(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),G__62384)){\nreturn sci.impl.analyzer.analyze_ns_form(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22for\x22,\x22for\x22,316745208,null),G__62384)){\nvar res \x3d sci.impl.for_macro.expand_for(ctx,expr);\nif(cljs.core.truth_(new cljs.core.Keyword(\x22sci.impl\x22,\x22macroexpanding\x22,\x22sci.impl/macroexpanding\x22,2113471825).cljs$core$IFn$_invoke$arity$1(ctx))){\nreturn res;\n} else {\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,res) : sci.impl.analyzer.analyze.call(null,ctx,res));\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22let\x22,\x22let\x22,358118826,null),G__62384)){\nreturn sci.impl.analyzer.expand_let(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),G__62384)){\nreturn sci.impl.analyzer.expand_fn(ctx,expr,false);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22set!\x22,\x22set!\x22,250714521,null),G__62384)){\nreturn sci.impl.analyzer.analyze_set_BANG_(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22recur\x22,\x22recur\x22,1202958259,null),G__62384)){\nreturn sci.impl.analyzer.return_recur(expr,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),G__62384)){\nreturn sci.impl.analyzer.expand_new(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),G__62384)){\nreturn sci.impl.analyzer.analyze_var(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22lazy-seq\x22,\x22lazy-seq\x22,489632906,null),G__62384)){\nreturn sci.impl.analyzer.expand_lazy_seq(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),G__62384)){\nreturn sci.impl.analyzer.expand_try(ctx,expr);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22or\x22,\x22or\x22,1876275696,null),G__62384)){\nreturn sci.impl.analyzer.return_or(expr,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.cons(f__$1,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr))));\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n} else {\ntry{if(cljs.core.truth_(sci.impl.utils.macro_QMARK_(f__$1))){\nvar needs_ctx_QMARK_ \x3d (sci.impl.utils.needs_ctx \x3d\x3d\x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(f__$1)));\nvar v \x3d ((needs_ctx_QMARK_)?cljs.core.apply.cljs$core$IFn$_invoke$arity$5(f__$1,expr,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192).cljs$core$IFn$_invoke$arity$1(ctx),ctx,cljs.core.rest(expr)):cljs.core.apply.cljs$core$IFn$_invoke$arity$4(f__$1,expr,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192).cljs$core$IFn$_invoke$arity$1(ctx),cljs.core.rest(expr)));\nvar expanded \x3d (cljs.core.truth_(new cljs.core.Keyword(\x22sci.impl\x22,\x22macroexpanding\x22,\x22sci.impl/macroexpanding\x22,2113471825).cljs$core$IFn$_invoke$arity$1(ctx))?v:(cljs.core.truth_((function (){var and__4149__auto__ \x3d top_level_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((cljs.core.seq_QMARK_(v)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),cljs.core.first(v))));\n} else {\nreturn and__4149__auto__;\n}\n})())?sci.impl.types.__GT_EvalForm(v):(sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,v) : sci.impl.analyzer.analyze.call(null,ctx,v))\n));\nreturn expanded;\n} else {\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593).cljs$core$IFn$_invoke$arity$1(f_meta);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar f__$2 \x3d temp__5751__auto__;\nreturn sci.impl.analyzer.return_call(ctx,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$3(cljs.core.cons(f__$2,cljs.core.rest(expr)),new cljs.core.Keyword(\x22sci.impl\x22,\x22f-meta\x22,\x22sci.impl/f-meta\x22,-1735495322),f_meta),f__$2,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nvar temp__5751__auto____$1 \x3d new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(f__$1));\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar op \x3d temp__5751__auto____$1;\nif((sci.impl.utils.needs_ctx \x3d\x3d\x3d op)){\nreturn sci.impl.analyzer.return_needs_ctx_call(ctx,expr,f__$1,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22resolve-sym\x22,\x22resolve-sym\x22,-1193683260),op) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(null,\x22resolve-sym\x22,\x22resolve-sym\x22,-1193683260),op)))){\nreturn sci.impl.analyzer.return_binding_call(ctx,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$3(cljs.core.cons(f__$1,cljs.core.rest(expr)),new cljs.core.Keyword(\x22sci.impl\x22,\x22f-meta\x22,\x22sci.impl/f-meta\x22,-1735495322),f_meta),f__$1,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr)));\n} else {\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.cons(f__$1,sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr))));\n\n}\n}\n} else {\nvar children \x3d sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr));\nreturn sci.impl.analyzer.return_call(ctx,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$3(cljs.core.cons(f__$1,children),new cljs.core.Keyword(\x22sci.impl\x22,\x22f-meta\x22,\x22sci.impl/f-meta\x22,-1735495322),f_meta),f__$1,children);\n}\n}\n}\n}catch (e62389){if((e62389 instanceof Error)){\nvar e \x3d e62389;\nreturn sci.impl.utils.rethrow_with_location_of_node(ctx,e,sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.with_meta(cljs.core.cons(f__$1,cljs.core.rest(expr)),cljs.core.meta(expr))));\n} else {\nthrow e62389;\n\n}\n}\n}\n}\n} else {\nif((f instanceof cljs.core.Keyword)){\nvar children \x3d sci.impl.analyzer.analyze_children(ctx,cljs.core.rest(expr));\nvar G__62392 \x3d cljs.core.count(children);\nswitch (G__62392) {\ncase (1):\nvar arg \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(0));\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nreturn f.cljs$core$IFn$_invoke$arity$1(sci.impl.evaluator.eval(ctx__$1,arg));\n}),expr);\n\nbreak;\ncase (2):\nvar arg0 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(0));\nvar arg1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(children,(1));\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nreturn f.cljs$core$IFn$_invoke$arity$2(sci.impl.evaluator.eval(ctx__$1,arg0),sci.impl.evaluator.eval(ctx__$1,arg1));\n}),expr);\n\nbreak;\ndefault:\nreturn sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(cljs.core.cons(f,children));\n\n}\n} else {\nvar ret \x3d sci.impl.utils.mark_eval_call.cljs$core$IFn$_invoke$arity$1(sci.impl.analyzer.analyze_children(ctx,expr));\nreturn ret;\n\n}\n}\n});\nsci.impl.analyzer.constant_colls \x3d true;\nsci.impl.analyzer.return_map \x3d (function sci$impl$analyzer$return_map(ctx,the_map){\nvar children \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentVector.EMPTY,cljs.core.cat,the_map);\nvar analyzed_children \x3d sci.impl.analyzer.analyze_children(ctx,children);\nif((cljs.core.count(analyzed_children) \x3c\x3d (16))){\nreturn sci.impl.analyzer.return_call(ctx,the_map,cljs.core.array_map,analyzed_children);\n} else {\nreturn sci.impl.analyzer.return_call(ctx,the_map,cljs.core.hash_map,analyzed_children);\n}\n});\nsci.impl.analyzer.analyze_map \x3d (function sci$impl$analyzer$analyze_map(ctx,expr,m){\nvar ks \x3d cljs.core.keys(expr);\nvar vs \x3d cljs.core.vals(expr);\nvar constant_map_QMARK_ \x3d ((true) \x26\x26 (cljs.core.every_QMARK_(sci.impl.utils.constant_QMARK_,ks)) \x26\x26 (cljs.core.every_QMARK_(sci.impl.utils.constant_QMARK_,vs)));\nvar analyzed_map \x3d ((constant_map_QMARK_)?expr:((cljs.core.not(new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964).cljs$core$IFn$_invoke$arity$1(ctx)))?sci.impl.analyzer.return_map(ctx,expr):cljs.core.zipmap(sci.impl.analyzer.analyze_children(ctx,ks),sci.impl.analyzer.analyze_children(ctx,vs))\n));\nvar analyzed_meta \x3d (cljs.core.truth_(m)?(function (){var G__62403 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22meta\x22,\x22meta\x22,1499536964),true);\nvar G__62404 \x3d m;\nreturn (sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(G__62403,G__62404) : sci.impl.analyzer.analyze.call(null,G__62403,G__62404));\n})():null);\nvar analyzed_meta__$1 \x3d ((((constant_map_QMARK_) \x26\x26 ((m \x3d\x3d\x3d analyzed_meta))))?analyzed_meta:cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(analyzed_meta,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),new cljs.core.Keyword(null,\x22eval\x22,\x22eval\x22,-1103567905)));\nvar ret \x3d (cljs.core.truth_(analyzed_meta__$1)?(((analyzed_map instanceof sci.impl.types.EvalFn))?sci.impl.utils.ctx_fn((function (ctx__$1){\nvar md \x3d sci.impl.evaluator.handle_meta(ctx__$1,analyzed_meta__$1);\nvar coll \x3d sci.impl.evaluator.eval(ctx__$1,analyzed_map);\nreturn cljs.core.with_meta(coll,md);\n}),expr):cljs.core.with_meta(analyzed_map,analyzed_meta__$1)):analyzed_map);\nreturn ret;\n});\n/**\n * Returns analyzed vector or set\n */\nsci.impl.analyzer.analyze_vec_or_set \x3d (function sci$impl$analyzer$analyze_vec_or_set(ctx,_f1,f2,expr,m){\nvar constant_coll_QMARK_ \x3d ((true) \x26\x26 (cljs.core.every_QMARK_(sci.impl.utils.constant_QMARK_,expr)));\nvar analyzed_meta \x3d (cljs.core.truth_(m)?(sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 ? sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,m) : sci.impl.analyzer.analyze.call(null,ctx,m)):null);\nvar must_eval \x3d (((!(constant_coll_QMARK_))) || ((!((m \x3d\x3d\x3d analyzed_meta)))));\nvar analyzed_coll \x3d (((!(must_eval)))?expr:(cljs.core.truth_(m)?(function (){var ef \x3d sci.impl.analyzer.return_call(ctx,expr,f2,sci.impl.analyzer.analyze_children(ctx,expr));\nreturn sci.impl.utils.ctx_fn((function (ctx__$1){\nvar md \x3d sci.impl.evaluator.eval(ctx__$1,analyzed_meta);\nvar coll \x3d sci.impl.evaluator.eval(ctx__$1,ef);\nreturn cljs.core.with_meta(coll,md);\n}),expr);\n})():sci.impl.analyzer.return_call(ctx,expr,f2,sci.impl.analyzer.analyze_children(ctx,expr))));\nreturn analyzed_coll;\n});\nsci.impl.analyzer.analyze \x3d (function sci$impl$analyzer$analyze(var_args){\nvar G__62415 \x3d arguments.length;\nswitch (G__62415) {\ncase 2:\nreturn sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,expr){\nreturn sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$3(ctx,expr,false);\n}));\n\n(sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,expr,top_level_QMARK_){\nvar m \x3d cljs.core.meta(expr);\nif(sci.impl.utils.constant_QMARK_(expr)){\nreturn expr;\n} else {\nif((expr instanceof cljs.core.Symbol)){\nvar v \x3d sci.impl.resolve.resolve_symbol.cljs$core$IFn$_invoke$arity$3(ctx,expr,false);\nif(sci.impl.utils.constant_QMARK_(v)){\nreturn v;\n} else {\nif(sci.impl.vars.var_QMARK_(v)){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22const\x22,\x22const\x22,1709929842).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(v)))){\nreturn cljs.core.deref(v);\n} else {\nif(cljs.core.truth_(sci.impl.vars.isMacro(v))){\nthrow (new Error([\x22Can\x27t take value of a macro: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(v),\x22\x22].join(\x27\x27)));\n} else {\nreturn sci.impl.types.__GT_EvalVar(v);\n}\n}\n} else {\nreturn sci.impl.utils.merge_meta(v,m);\n\n}\n}\n} else {\nif(cljs.core.record_QMARK_(expr)){\nreturn expr;\n} else {\nif(cljs.core.map_QMARK_(expr)){\nreturn sci.impl.analyzer.analyze_map(ctx,expr,m);\n} else {\nif(cljs.core.vector_QMARK_(expr)){\nreturn sci.impl.analyzer.analyze_vec_or_set(ctx,cljs.core.identity,cljs.core.vector,expr,m);\n} else {\nif(cljs.core.set_QMARK_(expr)){\nreturn sci.impl.analyzer.analyze_vec_or_set(ctx,cljs.core.set,cljs.core.hash_set,expr,m);\n} else {\nif(cljs.core.seq_QMARK_(expr)){\nif(cljs.core.seq(expr)){\nreturn sci.impl.utils.merge_meta(sci.impl.analyzer.analyze_call(ctx,expr,top_level_QMARK_),m);\n} else {\nreturn expr;\n}\n} else {\nreturn expr;\n\n}\n}\n}\n}\n}\n}\n}\n}));\n\n(sci.impl.analyzer.analyze.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("cljs.tools.reader.edn.js", true , "goog.provide(\x27cljs.tools.reader.edn\x27);\n\n\ncljs.tools.reader.edn.macro_terminating_QMARK_ \x3d (function cljs$tools$reader$edn$macro_terminating_QMARK_(ch){\nif((!((\x22#\x22 \x3d\x3d\x3d ch)))){\nif((!((\x22\x27\x22 \x3d\x3d\x3d ch)))){\nif((!((\x22:\x22 \x3d\x3d\x3d ch)))){\nreturn (cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.edn.macros.call(null,ch));\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n} else {\nreturn false;\n}\n});\ncljs.tools.reader.edn.not_constituent_QMARK_ \x3d (function cljs$tools$reader$edn$not_constituent_QMARK_(ch){\nreturn (((\x22@\x22 \x3d\x3d\x3d ch)) || ((\x22`\x22 \x3d\x3d\x3d ch)) || ((\x22~\x22 \x3d\x3d\x3d ch)));\n});\ncljs.tools.reader.edn.read_token \x3d (function cljs$tools$reader$edn$read_token(var_args){\nvar G__50638 \x3d arguments.length;\nswitch (G__50638) {\ncase 3:\nreturn cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$3 \x3d (function (rdr,kind,initch){\nreturn cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$4(rdr,kind,initch,true);\n}));\n\n(cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$4 \x3d (function (rdr,kind,initch,validate_leading_QMARK_){\nif(cljs.core.not(initch)){\nreturn cljs.tools.reader.impl.errors.throw_eof_at_start(rdr,kind);\n} else {\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d validate_leading_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.tools.reader.edn.not_constituent_QMARK_(initch);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.tools.reader.impl.errors.throw_bad_char(rdr,kind,initch);\n} else {\nvar sb \x3d (new goog.string.StringBuffer());\nvar ch \x3d (function (){\ncljs.tools.reader.reader_types.unread(rdr,initch);\n\nreturn initch;\n})()\n;\nwhile(true){\nif(((cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)) || (cljs.tools.reader.edn.macro_terminating_QMARK_(ch)) || ((ch \x3d\x3d null)))){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n} else {\nif(cljs.tools.reader.edn.not_constituent_QMARK_(ch)){\nreturn cljs.tools.reader.impl.errors.throw_bad_char(rdr,kind,ch);\n} else {\nvar G__51329 \x3d (function (){var G__50657 \x3d sb;\nG__50657.append(cljs.tools.reader.reader_types.read_char(rdr));\n\nreturn G__50657;\n})();\nvar G__51330 \x3d cljs.tools.reader.reader_types.peek_char(rdr);\nsb \x3d G__51329;\nch \x3d G__51330;\ncontinue;\n}\n}\nbreak;\n}\n\n}\n}\n}));\n\n(cljs.tools.reader.edn.read_token.cljs$lang$maxFixedArity \x3d 4);\n\ncljs.tools.reader.edn.read_dispatch \x3d (function cljs$tools$reader$edn$read_dispatch(rdr,_,opts){\nvar temp__5751__auto__ \x3d cljs.tools.reader.reader_types.read_char(rdr);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ch \x3d temp__5751__auto__;\nvar temp__5751__auto____$1 \x3d (cljs.tools.reader.edn.dispatch_macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.edn.dispatch_macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.edn.dispatch_macros.call(null,ch));\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar dm \x3d temp__5751__auto____$1;\nreturn (dm.cljs$core$IFn$_invoke$arity$3 ? dm.cljs$core$IFn$_invoke$arity$3(rdr,ch,opts) : dm.call(null,rdr,ch,opts));\n} else {\nvar G__50679 \x3d (function (){var G__50682 \x3d rdr;\ncljs.tools.reader.reader_types.unread(G__50682,ch);\n\nreturn G__50682;\n})();\nvar G__50680 \x3d ch;\nvar G__50681 \x3d opts;\nreturn (cljs.tools.reader.edn.read_tagged.cljs$core$IFn$_invoke$arity$3 ? cljs.tools.reader.edn.read_tagged.cljs$core$IFn$_invoke$arity$3(G__50679,G__50680,G__50681) : cljs.tools.reader.edn.read_tagged.call(null,G__50679,G__50680,G__50681));\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_eof_at_dispatch(rdr);\n}\n});\ncljs.tools.reader.edn.read_unmatched_delimiter \x3d (function cljs$tools$reader$edn$read_unmatched_delimiter(rdr,ch,opts){\nreturn cljs.tools.reader.impl.errors.throw_unmatch_delimiter(rdr,ch);\n});\ncljs.tools.reader.edn.read_unicode_char \x3d (function cljs$tools$reader$edn$read_unicode_char(var_args){\nvar G__50709 \x3d arguments.length;\nswitch (G__50709) {\ncase 4:\nreturn cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$4 \x3d (function (token,offset,length,base){\nvar l \x3d (offset + length);\nif((cljs.core.count(token) \x3d\x3d\x3d l)){\n} else {\ncljs.tools.reader.impl.errors.throw_invalid_unicode_literal(null,token);\n}\n\nvar i \x3d offset;\nvar uc \x3d (0);\nwhile(true){\nif((i \x3d\x3d\x3d l)){\nreturn String.fromCharCode(uc);\n} else {\nvar d \x3d cljs.tools.reader.impl.utils.char_code(cljs.core.nth.cljs$core$IFn$_invoke$arity$2(token,i),base);\nif((d \x3d\x3d\x3d (-1))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_digit_in_token(null,cljs.core.nth.cljs$core$IFn$_invoke$arity$2(token,i),token);\n} else {\nvar G__51342 \x3d (i + (1));\nvar G__51343 \x3d (d + (uc * base));\ni \x3d G__51342;\nuc \x3d G__51343;\ncontinue;\n}\n}\nbreak;\n}\n}));\n\n(cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$5 \x3d (function (rdr,initch,base,length,exact_QMARK_){\nvar i \x3d (1);\nvar uc \x3d cljs.tools.reader.impl.utils.char_code(initch,base);\nwhile(true){\nif((uc \x3d\x3d\x3d (-1))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_digit(rdr,initch);\n} else {\nif((!((i \x3d\x3d\x3d length)))){\nvar ch \x3d cljs.tools.reader.reader_types.peek_char(rdr);\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.tools.reader.impl.utils.whitespace_QMARK_(ch);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.edn.macros.call(null,ch));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (ch \x3d\x3d null);\n}\n}\n})())){\nif(cljs.core.truth_(exact_QMARK_)){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_len(rdr,i,length);\n} else {\nreturn String.fromCharCode(uc);\n}\n} else {\nvar d \x3d cljs.tools.reader.impl.utils.char_code(ch,base);\ncljs.tools.reader.reader_types.read_char(rdr);\n\nif((d \x3d\x3d\x3d (-1))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_digit(rdr,ch);\n} else {\nvar G__51355 \x3d (i + (1));\nvar G__51356 \x3d (d + (uc * base));\ni \x3d G__51355;\nuc \x3d G__51356;\ncontinue;\n}\n}\n} else {\nreturn String.fromCharCode(uc);\n}\n}\nbreak;\n}\n}));\n\n(cljs.tools.reader.edn.read_unicode_char.cljs$lang$maxFixedArity \x3d 5);\n\ncljs.tools.reader.edn.upper_limit \x3d \x22\\uD7FF\x22.charCodeAt((0));\ncljs.tools.reader.edn.lower_limit \x3d \x22\\uE000\x22.charCodeAt((0));\ncljs.tools.reader.edn.read_char_STAR_ \x3d (function cljs$tools$reader$edn$read_char_STAR_(rdr,backslash,opts){\nvar ch \x3d cljs.tools.reader.reader_types.read_char(rdr);\nif((!((ch \x3d\x3d null)))){\nvar token \x3d ((((cljs.tools.reader.edn.macro_terminating_QMARK_(ch)) || (cljs.tools.reader.edn.not_constituent_QMARK_(ch)) || (cljs.tools.reader.impl.utils.whitespace_QMARK_(ch))))?cljs.core.str.cljs$core$IFn$_invoke$arity$1(ch):cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$4(rdr,new cljs.core.Keyword(null,\x22character\x22,\x22character\x22,380652989),ch,false));\nvar token_len \x3d ((token).length);\nif(((1) \x3d\x3d\x3d token_len)){\nreturn cljs.core.nth.cljs$core$IFn$_invoke$arity$2(token,(0));\n} else {\nif((token \x3d\x3d\x3d \x22newline\x22)){\nreturn \x22\\n\x22;\n} else {\nif((token \x3d\x3d\x3d \x22space\x22)){\nreturn \x22 \x22;\n} else {\nif((token \x3d\x3d\x3d \x22tab\x22)){\nreturn \x22\\t\x22;\n} else {\nif((token \x3d\x3d\x3d \x22backspace\x22)){\nreturn \x22\\b\x22;\n} else {\nif((token \x3d\x3d\x3d \x22formfeed\x22)){\nreturn \x22\\f\x22;\n} else {\nif((token \x3d\x3d\x3d \x22return\x22)){\nreturn \x22\\r\x22;\n} else {\nif(cljs.core.truth_(goog.string.startsWith(token,\x22u\x22))){\nvar c \x3d cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$4(token,(1),(4),(16));\nvar ic \x3d c.charCodeAt();\nif((((ic \x3e cljs.tools.reader.edn.upper_limit)) \x26\x26 ((ic \x3c cljs.tools.reader.edn.lower_limit)))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_character_literal(rdr,ic.toString((16)));\n} else {\nreturn c;\n}\n} else {\nif(cljs.core.truth_(goog.string.startsWith(token,\x22o\x22))){\nvar len \x3d (token_len - (1));\nif((len \x3e (3))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_octal_len(rdr,token);\n} else {\nvar uc \x3d cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$4(token,(1),len,(8));\nif(((uc | (0)) \x3e (255))){\nreturn cljs.tools.reader.impl.errors.throw_bad_octal_number(rdr);\n} else {\nreturn uc;\n}\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_unsupported_character(rdr,token);\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_eof_in_character(rdr);\n}\n});\ncljs.tools.reader.edn.starting_line_col_info \x3d (function cljs$tools$reader$edn$starting_line_col_info(rdr){\nif(cljs.tools.reader.reader_types.indexing_reader_QMARK_(rdr)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.tools.reader.reader_types.get_line_number(rdr),(((cljs.tools.reader.reader_types.get_column_number(rdr) | (0)) - (1)) | (0))], null);\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.edn.read_delimited \x3d (function cljs$tools$reader$edn$read_delimited(kind,delim,rdr,opts){\nvar vec__50813 \x3d cljs.tools.reader.edn.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50813,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50813,(1),null);\nvar delim__$1 \x3d cljs.tools.reader.impl.utils.char$(delim);\nvar a \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nvar ch \x3d cljs.tools.reader.impl.commons.read_past(cljs.tools.reader.impl.utils.whitespace_QMARK_,rdr);\nif(cljs.core.truth_(ch)){\n} else {\ncljs.tools.reader.impl.errors.throw_eof_delimited.cljs$core$IFn$_invoke$arity$5(rdr,kind,start_line,start_column,cljs.core.count(a));\n}\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(delim__$1,cljs.tools.reader.impl.utils.char$(ch))){\nreturn cljs.core.persistent_BANG_(a);\n} else {\nvar temp__5751__auto__ \x3d (cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.edn.macros.call(null,ch));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar macrofn \x3d temp__5751__auto__;\nvar mret \x3d (macrofn.cljs$core$IFn$_invoke$arity$3 ? macrofn.cljs$core$IFn$_invoke$arity$3(rdr,ch,opts) : macrofn.call(null,rdr,ch,opts));\nvar G__51364 \x3d (((!((mret \x3d\x3d\x3d rdr))))?cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(a,mret):a);\na \x3d G__51364;\ncontinue;\n} else {\nvar o \x3d (function (){var G__50817 \x3d (function (){var G__50822 \x3d rdr;\ncljs.tools.reader.reader_types.unread(G__50822,ch);\n\nreturn G__50822;\n})();\nvar G__50818 \x3d true;\nvar G__50819 \x3d null;\nvar G__50820 \x3d opts;\nreturn (cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(G__50817,G__50818,G__50819,G__50820) : cljs.tools.reader.edn.read.call(null,G__50817,G__50818,G__50819,G__50820));\n})();\nvar G__51370 \x3d (((!((o \x3d\x3d\x3d rdr))))?cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(a,o):a);\na \x3d G__51370;\ncontinue;\n}\n}\nbreak;\n}\n});\ncljs.tools.reader.edn.read_list \x3d (function cljs$tools$reader$edn$read_list(rdr,_,opts){\nvar the_list \x3d cljs.tools.reader.edn.read_delimited(new cljs.core.Keyword(null,\x22list\x22,\x22list\x22,765357683),\x22)\x22,rdr,opts);\nif(cljs.core.empty_QMARK_(the_list)){\nreturn cljs.core.List.EMPTY;\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,the_list);\n}\n});\ncljs.tools.reader.edn.read_vector \x3d (function cljs$tools$reader$edn$read_vector(rdr,_,opts){\nreturn cljs.tools.reader.edn.read_delimited(new cljs.core.Keyword(null,\x22vector\x22,\x22vector\x22,1902966158),\x22]\x22,rdr,opts);\n});\ncljs.tools.reader.edn.read_map \x3d (function cljs$tools$reader$edn$read_map(rdr,_,opts){\nvar vec__50862 \x3d cljs.tools.reader.edn.starting_line_col_info(rdr);\nvar start_line \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50862,(0),null);\nvar start_column \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__50862,(1),null);\nvar the_map \x3d cljs.tools.reader.edn.read_delimited(new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),\x22}\x22,rdr,opts);\nvar map_count \x3d cljs.core.count(the_map);\nvar ks \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),the_map);\nvar key_set \x3d cljs.core.set(ks);\nif(cljs.core.odd_QMARK_(map_count)){\ncljs.tools.reader.impl.errors.throw_odd_map(rdr,start_line,start_column,the_map);\n} else {\n}\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(key_set),cljs.core.count(ks))){\n} else {\ncljs.tools.reader.impl.errors.throw_dup_keys(rdr,new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),ks);\n}\n\nif((map_count \x3c\x3d ((2) * cljs.core.PersistentArrayMap.HASHMAP_THRESHOLD))){\nreturn cljs.core.PersistentArrayMap.fromArray(cljs.core.to_array(the_map),true,true);\n} else {\nreturn cljs.core.PersistentHashMap.fromArray(cljs.core.to_array(the_map),true);\n}\n});\ncljs.tools.reader.edn.read_number \x3d (function cljs$tools$reader$edn$read_number(rdr,initch,opts){\nvar sb \x3d (function (){var G__50875 \x3d (new goog.string.StringBuffer());\nG__50875.append(initch);\n\nreturn G__50875;\n})();\nvar ch \x3d cljs.tools.reader.reader_types.read_char(rdr);\nwhile(true){\nif(cljs.core.truth_((function (){var or__4160__auto__ \x3d cljs.tools.reader.impl.utils.whitespace_QMARK_(ch);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.edn.macros.cljs$core$IFn$_invoke$arity$1(ch) : cljs.tools.reader.edn.macros.call(null,ch));\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn (ch \x3d\x3d null);\n}\n}\n})())){\nvar s \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\ncljs.tools.reader.reader_types.unread(rdr,ch);\n\nvar or__4160__auto__ \x3d cljs.tools.reader.impl.commons.match_number(s);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid_number(rdr,s);\n}\n} else {\nvar G__51417 \x3d (function (){var G__50879 \x3d sb;\nG__50879.append(ch);\n\nreturn G__50879;\n})();\nvar G__51418 \x3d cljs.tools.reader.reader_types.read_char(rdr);\nsb \x3d G__51417;\nch \x3d G__51418;\ncontinue;\n}\nbreak;\n}\n});\ncljs.tools.reader.edn.escape_char \x3d (function cljs$tools$reader$edn$escape_char(sb,rdr){\nvar ch \x3d cljs.tools.reader.reader_types.read_char(rdr);\nvar G__50906 \x3d ch;\nswitch (G__50906) {\ncase \x22t\x22:\nreturn \x22\\t\x22;\n\nbreak;\ncase \x22r\x22:\nreturn \x22\\r\x22;\n\nbreak;\ncase \x22n\x22:\nreturn \x22\\n\x22;\n\nbreak;\ncase \x22\\\\\x22:\nreturn \x22\\\\\x22;\n\nbreak;\ncase \x22\\\x22\x22:\nreturn \x22\\\x22\x22;\n\nbreak;\ncase \x22b\x22:\nreturn \x22\\b\x22;\n\nbreak;\ncase \x22f\x22:\nreturn \x22\\f\x22;\n\nbreak;\ncase \x22u\x22:\nvar ch__$1 \x3d cljs.tools.reader.reader_types.read_char(rdr);\nif(((-1) \x3d\x3d\x3d parseInt((ch__$1 | (0)),(16)))){\nreturn cljs.tools.reader.impl.errors.throw_invalid_unicode_escape(rdr,ch__$1);\n} else {\nreturn cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$5(rdr,ch__$1,(16),(4),true);\n}\n\nbreak;\ndefault:\nif(cljs.tools.reader.impl.utils.numeric_QMARK_(ch)){\nvar ch__$1 \x3d cljs.tools.reader.edn.read_unicode_char.cljs$core$IFn$_invoke$arity$5(rdr,ch,(8),(3),false);\nif(((ch__$1 | (0)) \x3e (255))){\nreturn cljs.tools.reader.impl.errors.throw_bad_octal_number(rdr);\n} else {\nreturn ch__$1;\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_escape_char(rdr,ch);\n}\n\n}\n});\ncljs.tools.reader.edn.read_string_STAR_ \x3d (function cljs$tools$reader$edn$read_string_STAR_(rdr,_,opts){\nvar sb \x3d (new goog.string.StringBuffer());\nvar ch \x3d cljs.tools.reader.reader_types.read_char(rdr);\nwhile(true){\nvar G__50909 \x3d ch;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__50909)){\nreturn cljs.tools.reader.impl.errors.throw_eof_reading.cljs$core$IFn$_invoke$arity$variadic(rdr,new cljs.core.Keyword(null,\x22string\x22,\x22string\x22,-1989541586),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22\\\x22\x22,sb], 0));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\\\\\x22,G__50909)){\nvar G__51428 \x3d (function (){var G__50910 \x3d sb;\nG__50910.append(cljs.tools.reader.edn.escape_char(sb,rdr));\n\nreturn G__50910;\n})();\nvar G__51429 \x3d cljs.tools.reader.reader_types.read_char(rdr);\nsb \x3d G__51428;\nch \x3d G__51429;\ncontinue;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\\\x22\x22,G__50909)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n} else {\nvar G__51430 \x3d (function (){var G__50912 \x3d sb;\nG__50912.append(ch);\n\nreturn G__50912;\n})();\nvar G__51431 \x3d cljs.tools.reader.reader_types.read_char(rdr);\nsb \x3d G__51430;\nch \x3d G__51431;\ncontinue;\n\n}\n}\n}\nbreak;\n}\n});\ncljs.tools.reader.edn.read_symbol \x3d (function cljs$tools$reader$edn$read_symbol(rdr,initch){\nvar temp__5753__auto__ \x3d cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$3(rdr,new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696),initch);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar token \x3d temp__5753__auto__;\nvar G__50915 \x3d token;\nswitch (G__50915) {\ncase \x22nil\x22:\nreturn null;\n\nbreak;\ncase \x22true\x22:\nreturn true;\n\nbreak;\ncase \x22false\x22:\nreturn false;\n\nbreak;\ncase \x22/\x22:\nreturn new cljs.core.Symbol(null,\x22/\x22,\x22/\x22,-1371932971,null);\n\nbreak;\ndefault:\nvar or__4160__auto__ \x3d (function (){var temp__5753__auto____$1 \x3d cljs.tools.reader.impl.commons.parse_symbol(token);\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar p \x3d temp__5753__auto____$1;\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2((p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1((0)) : p.call(null,(0))),(p.cljs$core$IFn$_invoke$arity$1 ? p.cljs$core$IFn$_invoke$arity$1((1)) : p.call(null,(1))));\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid(rdr,new cljs.core.Keyword(null,\x22symbol\x22,\x22symbol\x22,-1038572696),token);\n}\n\n}\n} else {\nreturn null;\n}\n});\ncljs.tools.reader.edn.read_keyword \x3d (function cljs$tools$reader$edn$read_keyword(reader,initch,opts){\nvar ch \x3d cljs.tools.reader.reader_types.read_char(reader);\nif((!(cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)))){\nvar token \x3d cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$3(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),ch);\nvar s \x3d cljs.tools.reader.impl.commons.parse_symbol(token);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d s;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((-1) \x3d\x3d\x3d token.indexOf(\x22::\x22));\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar ns \x3d (s.cljs$core$IFn$_invoke$arity$1 ? s.cljs$core$IFn$_invoke$arity$1((0)) : s.call(null,(0)));\nvar name \x3d (s.cljs$core$IFn$_invoke$arity$1 ? s.cljs$core$IFn$_invoke$arity$1((1)) : s.call(null,(1)));\nif((\x22:\x22 \x3d\x3d\x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$2(token,(0)))){\nreturn cljs.tools.reader.impl.errors.throw_invalid(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),token);\n} else {\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(ns,name);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_invalid(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),token);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_single_colon(reader);\n}\n});\ncljs.tools.reader.edn.wrapping_reader \x3d (function cljs$tools$reader$edn$wrapping_reader(sym){\nreturn (function (rdr,_,opts){\nreturn (new cljs.core.List(null,sym,(new cljs.core.List(null,(cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(rdr,true,null,opts) : cljs.tools.reader.edn.read.call(null,rdr,true,null,opts)),null,(1),null)),(2),null));\n});\n});\ncljs.tools.reader.edn.read_meta \x3d (function cljs$tools$reader$edn$read_meta(rdr,_,opts){\nvar m \x3d cljs.tools.reader.impl.utils.desugar_meta((cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(rdr,true,null,opts) : cljs.tools.reader.edn.read.call(null,rdr,true,null,opts)));\nif(cljs.core.map_QMARK_(m)){\n} else {\ncljs.tools.reader.impl.errors.throw_bad_metadata(rdr,m);\n}\n\nvar o \x3d (cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(rdr,true,null,opts) : cljs.tools.reader.edn.read.call(null,rdr,true,null,opts));\nif((((!((o \x3d\x3d null))))?(((((o.cljs$lang$protocol_mask$partition0$ \x26 (131072))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d o.cljs$core$IMeta$))))?true:false):false)){\nreturn cljs.core.with_meta(o,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.meta(o),m], 0)));\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_metadata_target(rdr,o);\n}\n});\ncljs.tools.reader.edn.read_set \x3d (function cljs$tools$reader$edn$read_set(rdr,_,opts){\nvar coll \x3d cljs.tools.reader.edn.read_delimited(new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),\x22}\x22,rdr,opts);\nvar the_set \x3d cljs.core.set(coll);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(coll),cljs.core.count(the_set))){\n} else {\ncljs.tools.reader.impl.errors.throw_dup_keys(rdr,new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),coll);\n}\n\nreturn the_set;\n});\ncljs.tools.reader.edn.read_discard \x3d (function cljs$tools$reader$edn$read_discard(rdr,_,opts){\nvar G__51021 \x3d rdr;\n(cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(G__51021,true,null,true) : cljs.tools.reader.edn.read.call(null,G__51021,true,null,true));\n\nreturn G__51021;\n});\ncljs.tools.reader.edn.read_namespaced_map \x3d (function cljs$tools$reader$edn$read_namespaced_map(rdr,_,opts){\nvar token \x3d cljs.tools.reader.edn.read_token.cljs$core$IFn$_invoke$arity$3(rdr,new cljs.core.Keyword(null,\x22namespaced-map\x22,\x22namespaced-map\x22,1235665380),cljs.tools.reader.reader_types.read_char(rdr));\nvar temp__5751__auto__ \x3d (function (){var G__51056 \x3d token;\nvar G__51056__$1 \x3d (((G__51056 \x3d\x3d null))?null:cljs.tools.reader.impl.commons.parse_symbol(G__51056));\nif((G__51056__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.tools.reader.impl.utils.second_SINGLEQUOTE_(G__51056__$1);\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns \x3d temp__5751__auto__;\nvar ch \x3d cljs.tools.reader.impl.commons.read_past(cljs.tools.reader.impl.utils.whitespace_QMARK_,rdr);\nif((ch \x3d\x3d\x3d \x22{\x22)){\nvar items \x3d cljs.tools.reader.edn.read_delimited(new cljs.core.Keyword(null,\x22namespaced-map\x22,\x22namespaced-map\x22,1235665380),\x22}\x22,rdr,opts);\nif(cljs.core.odd_QMARK_(cljs.core.count(items))){\ncljs.tools.reader.impl.errors.throw_odd_map(rdr,null,null,items);\n} else {\n}\n\nvar keys \x3d cljs.tools.reader.impl.utils.namespace_keys(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),items));\nvar vals \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),cljs.core.rest(items));\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(cljs.core.set(keys)),cljs.core.count(keys))){\n} else {\ncljs.tools.reader.impl.errors.throw_dup_keys(rdr,new cljs.core.Keyword(null,\x22namespaced-map\x22,\x22namespaced-map\x22,1235665380),keys);\n}\n\nreturn cljs.core.zipmap(keys,vals);\n} else {\nreturn cljs.tools.reader.impl.errors.throw_ns_map_no_map(rdr,token);\n}\n} else {\nreturn cljs.tools.reader.impl.errors.throw_bad_ns(rdr,token);\n}\n});\ncljs.tools.reader.edn.read_symbolic_value \x3d (function cljs$tools$reader$edn$read_symbolic_value(rdr,_,opts){\nvar sym \x3d (cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(rdr,true,null,opts) : cljs.tools.reader.edn.read.call(null,rdr,true,null,opts));\nvar G__51062 \x3d sym;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22NaN\x22,\x22NaN\x22,666918153,null),G__51062)){\nreturn Number.NaN;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22-Inf\x22,\x22-Inf\x22,-2123243689,null),G__51062)){\nreturn Number.NEGATIVE_INFINITY;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22Inf\x22,\x22Inf\x22,647172781,null),G__51062)){\nreturn Number.POSITIVE_INFINITY;\n} else {\nreturn cljs.tools.reader.impl.errors.reader_error.cljs$core$IFn$_invoke$arity$variadic(rdr,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[\x22Invalid token: ##\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)].join(\x27\x27)], 0));\n\n}\n}\n}\n});\ncljs.tools.reader.edn.macros \x3d (function cljs$tools$reader$edn$macros(ch){\nvar G__51077 \x3d ch;\nswitch (G__51077) {\ncase \x22\\\x22\x22:\nreturn cljs.tools.reader.edn.read_string_STAR_;\n\nbreak;\ncase \x22:\x22:\nreturn cljs.tools.reader.edn.read_keyword;\n\nbreak;\ncase \x22;\x22:\nreturn cljs.tools.reader.impl.commons.read_comment;\n\nbreak;\ncase \x22^\x22:\nreturn cljs.tools.reader.edn.read_meta;\n\nbreak;\ncase \x22(\x22:\nreturn cljs.tools.reader.edn.read_list;\n\nbreak;\ncase \x22)\x22:\nreturn cljs.tools.reader.edn.read_unmatched_delimiter;\n\nbreak;\ncase \x22[\x22:\nreturn cljs.tools.reader.edn.read_vector;\n\nbreak;\ncase \x22]\x22:\nreturn cljs.tools.reader.edn.read_unmatched_delimiter;\n\nbreak;\ncase \x22{\x22:\nreturn cljs.tools.reader.edn.read_map;\n\nbreak;\ncase \x22}\x22:\nreturn cljs.tools.reader.edn.read_unmatched_delimiter;\n\nbreak;\ncase \x22\\\\\x22:\nreturn cljs.tools.reader.edn.read_char_STAR_;\n\nbreak;\ncase \x22#\x22:\nreturn cljs.tools.reader.edn.read_dispatch;\n\nbreak;\ndefault:\nreturn null;\n\n}\n});\ncljs.tools.reader.edn.dispatch_macros \x3d (function cljs$tools$reader$edn$dispatch_macros(ch){\nvar G__51086 \x3d ch;\nswitch (G__51086) {\ncase \x22^\x22:\nreturn cljs.tools.reader.edn.read_meta;\n\nbreak;\ncase \x22{\x22:\nreturn cljs.tools.reader.edn.read_set;\n\nbreak;\ncase \x22\x3c\x22:\nreturn cljs.tools.reader.impl.commons.throwing_reader(\x22Unreadable form\x22);\n\nbreak;\ncase \x22!\x22:\nreturn cljs.tools.reader.impl.commons.read_comment;\n\nbreak;\ncase \x22_\x22:\nreturn cljs.tools.reader.edn.read_discard;\n\nbreak;\ncase \x22:\x22:\nreturn cljs.tools.reader.edn.read_namespaced_map;\n\nbreak;\ncase \x22#\x22:\nreturn cljs.tools.reader.edn.read_symbolic_value;\n\nbreak;\ndefault:\nreturn null;\n\n}\n});\ncljs.tools.reader.edn.read_tagged \x3d (function cljs$tools$reader$edn$read_tagged(rdr,initch,opts){\nvar tag \x3d (cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(rdr,true,null,opts) : cljs.tools.reader.edn.read.call(null,rdr,true,null,opts));\nvar object \x3d (cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 ? cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(rdr,true,null,opts) : cljs.tools.reader.edn.read.call(null,rdr,true,null,opts));\nif((!((tag instanceof cljs.core.Symbol)))){\ncljs.tools.reader.impl.errors.throw_bad_reader_tag(rdr,\x22Reader tag must be a symbol\x22);\n} else {\n}\n\nvar temp__5751__auto__ \x3d (function (){var or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030).cljs$core$IFn$_invoke$arity$1(opts),tag);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (cljs.tools.reader.default_data_readers.cljs$core$IFn$_invoke$arity$1 ? cljs.tools.reader.default_data_readers.cljs$core$IFn$_invoke$arity$1(tag) : cljs.tools.reader.default_data_readers.call(null,tag));\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar f \x3d temp__5751__auto__;\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(object) : f.call(null,object));\n} else {\nvar temp__5751__auto____$1 \x3d new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328).cljs$core$IFn$_invoke$arity$1(opts);\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar d \x3d temp__5751__auto____$1;\nreturn (d.cljs$core$IFn$_invoke$arity$2 ? d.cljs$core$IFn$_invoke$arity$2(tag,object) : d.call(null,tag,object));\n} else {\nreturn cljs.tools.reader.impl.errors.throw_unknown_reader_tag(rdr,tag);\n}\n}\n});\n/**\n * Reads the first object from an IPushbackReader.\n * Returns the object read. If EOF, throws if eof-error? is true otherwise returns eof.\n * If no reader is provided, *in* will be used.\n * \n * Reads data in the edn format (subset of Clojure data):\n * http://edn-format.org\n * \n * cljs.tools.reader.edn/read doesn\x27t depend on dynamic Vars, all configuration\n * is done by passing an opt map.\n * \n * opts is a map that can include the following keys:\n * :eof - value to return on end-of-file. When not supplied, eof throws an exception.\n * :readers  - a map of tag symbols to data-reader functions to be considered before default-data-readers.\n *            When not supplied, only the default-data-readers will be used.\n * :default - A function of two args, that will, if present and no reader is found for a tag,\n *            be called with the tag and the value.\n */\ncljs.tools.reader.edn.read \x3d (function cljs$tools$reader$edn$read(var_args){\nvar G__51166 \x3d arguments.length;\nswitch (G__51166) {\ncase 1:\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 4:\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$1 \x3d (function (reader){\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,reader);\n}));\n\n(cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2 \x3d (function (p__51183,reader){\nvar map__51187 \x3d p__51183;\nvar map__51187__$1 \x3d cljs.core.__destructure_map(map__51187);\nvar opts \x3d map__51187__$1;\nvar eof \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51187__$1,new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237));\nvar eof_error_QMARK_ \x3d (!(cljs.core.contains_QMARK_(opts,new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237))));\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(reader,eof_error_QMARK_,eof,opts);\n}));\n\n(cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4 \x3d (function (reader,eof_error_QMARK_,eof,opts){\ntry{while(true){\nvar ch \x3d cljs.tools.reader.reader_types.read_char(reader);\nif(cljs.tools.reader.impl.utils.whitespace_QMARK_(ch)){\ncontinue;\n} else {\nif((ch \x3d\x3d null)){\nif(cljs.core.truth_(eof_error_QMARK_)){\nreturn cljs.tools.reader.impl.errors.throw_eof_error(reader,null);\n} else {\nreturn eof;\n}\n} else {\nif(cljs.tools.reader.impl.commons.number_literal_QMARK_(reader,ch)){\nreturn cljs.tools.reader.edn.read_number(reader,ch,opts);\n} else {\nvar f \x3d cljs.tools.reader.edn.macros(ch);\nif(cljs.core.truth_(f)){\nvar res \x3d (f.cljs$core$IFn$_invoke$arity$3 ? f.cljs$core$IFn$_invoke$arity$3(reader,ch,opts) : f.call(null,reader,ch,opts));\nif((res \x3d\x3d\x3d reader)){\ncontinue;\n} else {\nreturn res;\n}\n} else {\nreturn cljs.tools.reader.edn.read_symbol(reader,ch);\n}\n\n}\n}\n}\nbreak;\n}\n}catch (e51221){if((e51221 instanceof Error)){\nvar e \x3d e51221;\nif(cljs.tools.reader.impl.utils.ex_info_QMARK_(e)){\nvar d \x3d cljs.core.ex_data(e);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098),new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(d))){\nthrow e;\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(e.message,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098)], null),d,((cljs.tools.reader.reader_types.indexing_reader_QMARK_(reader))?new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),cljs.tools.reader.reader_types.get_line_number(reader),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),cljs.tools.reader.reader_types.get_column_number(reader),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.tools.reader.reader_types.get_file_name(reader)], null):null)], 0)),e);\n}\n} else {\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(e.message,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(null,\x22reader-exception\x22,\x22reader-exception\x22,-1938323098)], null),((cljs.tools.reader.reader_types.indexing_reader_QMARK_(reader))?new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),cljs.tools.reader.reader_types.get_line_number(reader),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),cljs.tools.reader.reader_types.get_column_number(reader),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.tools.reader.reader_types.get_file_name(reader)], null):null)], 0)),e);\n}\n} else {\nthrow e51221;\n\n}\n}}));\n\n(cljs.tools.reader.edn.read.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Reads one object from the string s.\n * Returns nil when s is nil or empty.\n * \n * Reads data in the edn format (subset of Clojure data):\n * http://edn-format.org\n * \n * opts is a map as per cljs.tools.reader.edn/read\n */\ncljs.tools.reader.edn.read_string \x3d (function cljs$tools$reader$edn$read_string(var_args){\nvar G__51241 \x3d arguments.length;\nswitch (G__51241) {\ncase 1:\nreturn cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237),null], null),s);\n}));\n\n(cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$2 \x3d (function (opts,s){\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d s;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(s,\x22\x22);\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2(opts,cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\n} else {\nreturn null;\n}\n}));\n\n(cljs.tools.reader.edn.read_string.cljs$lang$maxFixedArity \x3d 2);\n\n");
SHADOW_ENV.evalLoad("cljs.reader.js", true , "goog.provide(\x27cljs.reader\x27);\ncljs.reader.zero_fill_right_and_truncate \x3d (function cljs$reader$zero_fill_right_and_truncate(s,width){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(width,cljs.core.count(s))){\nreturn s;\n} else {\nif((width \x3c cljs.core.count(s))){\nreturn cljs.core.subs.cljs$core$IFn$_invoke$arity$3(s,(0),width);\n} else {\nvar b \x3d (new goog.string.StringBuffer(s));\nwhile(true){\nif((b.getLength() \x3c width)){\nvar G__51689 \x3d b.append(\x220\x22);\nb \x3d G__51689;\ncontinue;\n} else {\nreturn b.toString();\n}\nbreak;\n}\n\n}\n}\n});\ncljs.reader.divisible_QMARK_ \x3d (function cljs$reader$divisible_QMARK_(num,div){\nreturn (cljs.core.mod(num,div) \x3d\x3d\x3d (0));\n});\ncljs.reader.indivisible_QMARK_ \x3d (function cljs$reader$indivisible_QMARK_(num,div){\nreturn (!(cljs.reader.divisible_QMARK_(num,div)));\n});\ncljs.reader.leap_year_QMARK_ \x3d (function cljs$reader$leap_year_QMARK_(year){\nreturn ((cljs.reader.divisible_QMARK_(year,(4))) \x26\x26 (((cljs.reader.indivisible_QMARK_(year,(100))) || (cljs.reader.divisible_QMARK_(year,(400))))));\n});\ncljs.reader.days_in_month \x3d (function (){var dim_norm \x3d 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);\nvar dim_leap \x3d 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);\nreturn (function (month,leap_year_QMARK_){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2((cljs.core.truth_(leap_year_QMARK_)?dim_leap:dim_norm),month);\n});\n})();\ncljs.reader.timestamp_regex \x3d /(\\d\\d\\d\\d)(?:-(\\d\\d)(?:-(\\d\\d)(?:[T](\\d\\d)(?::(\\d\\d)(?::(\\d\\d)(?:[.](\\d+))?)?)?)?)?)?(?:[Z]|([-+])(\\d\\d):(\\d\\d))?/;\ncljs.reader.parse_int \x3d (function cljs$reader$parse_int(s){\nvar n \x3d parseInt(s,(10));\nif(cljs.core.not(isNaN(n))){\nreturn n;\n} else {\nreturn null;\n}\n});\ncljs.reader.check \x3d (function cljs$reader$check(low,n,high,msg){\nif((((low \x3c\x3d n)) \x26\x26 ((n \x3c\x3d high)))){\n} else {\nthrow (new Error([cljs.core.str.cljs$core$IFn$_invoke$arity$1(msg),\x22 Failed:  \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(low),\x22\x3c\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(n),\x22\x3c\x3d\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(high)].join(\x27\x27)));\n}\n\nreturn n;\n});\ncljs.reader.parse_and_validate_timestamp \x3d (function cljs$reader$parse_and_validate_timestamp(s){\nvar vec__51424 \x3d cljs.core.re_matches(cljs.reader.timestamp_regex,s);\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(0),null);\nvar years \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(1),null);\nvar months \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(2),null);\nvar days \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(3),null);\nvar hours \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(4),null);\nvar minutes \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(5),null);\nvar seconds \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(6),null);\nvar fraction \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(7),null);\nvar offset_sign \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(8),null);\nvar offset_hours \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(9),null);\nvar offset_minutes \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51424,(10),null);\nvar v \x3d vec__51424;\nif(cljs.core.not(v)){\nthrow (new Error([\x22Unrecognized date/time syntax: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(s)].join(\x27\x27)));\n} else {\nvar years__$1 \x3d cljs.reader.parse_int(years);\nvar months__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(months);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (1);\n}\n})();\nvar days__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(days);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (1);\n}\n})();\nvar hours__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(hours);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar minutes__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(minutes);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar seconds__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(seconds);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar fraction__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(cljs.reader.zero_fill_right_and_truncate(fraction,(3)));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar offset_sign__$1 \x3d ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(offset_sign,\x22-\x22))?(-1):(1));\nvar offset_hours__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(offset_hours);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar offset_minutes__$1 \x3d (function (){var or__4160__auto__ \x3d cljs.reader.parse_int(offset_minutes);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (0);\n}\n})();\nvar offset \x3d (offset_sign__$1 * ((offset_hours__$1 * (60)) + offset_minutes__$1));\nreturn new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [years__$1,cljs.reader.check((1),months__$1,(12),\x22timestamp month field must be in range 1..12\x22),cljs.reader.check((1),days__$1,cljs.reader.days_in_month(months__$1,cljs.reader.leap_year_QMARK_(years__$1)),\x22timestamp day field must be in range 1..last day in month\x22),cljs.reader.check((0),hours__$1,(23),\x22timestamp hour field must be in range 0..23\x22),cljs.reader.check((0),minutes__$1,(59),\x22timestamp minute field must be in range 0..59\x22),cljs.reader.check((0),seconds__$1,((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(minutes__$1,(59)))?(60):(59)),\x22timestamp second field must be in range 0..60\x22),cljs.reader.check((0),fraction__$1,(999),\x22timestamp millisecond field must be in range 0..999\x22),offset], null);\n}\n});\ncljs.reader.parse_timestamp \x3d (function cljs$reader$parse_timestamp(ts){\nvar temp__5751__auto__ \x3d cljs.reader.parse_and_validate_timestamp(ts);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__51450 \x3d temp__5751__auto__;\nvar years \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(0),null);\nvar months \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(1),null);\nvar days \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(2),null);\nvar hours \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(3),null);\nvar minutes \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(4),null);\nvar seconds \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(5),null);\nvar ms \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(6),null);\nvar offset \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51450,(7),null);\nreturn (new Date((Date.UTC(years,(months - (1)),days,hours,minutes,seconds,ms) - ((offset * (60)) * (1000)))));\n} else {\nthrow (new Error([\x22Unrecognized date/time syntax: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(ts)].join(\x27\x27)));\n}\n});\ncljs.reader.read_date \x3d (function cljs$reader$read_date(s){\nif(typeof s \x3d\x3d\x3d \x27string\x27){\nreturn cljs.reader.parse_timestamp(s);\n} else {\nthrow (new Error(\x22Instance literal expects a string for its timestamp.\x22));\n}\n});\ncljs.reader.read_queue \x3d (function cljs$reader$read_queue(elems){\nif(cljs.core.vector_QMARK_(elems)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentQueue.EMPTY,elems);\n} else {\nthrow (new Error(\x22Queue literal expects a vector for its elements.\x22));\n}\n});\ncljs.reader.read_js \x3d (function cljs$reader$read_js(form){\nif(cljs.core.vector_QMARK_(form)){\nvar arr \x3d [];\nvar seq__51497_51774 \x3d cljs.core.seq(form);\nvar chunk__51498_51775 \x3d null;\nvar count__51499_51776 \x3d (0);\nvar i__51500_51777 \x3d (0);\nwhile(true){\nif((i__51500_51777 \x3c count__51499_51776)){\nvar x_51778 \x3d chunk__51498_51775.cljs$core$IIndexed$_nth$arity$2(null,i__51500_51777);\narr.push(x_51778);\n\n\nvar G__51779 \x3d seq__51497_51774;\nvar G__51780 \x3d chunk__51498_51775;\nvar G__51781 \x3d count__51499_51776;\nvar G__51782 \x3d (i__51500_51777 + (1));\nseq__51497_51774 \x3d G__51779;\nchunk__51498_51775 \x3d G__51780;\ncount__51499_51776 \x3d G__51781;\ni__51500_51777 \x3d G__51782;\ncontinue;\n} else {\nvar temp__5753__auto___51790 \x3d cljs.core.seq(seq__51497_51774);\nif(temp__5753__auto___51790){\nvar seq__51497_51791__$1 \x3d temp__5753__auto___51790;\nif(cljs.core.chunked_seq_QMARK_(seq__51497_51791__$1)){\nvar c__4591__auto___51792 \x3d cljs.core.chunk_first(seq__51497_51791__$1);\nvar G__51793 \x3d cljs.core.chunk_rest(seq__51497_51791__$1);\nvar G__51794 \x3d c__4591__auto___51792;\nvar G__51795 \x3d cljs.core.count(c__4591__auto___51792);\nvar G__51796 \x3d (0);\nseq__51497_51774 \x3d G__51793;\nchunk__51498_51775 \x3d G__51794;\ncount__51499_51776 \x3d G__51795;\ni__51500_51777 \x3d G__51796;\ncontinue;\n} else {\nvar x_51797 \x3d cljs.core.first(seq__51497_51791__$1);\narr.push(x_51797);\n\n\nvar G__51798 \x3d cljs.core.next(seq__51497_51791__$1);\nvar G__51799 \x3d null;\nvar G__51800 \x3d (0);\nvar G__51801 \x3d (0);\nseq__51497_51774 \x3d G__51798;\nchunk__51498_51775 \x3d G__51799;\ncount__51499_51776 \x3d G__51800;\ni__51500_51777 \x3d G__51801;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn arr;\n} else {\nif(cljs.core.map_QMARK_(form)){\nvar obj \x3d ({});\nvar seq__51511_51803 \x3d cljs.core.seq(form);\nvar chunk__51512_51804 \x3d null;\nvar count__51513_51805 \x3d (0);\nvar i__51514_51806 \x3d (0);\nwhile(true){\nif((i__51514_51806 \x3c count__51513_51805)){\nvar vec__51557_51807 \x3d chunk__51512_51804.cljs$core$IIndexed$_nth$arity$2(null,i__51514_51806);\nvar k_51808 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51557_51807,(0),null);\nvar v_51809 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51557_51807,(1),null);\ngoog.object.set(obj,cljs.core.name(k_51808),v_51809);\n\n\nvar G__51810 \x3d seq__51511_51803;\nvar G__51811 \x3d chunk__51512_51804;\nvar G__51812 \x3d count__51513_51805;\nvar G__51813 \x3d (i__51514_51806 + (1));\nseq__51511_51803 \x3d G__51810;\nchunk__51512_51804 \x3d G__51811;\ncount__51513_51805 \x3d G__51812;\ni__51514_51806 \x3d G__51813;\ncontinue;\n} else {\nvar temp__5753__auto___51814 \x3d cljs.core.seq(seq__51511_51803);\nif(temp__5753__auto___51814){\nvar seq__51511_51815__$1 \x3d temp__5753__auto___51814;\nif(cljs.core.chunked_seq_QMARK_(seq__51511_51815__$1)){\nvar c__4591__auto___51817 \x3d cljs.core.chunk_first(seq__51511_51815__$1);\nvar G__51818 \x3d cljs.core.chunk_rest(seq__51511_51815__$1);\nvar G__51819 \x3d c__4591__auto___51817;\nvar G__51820 \x3d cljs.core.count(c__4591__auto___51817);\nvar G__51821 \x3d (0);\nseq__51511_51803 \x3d G__51818;\nchunk__51512_51804 \x3d G__51819;\ncount__51513_51805 \x3d G__51820;\ni__51514_51806 \x3d G__51821;\ncontinue;\n} else {\nvar vec__51565_51824 \x3d cljs.core.first(seq__51511_51815__$1);\nvar k_51825 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51565_51824,(0),null);\nvar v_51826 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51565_51824,(1),null);\ngoog.object.set(obj,cljs.core.name(k_51825),v_51826);\n\n\nvar G__51831 \x3d cljs.core.next(seq__51511_51815__$1);\nvar G__51832 \x3d null;\nvar G__51833 \x3d (0);\nvar G__51834 \x3d (0);\nseq__51511_51803 \x3d G__51831;\nchunk__51512_51804 \x3d G__51832;\ncount__51513_51805 \x3d G__51833;\ni__51514_51806 \x3d G__51834;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nreturn obj;\n} else {\nthrow (new Error([\x22JS literal expects a vector or map containing \x22,\x22only string or unqualified keyword keys\x22].join(\x27\x27)));\n\n}\n}\n});\ncljs.reader.read_uuid \x3d (function cljs$reader$read_uuid(uuid){\nif(typeof uuid \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.uuid(uuid);\n} else {\nthrow (new Error(\x22UUID literal expects a string as its representation.\x22));\n}\n});\ncljs.reader._STAR_default_data_reader_fn_STAR_ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(null);\ncljs.reader._STAR_tag_table_STAR_ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Symbol(null,\x22inst\x22,\x22inst\x22,-2008473268,null),cljs.reader.read_date,new cljs.core.Symbol(null,\x22uuid\x22,\x22uuid\x22,-504564192,null),cljs.reader.read_uuid,new cljs.core.Symbol(null,\x22queue\x22,\x22queue\x22,-1198599890,null),cljs.reader.read_queue,new cljs.core.Symbol(null,\x22js\x22,\x22js\x22,-886355190,null),cljs.reader.read_js], null),cljs.core.PersistentArrayMap.EMPTY], 0)));\n/**\n * Reads the first object from an cljs.tools.reader.reader-types/IPushbackReader.\n * Returns the object read. If EOF, throws if eof-error? is true otherwise returns eof.\n * If no reader is provided, *in* will be used.\n * \n * Reads data in the edn format (subset of Clojure data):\n * http://edn-format.org\n * \n * cljs.tools.reader.edn/read doesn\x27t depend on dynamic Vars, all configuration\n * is done by passing an opt map.\n * \n * opts is a map that can include the following keys:\n * :eof - value to return on end-of-file. When not supplied, eof throws an exception.\n * :readers  - a map of tag symbols to data-reader functions to be considered before default-data-readers.\n *            When not supplied, only the default-data-readers will be used.\n * :default - A function of two args, that will, if present and no reader is found for a tag,\n *            be called with the tag and the value.\n */\ncljs.reader.read \x3d (function cljs$reader$read(var_args){\nvar G__51635 \x3d arguments.length;\nswitch (G__51635) {\ncase 1:\nreturn cljs.reader.read.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.reader.read.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 4:\nreturn cljs.reader.read.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.reader.read.cljs$core$IFn$_invoke$arity$1 \x3d (function (reader){\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_),new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237),null], null),reader);\n}));\n\n(cljs.reader.read.cljs$core$IFn$_invoke$arity$2 \x3d (function (p__51641,reader){\nvar map__51642 \x3d p__51641;\nvar map__51642__$1 \x3d cljs.core.__destructure_map(map__51642);\nvar opts \x3d map__51642__$1;\nvar eof \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51642__$1,new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237));\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2(cljs.core.update.cljs$core$IFn$_invoke$arity$3(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([opts,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_)], null)], 0)),new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),(function (m){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),m], 0));\n})),reader);\n}));\n\n(cljs.reader.read.cljs$core$IFn$_invoke$arity$4 \x3d (function (reader,eof_error_QMARK_,eof,opts){\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$4(reader,eof_error_QMARK_,eof,cljs.core.update.cljs$core$IFn$_invoke$arity$3(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([opts,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_)], null)], 0)),new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),(function (m){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),m], 0));\n})));\n}));\n\n(cljs.reader.read.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Reads one object from the string s.\n * Returns nil when s is nil or empty.\n * \n * Reads data in the edn format (subset of Clojure data):\n * http://edn-format.org\n * \n * opts is a map as per cljs.tools.reader.edn/read\n */\ncljs.reader.read_string \x3d (function cljs$reader$read_string(var_args){\nvar G__51644 \x3d arguments.length;\nswitch (G__51644) {\ncase 1:\nreturn cljs.reader.read_string.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn cljs.reader.read_string.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(cljs.reader.read_string.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_),new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237),null], null),s);\n}));\n\n(cljs.reader.read_string.cljs$core$IFn$_invoke$arity$2 \x3d (function (opts,s){\nreturn cljs.tools.reader.edn.read_string.cljs$core$IFn$_invoke$arity$2(cljs.core.update.cljs$core$IFn$_invoke$arity$3(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_)], null),opts], 0)),new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),(function (m){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),m], 0));\n})),s);\n}));\n\n(cljs.reader.read_string.cljs$lang$maxFixedArity \x3d 2);\n\ncljs.reader.register_tag_parser_BANG_ \x3d (function cljs$reader$register_tag_parser_BANG_(tag,f){\nvar old_parser \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),tag);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.reader._STAR_tag_table_STAR_,cljs.core.assoc,tag,f);\n\nreturn old_parser;\n});\ncljs.reader.deregister_tag_parser_BANG_ \x3d (function cljs$reader$deregister_tag_parser_BANG_(tag){\nvar old_parser \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.reader._STAR_tag_table_STAR_),tag);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cljs.reader._STAR_tag_table_STAR_,cljs.core.dissoc,tag);\n\nreturn old_parser;\n});\ncljs.reader.register_default_tag_parser_BANG_ \x3d (function cljs$reader$register_default_tag_parser_BANG_(f){\nvar old_parser \x3d cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(cljs.reader._STAR_default_data_reader_fn_STAR_,(function (_){\nreturn f;\n}));\n\nreturn old_parser;\n});\ncljs.reader.deregister_default_tag_parser_BANG_ \x3d (function cljs$reader$deregister_default_tag_parser_BANG_(){\nvar old_parser \x3d cljs.core.deref(cljs.reader._STAR_default_data_reader_fn_STAR_);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(cljs.reader._STAR_default_data_reader_fn_STAR_,(function (_){\nreturn null;\n}));\n\nreturn old_parser;\n});\n");
SHADOW_ENV.evalLoad("sci.impl.core_protocols.js", true , "goog.provide(\x27sci.impl.core_protocols\x27);\nif((typeof sci !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl.core_protocols !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl.core_protocols._deref !\x3d\x3d \x27undefined\x27)){\n} else {\nsci.impl.core_protocols._deref \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__50789 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__50789.cljs$core$IFn$_invoke$arity$0 ? fexpr__50789.cljs$core$IFn$_invoke$arity$0() : fexpr__50789.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22sci.impl.core-protocols\x22,\x22-deref\x22),sci.impl.types.type_impl,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\nsci.impl.core_protocols._deref.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(\x22sci.impl.protocols\x22,\x22reified\x22,\x22sci.impl.protocols/reified\x22,-2019939396),(function (ref){\nvar methods$ \x3d sci.impl.types.getMethods(ref);\nvar fexpr__50812 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(methods$,new cljs.core.Symbol(null,\x22-deref\x22,\x22-deref\x22,-283116853,null));\nreturn (fexpr__50812.cljs$core$IFn$_invoke$arity$1 ? fexpr__50812.cljs$core$IFn$_invoke$arity$1(ref) : fexpr__50812.call(null,ref));\n}));\nsci.impl.core_protocols.ideref_default \x3d sci.impl.core_protocols._deref.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),(function (ref){\nreturn cljs.core.deref(ref);\n}));\nsci.impl.core_protocols.deref_STAR_ \x3d (function sci$impl$core_protocols$deref_STAR_(x){\nreturn sci.impl.core_protocols._deref.cljs$core$IFn$_invoke$arity$1(x);\n});\nsci.impl.core_protocols.cljs_core_ns \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),null);\nsci.impl.core_protocols.deref_protocol \x3d sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(null,\x22cljs.core.IDeref\x22,\x22cljs.core.IDeref\x22,-783543206,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22protocol\x22,\x22protocol\x22,652470118),cljs.core.IDeref,new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866),cljs.core.PersistentHashSet.createAsIfByAssoc([sci.impl.core_protocols._deref]),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.core_protocols.cljs_core_ns], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.core_protocols.cljs_core_ns], null));\nif((typeof sci !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl.core_protocols !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl.core_protocols._swap_BANG_ !\x3d\x3d \x27undefined\x27)){\n} else {\nsci.impl.core_protocols._swap_BANG_ \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__50827 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__50827.cljs$core$IFn$_invoke$arity$0 ? fexpr__50827.cljs$core$IFn$_invoke$arity$0() : fexpr__50827.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22sci.impl.core-protocols\x22,\x22-swap!\x22),sci.impl.types.type_impl,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\nif((typeof sci !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl.core_protocols !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof sci.impl.core_protocols._reset_BANG_ !\x3d\x3d \x27undefined\x27)){\n} else {\nsci.impl.core_protocols._reset_BANG_ \x3d (function (){var method_table__4654__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar prefer_table__4655__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar method_cache__4656__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar cached_hierarchy__4657__auto__ \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar hierarchy__4658__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(cljs.core.PersistentArrayMap.EMPTY,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),(function (){var fexpr__50846 \x3d cljs.core.get_global_hierarchy;\nreturn (fexpr__50846.cljs$core$IFn$_invoke$arity$0 ? fexpr__50846.cljs$core$IFn$_invoke$arity$0() : fexpr__50846.call(null));\n})());\nreturn (new cljs.core.MultiFn(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22sci.impl.core-protocols\x22,\x22-reset!\x22),sci.impl.types.type_impl,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),hierarchy__4658__auto__,method_table__4654__auto__,prefer_table__4655__auto__,method_cache__4656__auto__,cached_hierarchy__4657__auto__));\n})();\n}\nsci.impl.core_protocols._swap_BANG_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(\x22sci.impl.protocols\x22,\x22reified\x22,\x22sci.impl.protocols/reified\x22,-2019939396),(function() {\nvar G__50955 \x3d null;\nvar G__50955__2 \x3d (function (ref,f){\nvar methods$ \x3d sci.impl.types.getMethods(ref);\nvar fexpr__50850 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(methods$,new cljs.core.Symbol(null,\x22-swap!\x22,\x22-swap!\x22,-535359318,null));\nreturn (fexpr__50850.cljs$core$IFn$_invoke$arity$2 ? fexpr__50850.cljs$core$IFn$_invoke$arity$2(ref,f) : fexpr__50850.call(null,ref,f));\n});\nvar G__50955__3 \x3d (function (ref,f,a1){\nvar methods$ \x3d sci.impl.types.getMethods(ref);\nvar fexpr__50851 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(methods$,new cljs.core.Symbol(null,\x22-swap!\x22,\x22-swap!\x22,-535359318,null));\nreturn (fexpr__50851.cljs$core$IFn$_invoke$arity$3 ? fexpr__50851.cljs$core$IFn$_invoke$arity$3(ref,f,a1) : fexpr__50851.call(null,ref,f,a1));\n});\nvar G__50955__4 \x3d (function (ref,f,a1,a2){\nvar methods$ \x3d sci.impl.types.getMethods(ref);\nvar fexpr__50873 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(methods$,new cljs.core.Symbol(null,\x22-swap!\x22,\x22-swap!\x22,-535359318,null));\nreturn (fexpr__50873.cljs$core$IFn$_invoke$arity$4 ? fexpr__50873.cljs$core$IFn$_invoke$arity$4(ref,f,a1,a2) : fexpr__50873.call(null,ref,f,a1,a2));\n});\nvar G__50955__5 \x3d (function() { \nvar G__50961__delegate \x3d function (ref,f,a1,a2,args){\nvar methods$ \x3d sci.impl.types.getMethods(ref);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$variadic(cljs.core.get.cljs$core$IFn$_invoke$arity$2(methods$,new cljs.core.Symbol(null,\x22-swap!\x22,\x22-swap!\x22,-535359318,null)),ref,f,a1,a2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([args], 0));\n};\nvar G__50961 \x3d function (ref,f,a1,a2,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 4) {\nvar G__50962__i \x3d 0, G__50962__a \x3d new Array(arguments.length -  4);\nwhile (G__50962__i \x3c G__50962__a.length) {G__50962__a[G__50962__i] \x3d arguments[G__50962__i + 4]; ++G__50962__i;}\n  args \x3d new cljs.core.IndexedSeq(G__50962__a,0,null);\n} \nreturn G__50961__delegate.call(this,ref,f,a1,a2,args);};\nG__50961.cljs$lang$maxFixedArity \x3d 4;\nG__50961.cljs$lang$applyTo \x3d (function (arglist__50971){\nvar ref \x3d cljs.core.first(arglist__50971);\narglist__50971 \x3d cljs.core.next(arglist__50971);\nvar f \x3d cljs.core.first(arglist__50971);\narglist__50971 \x3d cljs.core.next(arglist__50971);\nvar a1 \x3d cljs.core.first(arglist__50971);\narglist__50971 \x3d cljs.core.next(arglist__50971);\nvar a2 \x3d cljs.core.first(arglist__50971);\nvar args \x3d cljs.core.rest(arglist__50971);\nreturn G__50961__delegate(ref,f,a1,a2,args);\n});\nG__50961.cljs$core$IFn$_invoke$arity$variadic \x3d G__50961__delegate;\nreturn G__50961;\n})()\n;\nG__50955 \x3d function(ref,f,a1,a2,var_args){\nvar args \x3d var_args;\nswitch(arguments.length){\ncase 2:\nreturn G__50955__2.call(this,ref,f);\ncase 3:\nreturn G__50955__3.call(this,ref,f,a1);\ncase 4:\nreturn G__50955__4.call(this,ref,f,a1,a2);\ndefault:\nvar G__50975 \x3d null;\nif (arguments.length \x3e 4) {\nvar G__50977__i \x3d 0, G__50977__a \x3d new Array(arguments.length -  4);\nwhile (G__50977__i \x3c G__50977__a.length) {G__50977__a[G__50977__i] \x3d arguments[G__50977__i + 4]; ++G__50977__i;}\nG__50975 \x3d new cljs.core.IndexedSeq(G__50977__a,0,null);\n}\nreturn G__50955__5.cljs$core$IFn$_invoke$arity$variadic(ref,f,a1,a2, G__50975);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__50955.cljs$lang$maxFixedArity \x3d 4;\nG__50955.cljs$lang$applyTo \x3d G__50955__5.cljs$lang$applyTo;\nG__50955.cljs$core$IFn$_invoke$arity$2 \x3d G__50955__2;\nG__50955.cljs$core$IFn$_invoke$arity$3 \x3d G__50955__3;\nG__50955.cljs$core$IFn$_invoke$arity$4 \x3d G__50955__4;\nG__50955.cljs$core$IFn$_invoke$arity$variadic \x3d G__50955__5.cljs$core$IFn$_invoke$arity$variadic;\nreturn G__50955;\n})()\n);\nsci.impl.core_protocols._reset_BANG_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(\x22sci.impl.protocols\x22,\x22reified\x22,\x22sci.impl.protocols/reified\x22,-2019939396),(function (ref,v){\nvar methods$ \x3d sci.impl.types.getMethods(ref);\nvar fexpr__50874 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(methods$,new cljs.core.Symbol(null,\x22-reset!\x22,\x22-reset!\x22,1965723739,null));\nreturn (fexpr__50874.cljs$core$IFn$_invoke$arity$2 ? fexpr__50874.cljs$core$IFn$_invoke$arity$2(ref,v) : fexpr__50874.call(null,ref,v));\n}));\nsci.impl.core_protocols.iatom_defaults \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sci.impl.core_protocols._swap_BANG_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),(function() { \nvar G__51005__delegate \x3d function (ref,f,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core.swap_BANG_,ref,f,args);\n};\nvar G__51005 \x3d function (ref,f,var_args){\nvar args \x3d null;\nif (arguments.length \x3e 2) {\nvar G__51010__i \x3d 0, G__51010__a \x3d new Array(arguments.length -  2);\nwhile (G__51010__i \x3c G__51010__a.length) {G__51010__a[G__51010__i] \x3d arguments[G__51010__i + 2]; ++G__51010__i;}\n  args \x3d new cljs.core.IndexedSeq(G__51010__a,0,null);\n} \nreturn G__51005__delegate.call(this,ref,f,args);};\nG__51005.cljs$lang$maxFixedArity \x3d 2;\nG__51005.cljs$lang$applyTo \x3d (function (arglist__51012){\nvar ref \x3d cljs.core.first(arglist__51012);\narglist__51012 \x3d cljs.core.next(arglist__51012);\nvar f \x3d cljs.core.first(arglist__51012);\nvar args \x3d cljs.core.rest(arglist__51012);\nreturn G__51005__delegate(ref,f,args);\n});\nG__51005.cljs$core$IFn$_invoke$arity$variadic \x3d G__51005__delegate;\nreturn G__51005;\n})()\n),sci.impl.core_protocols._reset_BANG_.cljs$core$IMultiFn$_add_method$arity$3(null,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),(function (ref,v){\nreturn cljs.core.reset_BANG_(ref,v);\n}))], null);\nsci.impl.core_protocols.swap_BANG__STAR_ \x3d (function sci$impl$core_protocols$swap_BANG__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51018 \x3d arguments.length;\nvar i__4772__auto___51019 \x3d (0);\nwhile(true){\nif((i__4772__auto___51019 \x3c len__4771__auto___51018)){\nargs__4777__auto__.push((arguments[i__4772__auto___51019]));\n\nvar G__51020 \x3d (i__4772__auto___51019 + (1));\ni__4772__auto___51019 \x3d G__51020;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.core_protocols.swap_BANG__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.core_protocols.swap_BANG__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ref,f,args){\nif(cljs.core.truth_(args)){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.core_protocols._swap_BANG_,ref,f,args);\n} else {\nreturn sci.impl.core_protocols._swap_BANG_.cljs$core$IFn$_invoke$arity$2(ref,f);\n}\n}));\n\n(sci.impl.core_protocols.swap_BANG__STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.core_protocols.swap_BANG__STAR_.cljs$lang$applyTo \x3d (function (seq50903){\nvar G__50904 \x3d cljs.core.first(seq50903);\nvar seq50903__$1 \x3d cljs.core.next(seq50903);\nvar G__50905 \x3d cljs.core.first(seq50903__$1);\nvar seq50903__$2 \x3d cljs.core.next(seq50903__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__50904,G__50905,seq50903__$2);\n}));\n\nsci.impl.core_protocols.reset_BANG__STAR_ \x3d (function sci$impl$core_protocols$reset_BANG__STAR_(ref,v){\nreturn sci.impl.core_protocols._reset_BANG_.cljs$core$IFn$_invoke$arity$2(ref,v);\n});\nsci.impl.core_protocols.swap_protocol \x3d sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(null,\x22cljs.core.ISwap\x22,\x22cljs.core.ISwap\x22,2045511362,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22protocol\x22,\x22protocol\x22,652470118),cljs.core.ISwap,new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866),cljs.core.PersistentHashSet.createAsIfByAssoc([sci.impl.core_protocols._swap_BANG_]),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.core_protocols.cljs_core_ns], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.core_protocols.cljs_core_ns], null));\nsci.impl.core_protocols.reset_protocol \x3d sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(null,\x22cljs.core.IReset\x22,\x22cljs.core.IReset\x22,348905844,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22protocol\x22,\x22protocol\x22,652470118),cljs.core.IReset,new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866),cljs.core.PersistentHashSet.createAsIfByAssoc([sci.impl.core_protocols._reset_BANG_]),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.core_protocols.cljs_core_ns], null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.core_protocols.cljs_core_ns], null));\nsci.impl.core_protocols.defaults \x3d cljs.core.set(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(sci.impl.core_protocols.iatom_defaults,sci.impl.core_protocols.ideref_default));\n");
SHADOW_ENV.evalLoad("sci.impl.hierarchies.js", true , "goog.provide(\x27sci.impl.hierarchies\x27);\nsci.impl.hierarchies.global_hierarchy \x3d (function sci$impl$hierarchies$global_hierarchy(ctx){\nreturn cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),new cljs.core.Symbol(null,\x22global-hierarchy\x22,\x22global-hierarchy\x22,-2014004345,null)], null));\n});\nsci.impl.hierarchies.derive_STAR_ \x3d (function sci$impl$hierarchies$derive_STAR_(var_args){\nvar G__50908 \x3d arguments.length;\nswitch (G__50908) {\ncase 3:\nreturn sci.impl.hierarchies.derive_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn sci.impl.hierarchies.derive_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.hierarchies.derive_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,tag,parent){\nsci.impl.vars.alter_var_root(sci.impl.hierarchies.global_hierarchy(ctx),(function (h){\nreturn cljs.core.derive.cljs$core$IFn$_invoke$arity$3(h,tag,parent);\n}));\n\nreturn null;\n}));\n\n(sci.impl.hierarchies.derive_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (_ctx,h,tag,parent){\nreturn cljs.core.derive.cljs$core$IFn$_invoke$arity$3(h,tag,parent);\n}));\n\n(sci.impl.hierarchies.derive_STAR_.cljs$lang$maxFixedArity \x3d 4);\n\nsci.impl.hierarchies.underive_STAR_ \x3d (function sci$impl$hierarchies$underive_STAR_(var_args){\nvar G__50913 \x3d arguments.length;\nswitch (G__50913) {\ncase 3:\nreturn sci.impl.hierarchies.underive_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn sci.impl.hierarchies.underive_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.hierarchies.underive_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,tag,parent){\nsci.impl.vars.alter_var_root(sci.impl.hierarchies.global_hierarchy(ctx),(function (h){\nreturn cljs.core.underive.cljs$core$IFn$_invoke$arity$3(h,tag,parent);\n}));\n\nreturn null;\n}));\n\n(sci.impl.hierarchies.underive_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (_ctx,h,tag,parent){\nreturn cljs.core.underive.cljs$core$IFn$_invoke$arity$3(h,tag,parent);\n}));\n\n(sci.impl.hierarchies.underive_STAR_.cljs$lang$maxFixedArity \x3d 4);\n\nsci.impl.hierarchies.isa_QMARK__STAR_ \x3d (function sci$impl$hierarchies$isa_QMARK__STAR_(var_args){\nvar G__50944 \x3d arguments.length;\nswitch (G__50944) {\ncase 3:\nreturn sci.impl.hierarchies.isa_QMARK__STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn sci.impl.hierarchies.isa_QMARK__STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.hierarchies.isa_QMARK__STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,child,parent){\nvar h \x3d cljs.core.deref(sci.impl.hierarchies.global_hierarchy(ctx));\nreturn cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3(h,child,parent);\n}));\n\n(sci.impl.hierarchies.isa_QMARK__STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (_ctx,h,child,parent){\nreturn cljs.core.isa_QMARK_.cljs$core$IFn$_invoke$arity$3(h,child,parent);\n}));\n\n(sci.impl.hierarchies.isa_QMARK__STAR_.cljs$lang$maxFixedArity \x3d 4);\n\nsci.impl.hierarchies.ancestors_STAR_ \x3d (function sci$impl$hierarchies$ancestors_STAR_(var_args){\nvar G__50956 \x3d arguments.length;\nswitch (G__50956) {\ncase 2:\nreturn sci.impl.hierarchies.ancestors_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.hierarchies.ancestors_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.hierarchies.ancestors_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,tag){\nvar h \x3d cljs.core.deref(sci.impl.hierarchies.global_hierarchy(ctx));\nreturn cljs.core.ancestors.cljs$core$IFn$_invoke$arity$2(h,tag);\n}));\n\n(sci.impl.hierarchies.ancestors_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (_ctx,h,tag){\nreturn cljs.core.ancestors.cljs$core$IFn$_invoke$arity$2(h,tag);\n}));\n\n(sci.impl.hierarchies.ancestors_STAR_.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.hierarchies.descendants_STAR_ \x3d (function sci$impl$hierarchies$descendants_STAR_(var_args){\nvar G__50973 \x3d arguments.length;\nswitch (G__50973) {\ncase 2:\nreturn sci.impl.hierarchies.descendants_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.hierarchies.descendants_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.hierarchies.descendants_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,tag){\nvar h \x3d cljs.core.deref(sci.impl.hierarchies.global_hierarchy(ctx));\nreturn cljs.core.descendants.cljs$core$IFn$_invoke$arity$2(h,tag);\n}));\n\n(sci.impl.hierarchies.descendants_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (_ctx,h,tag){\nreturn cljs.core.descendants.cljs$core$IFn$_invoke$arity$2(h,tag);\n}));\n\n(sci.impl.hierarchies.descendants_STAR_.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.hierarchies.parents_STAR_ \x3d (function sci$impl$hierarchies$parents_STAR_(var_args){\nvar G__51014 \x3d arguments.length;\nswitch (G__51014) {\ncase 2:\nreturn sci.impl.hierarchies.parents_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.hierarchies.parents_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.hierarchies.parents_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,tag){\nvar h \x3d cljs.core.deref(sci.impl.hierarchies.global_hierarchy(ctx));\nreturn cljs.core.parents.cljs$core$IFn$_invoke$arity$2(h,tag);\n}));\n\n(sci.impl.hierarchies.parents_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (_ctx,h,tag){\nreturn cljs.core.parents.cljs$core$IFn$_invoke$arity$2(h,tag);\n}));\n\n(sci.impl.hierarchies.parents_STAR_.cljs$lang$maxFixedArity \x3d 3);\n\n");
SHADOW_ENV.evalLoad("sci.impl.io.js", true , "goog.provide(\x27sci.impl.io\x27);\nsci.impl.io.in$ \x3d (function (){var _STAR_unrestricted_STAR__orig_val__50928 \x3d sci.impl.unrestrict._STAR_unrestricted_STAR_;\nvar _STAR_unrestricted_STAR__temp_val__50930 \x3d true;\n(sci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d _STAR_unrestricted_STAR__temp_val__50930);\n\ntry{var G__50939 \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(null,\x22*in*\x22,\x22*in*\x22,1130010229,null));\nsci.impl.vars.unbind(G__50939);\n\nreturn G__50939;\n}finally {(sci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d _STAR_unrestricted_STAR__orig_val__50928);\n}})();\nsci.impl.io.out \x3d (function (){var _STAR_unrestricted_STAR__orig_val__50945 \x3d sci.impl.unrestrict._STAR_unrestricted_STAR_;\nvar _STAR_unrestricted_STAR__temp_val__50946 \x3d true;\n(sci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d _STAR_unrestricted_STAR__temp_val__50946);\n\ntry{var G__50947 \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(null,\x22*out*\x22,\x22*out*\x22,1277591796,null));\nsci.impl.vars.unbind(G__50947);\n\nreturn G__50947;\n}finally {(sci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d _STAR_unrestricted_STAR__orig_val__50945);\n}})();\nsci.impl.io.err \x3d (function (){var _STAR_unrestricted_STAR__orig_val__50948 \x3d sci.impl.unrestrict._STAR_unrestricted_STAR_;\nvar _STAR_unrestricted_STAR__temp_val__50949 \x3d true;\n(sci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d _STAR_unrestricted_STAR__temp_val__50949);\n\ntry{var G__50950 \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$1(new cljs.core.Symbol(null,\x22*err*\x22,\x22*err*\x22,2070937226,null));\nsci.impl.vars.unbind(G__50950);\n\nreturn G__50950;\n}finally {(sci.impl.unrestrict._STAR_unrestricted_STAR_ \x3d _STAR_unrestricted_STAR__orig_val__50948);\n}})();\nsci.impl.io.print_meta \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22*print-meta*\x22,\x22*print-meta*\x22,-919406644,null),false);\nsci.impl.io.print_length \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22*print-length*\x22,\x22*print-length*\x22,-687693654,null),null);\nsci.impl.io.print_level \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22*print-level*\x22,\x22*print-level*\x22,-634488505,null),null);\nsci.impl.io.print_namespace_maps \x3d sci.impl.vars.dynamic_var.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22*print-namespace-maps*\x22,\x22*print-namespace-maps*\x22,-1759108415,null),true);\nsci.impl.io.pr \x3d (function sci$impl$io$pr(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51361 \x3d arguments.length;\nvar i__4772__auto___51362 \x3d (0);\nwhile(true){\nif((i__4772__auto___51362 \x3c len__4771__auto___51361)){\nargs__4777__auto__.push((arguments[i__4772__auto___51362]));\n\nvar G__51363 \x3d (i__4772__auto___51362 + (1));\ni__4772__auto___51362 \x3d G__51363;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.pr.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.pr.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__50963 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__50964 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_meta_STAR__orig_val__50965 \x3d cljs.core._STAR_print_meta_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__50966 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__50967 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__50968 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_meta_STAR__temp_val__50969 \x3d cljs.core.deref(sci.impl.io.print_meta);\nvar _STAR_print_namespace_maps_STAR__temp_val__50970 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__50967);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__50968);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__temp_val__50969);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__50970);\n\ntry{cljs.core.deref(sci.impl.io.out).append(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.pr_str,objs));\n\nreturn null;\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__50966);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__orig_val__50965);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__50964);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__50963);\n}}));\n\n(sci.impl.io.pr.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.pr.cljs$lang$applyTo \x3d (function (seq50957){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq50957));\n}));\n\nsci.impl.io.flush \x3d (function sci$impl$io$flush(){\nreturn null;\n});\nsci.impl.io.newline \x3d (function sci$impl$io$newline(){\nreturn (sci.impl.io.println.cljs$core$IFn$_invoke$arity$0 ? sci.impl.io.println.cljs$core$IFn$_invoke$arity$0() : sci.impl.io.println.call(null));\n});\n/**\n * pr to a string, returning it\n */\nsci.impl.io.pr_str \x3d (function sci$impl$io$pr_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51366 \x3d arguments.length;\nvar i__4772__auto___51367 \x3d (0);\nwhile(true){\nif((i__4772__auto___51367 \x3c len__4771__auto___51366)){\nargs__4777__auto__.push((arguments[i__4772__auto___51367]));\n\nvar G__51369 \x3d (i__4772__auto___51367 + (1));\ni__4772__auto___51367 \x3d G__51369;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.pr_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.pr_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__51045 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__51046 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_meta_STAR__orig_val__51047 \x3d cljs.core._STAR_print_meta_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__51048 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__51049 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__51050 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_meta_STAR__temp_val__51051 \x3d cljs.core.deref(sci.impl.io.print_meta);\nvar _STAR_print_namespace_maps_STAR__temp_val__51052 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__51049);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__51050);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__temp_val__51051);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__51052);\n\ntry{return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.pr_str,objs);\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__51048);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__orig_val__51047);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__51046);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__51045);\n}}));\n\n(sci.impl.io.pr_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.pr_str.cljs$lang$applyTo \x3d (function (seq51017){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51017));\n}));\n\nsci.impl.io.prn \x3d (function sci$impl$io$prn(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51374 \x3d arguments.length;\nvar i__4772__auto___51375 \x3d (0);\nwhile(true){\nif((i__4772__auto___51375 \x3c len__4771__auto___51374)){\nargs__4777__auto__.push((arguments[i__4772__auto___51375]));\n\nvar G__51391 \x3d (i__4772__auto___51375 + (1));\ni__4772__auto___51375 \x3d G__51391;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.prn.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.prn.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__51065 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__51066 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_meta_STAR__orig_val__51067 \x3d cljs.core._STAR_print_meta_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__51068 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__51069 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__51070 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_meta_STAR__temp_val__51071 \x3d cljs.core.deref(sci.impl.io.print_meta);\nvar _STAR_print_namespace_maps_STAR__temp_val__51072 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__51069);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__51070);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__temp_val__51071);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__51072);\n\ntry{cljs.core.deref(sci.impl.io.out).append(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.prn_str,objs));\n\nreturn null;\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__51068);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__orig_val__51067);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__51066);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__51065);\n}}));\n\n(sci.impl.io.prn.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.prn.cljs$lang$applyTo \x3d (function (seq51060){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51060));\n}));\n\n/**\n * pr to a string, returning it\n */\nsci.impl.io.prn_str \x3d (function sci$impl$io$prn_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51419 \x3d arguments.length;\nvar i__4772__auto___51420 \x3d (0);\nwhile(true){\nif((i__4772__auto___51420 \x3c len__4771__auto___51419)){\nargs__4777__auto__.push((arguments[i__4772__auto___51420]));\n\nvar G__51421 \x3d (i__4772__auto___51420 + (1));\ni__4772__auto___51420 \x3d G__51421;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.prn_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.prn_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__51105 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__51106 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_meta_STAR__orig_val__51107 \x3d cljs.core._STAR_print_meta_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__51108 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__51109 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__51110 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_meta_STAR__temp_val__51111 \x3d cljs.core.deref(sci.impl.io.print_meta);\nvar _STAR_print_namespace_maps_STAR__temp_val__51112 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__51109);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__51110);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__temp_val__51111);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__51112);\n\ntry{return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.prn_str,objs);\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__51108);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__orig_val__51107);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__51106);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__51105);\n}}));\n\n(sci.impl.io.prn_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.prn_str.cljs$lang$applyTo \x3d (function (seq51085){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51085));\n}));\n\nsci.impl.io.print \x3d (function sci$impl$io$print(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51433 \x3d arguments.length;\nvar i__4772__auto___51434 \x3d (0);\nwhile(true){\nif((i__4772__auto___51434 \x3c len__4771__auto___51433)){\nargs__4777__auto__.push((arguments[i__4772__auto___51434]));\n\nvar G__51435 \x3d (i__4772__auto___51434 + (1));\ni__4772__auto___51434 \x3d G__51435;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.print.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.print.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__51188 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__51189 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__51190 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__51191 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__51192 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_namespace_maps_STAR__temp_val__51193 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__51191);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__51192);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__51193);\n\ntry{cljs.core.deref(sci.impl.io.out).append(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.print_str,objs));\n\nreturn null;\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__51190);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__51189);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__51188);\n}}));\n\n(sci.impl.io.print.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.print.cljs$lang$applyTo \x3d (function (seq51155){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51155));\n}));\n\n/**\n * pr to a string, returning it\n */\nsci.impl.io.print_str \x3d (function sci$impl$io$print_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51456 \x3d arguments.length;\nvar i__4772__auto___51457 \x3d (0);\nwhile(true){\nif((i__4772__auto___51457 \x3c len__4771__auto___51456)){\nargs__4777__auto__.push((arguments[i__4772__auto___51457]));\n\nvar G__51458 \x3d (i__4772__auto___51457 + (1));\ni__4772__auto___51457 \x3d G__51458;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.print_str.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.print_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__51229 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__51230 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_meta_STAR__orig_val__51231 \x3d cljs.core._STAR_print_meta_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__51232 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__51233 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__51234 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_meta_STAR__temp_val__51235 \x3d cljs.core.deref(sci.impl.io.print_meta);\nvar _STAR_print_namespace_maps_STAR__temp_val__51236 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__51233);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__51234);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__temp_val__51235);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__51236);\n\ntry{return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.print_str,objs);\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__51232);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__orig_val__51231);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__51230);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__51229);\n}}));\n\n(sci.impl.io.print_str.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.print_str.cljs$lang$applyTo \x3d (function (seq51226){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51226));\n}));\n\nsci.impl.io.println \x3d (function sci$impl$io$println(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51463 \x3d arguments.length;\nvar i__4772__auto___51464 \x3d (0);\nwhile(true){\nif((i__4772__auto___51464 \x3c len__4771__auto___51463)){\nargs__4777__auto__.push((arguments[i__4772__auto___51464]));\n\nvar G__51465 \x3d (i__4772__auto___51464 + (1));\ni__4772__auto___51464 \x3d G__51465;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic \x3d (function (objs){\nvar _STAR_print_length_STAR__orig_val__51280 \x3d cljs.core._STAR_print_length_STAR_;\nvar _STAR_print_level_STAR__orig_val__51281 \x3d cljs.core._STAR_print_level_STAR_;\nvar _STAR_print_meta_STAR__orig_val__51282 \x3d cljs.core._STAR_print_meta_STAR_;\nvar _STAR_print_namespace_maps_STAR__orig_val__51283 \x3d cljs.core._STAR_print_namespace_maps_STAR_;\nvar _STAR_print_length_STAR__temp_val__51284 \x3d cljs.core.deref(sci.impl.io.print_length);\nvar _STAR_print_level_STAR__temp_val__51285 \x3d cljs.core.deref(sci.impl.io.print_level);\nvar _STAR_print_meta_STAR__temp_val__51286 \x3d cljs.core.deref(sci.impl.io.print_meta);\nvar _STAR_print_namespace_maps_STAR__temp_val__51287 \x3d cljs.core.deref(sci.impl.io.print_namespace_maps);\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__temp_val__51284);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__temp_val__51285);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__temp_val__51286);\n\n(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__temp_val__51287);\n\ntry{cljs.core.deref(sci.impl.io.out).append(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.println_str,objs));\n\nreturn null;\n}finally {(cljs.core._STAR_print_namespace_maps_STAR_ \x3d _STAR_print_namespace_maps_STAR__orig_val__51283);\n\n(cljs.core._STAR_print_meta_STAR_ \x3d _STAR_print_meta_STAR__orig_val__51282);\n\n(cljs.core._STAR_print_level_STAR_ \x3d _STAR_print_level_STAR__orig_val__51281);\n\n(cljs.core._STAR_print_length_STAR_ \x3d _STAR_print_length_STAR__orig_val__51280);\n}}));\n\n(sci.impl.io.println.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.io.println.cljs$lang$applyTo \x3d (function (seq51268){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq51268));\n}));\n\nsci.impl.io.with_out_str \x3d (function sci$impl$io$with_out_str(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51502 \x3d arguments.length;\nvar i__4772__auto___51503 \x3d (0);\nwhile(true){\nif((i__4772__auto___51503 \x3c len__4771__auto___51502)){\nargs__4777__auto__.push((arguments[i__4772__auto___51503]));\n\nvar G__51505 \x3d (i__4772__auto___51503 + (1));\ni__4772__auto___51503 \x3d G__51505;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.io.with_out_str.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.io.with_out_str.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,body){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22s__51319__auto__\x22,\x22s__51319__auto__\x22,-1770927845,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22goog.string.StringBuffer\x22,\x22goog.string.StringBuffer\x22,-1220229842,null),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22binding\x22,\x22cljs.core/binding\x22,2050379843,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22*out*\x22,\x22cljs.core/*out*\x22,-1813565621,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22s__51319__auto__\x22,\x22s__51319__auto__\x22,-1770927845,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body,(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22s__51319__auto__\x22,\x22s__51319__auto__\x22,-1770927845,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.io.with_out_str.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.io.with_out_str.cljs$lang$applyTo \x3d (function (seq51323){\nvar G__51324 \x3d cljs.core.first(seq51323);\nvar seq51323__$1 \x3d cljs.core.next(seq51323);\nvar G__51325 \x3d cljs.core.first(seq51323__$1);\nvar seq51323__$2 \x3d cljs.core.next(seq51323__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51324,G__51325,seq51323__$2);\n}));\n\n");
SHADOW_ENV.evalLoad("sci.impl.multimethods.js", true , "goog.provide(\x27sci.impl.multimethods\x27);\n/**\n * Throws an exception if the given option map contains keys not listed\n *   as valid, else returns nil.\n */\nsci.impl.multimethods.check_valid_options \x3d (function sci$impl$multimethods$check_valid_options(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51437 \x3d arguments.length;\nvar i__4772__auto___51438 \x3d (0);\nwhile(true){\nif((i__4772__auto___51438 \x3c len__4771__auto___51437)){\nargs__4777__auto__.push((arguments[i__4772__auto___51438]));\n\nvar G__51439 \x3d (i__4772__auto___51438 + (1));\ni__4772__auto___51438 \x3d G__51439;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.multimethods.check_valid_options.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.multimethods.check_valid_options.cljs$core$IFn$_invoke$arity$variadic \x3d (function (options,valid_keys){\nif(cljs.core.seq(cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.disj,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_set,cljs.core.keys(options)),valid_keys))){\nvar message \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$4(cljs.core.str,\x22Only these options are valid: \x22,cljs.core.first(valid_keys),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__51222_SHARP_){\nreturn [\x22, \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__51222_SHARP_)].join(\x27\x27);\n}),cljs.core.rest(valid_keys)));\nthrow (new Error(message));\n} else {\nreturn null;\n}\n}));\n\n(sci.impl.multimethods.check_valid_options.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.multimethods.check_valid_options.cljs$lang$applyTo \x3d (function (seq51225){\nvar G__51227 \x3d cljs.core.first(seq51225);\nvar seq51225__$1 \x3d cljs.core.next(seq51225);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51227,seq51225__$1);\n}));\n\n/**\n * Creates a new multimethod with the associated dispatch function.\n *   The docstring and attr-map are optional.\n * \n *   Options are key-value pairs and may be one of:\n * \n *   :default\n * \n *   The default dispatch value, defaults to :default\n * \n *   :hierarchy\n * \n *   The value used for hierarchical dispatch (e.g. ::square is-a ::shape)\n * \n *   Hierarchies are type-like relationships that do not depend upon type\n *   inheritance. By default Clojure\x27s multimethods dispatch off of a\n *   global hierarchy map.  However, a hierarchy relationship can be\n *   created with the derive function used to augment the root ancestor\n *   created with make-hierarchy.\n * \n *   Multimethods expect the value of the hierarchy option to be supplied as\n *   a reference type e.g. a var (i.e. via the Var-quote dispatch macro #\x27\n *   or the var special form).\n */\nsci.impl.multimethods.defmulti \x3d (function sci$impl$multimethods$defmulti(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51441 \x3d arguments.length;\nvar i__4772__auto___51442 \x3d (0);\nwhile(true){\nif((i__4772__auto___51442 \x3c len__4771__auto___51441)){\nargs__4777__auto__.push((arguments[i__4772__auto___51442]));\n\nvar G__51443 \x3d (i__4772__auto___51442 + (1));\ni__4772__auto___51442 \x3d G__51443;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.multimethods.defmulti.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.multimethods.defmulti.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,ctx,mm_name,options){\nvar docstring \x3d ((typeof cljs.core.first(options) \x3d\x3d\x3d \x27string\x27)?cljs.core.first(options):null);\nvar options__$1 \x3d ((typeof cljs.core.first(options) \x3d\x3d\x3d \x27string\x27)?cljs.core.next(options):options);\nvar m \x3d ((cljs.core.map_QMARK_(cljs.core.first(options__$1)))?cljs.core.first(options__$1):cljs.core.PersistentArrayMap.EMPTY);\nvar options__$2 \x3d ((cljs.core.map_QMARK_(cljs.core.first(options__$1)))?cljs.core.next(options__$1):options__$1);\nvar dispatch_fn \x3d cljs.core.first(options__$2);\nvar options__$3 \x3d cljs.core.next(options__$2);\nvar m__$1 \x3d (cljs.core.truth_(docstring)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),docstring):m);\nvar m__$2 \x3d (cljs.core.truth_(cljs.core.meta(mm_name))?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.meta(mm_name),m__$1):m__$1);\nvar mm_name__$1 \x3d cljs.core.with_meta(mm_name,m__$2);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(options__$3),(1))){\nthrow (new Error(\x22The syntax for defmulti has changed. Example: (defmulti name dispatch-fn :default dispatch-value)\x22));\n} else {\n}\n\nvar options__$4 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,options__$3);\nvar default$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(options__$4,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328));\nvar hierarchy \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$3(options__$4,new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341),sci.impl.hierarchies.global_hierarchy(ctx));\nsci.impl.multimethods.check_valid_options.cljs$core$IFn$_invoke$arity$variadic(options__$4,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),new cljs.core.Keyword(null,\x22hierarchy\x22,\x22hierarchy\x22,-1053470341)], 0));\n\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defonce\x22,\x22cljs.core/defonce\x22,-1291833100,null),null,(1),null)),(new cljs.core.List(null,cljs.core.with_meta(mm_name__$1,m__$2),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22method-table__51270__auto__\x22,\x22method-table__51270__auto__\x22,-183453083,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22atom\x22,\x22cljs.core/atom\x22,1943839529,null),null,(1),null)),(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22prefer-table__51271__auto__\x22,\x22prefer-table__51271__auto__\x22,875462723,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22atom\x22,\x22cljs.core/atom\x22,1943839529,null),null,(1),null)),(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method-cache__51273__auto__\x22,\x22method-cache__51273__auto__\x22,-1088976735,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22atom\x22,\x22cljs.core/atom\x22,1943839529,null),null,(1),null)),(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22cached-hierarchy__51274__auto__\x22,\x22cached-hierarchy__51274__auto__\x22,-1737906242,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22atom\x22,\x22cljs.core/atom\x22,1943839529,null),null,(1),null)),(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null))))),null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22multi-fn-impl\x22,\x22cljs.core/multi-fn-impl\x22,1399453884,null),null,(1),null)),(new cljs.core.List(null,cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(mm_name__$1)),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,dispatch_fn,null,(1),null)),(new cljs.core.List(null,default$,null,(1),null)),(new cljs.core.List(null,hierarchy,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method-table__51270__auto__\x22,\x22method-table__51270__auto__\x22,-183453083,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22prefer-table__51271__auto__\x22,\x22prefer-table__51271__auto__\x22,875462723,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method-cache__51273__auto__\x22,\x22method-cache__51273__auto__\x22,-1088976735,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22cached-hierarchy__51274__auto__\x22,\x22cached-hierarchy__51274__auto__\x22,-1737906242,null),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.multimethods.defmulti.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.multimethods.defmulti.cljs$lang$applyTo \x3d (function (seq51275){\nvar G__51276 \x3d cljs.core.first(seq51275);\nvar seq51275__$1 \x3d cljs.core.next(seq51275);\nvar G__51277 \x3d cljs.core.first(seq51275__$1);\nvar seq51275__$2 \x3d cljs.core.next(seq51275__$1);\nvar G__51278 \x3d cljs.core.first(seq51275__$2);\nvar seq51275__$3 \x3d cljs.core.next(seq51275__$2);\nvar G__51279 \x3d cljs.core.first(seq51275__$3);\nvar seq51275__$4 \x3d cljs.core.next(seq51275__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51276,G__51277,G__51278,G__51279,seq51275__$4);\n}));\n\nsci.impl.multimethods.multi_fn_QMARK__impl \x3d (function sci$impl$multimethods$multi_fn_QMARK__impl(x){\nreturn (x instanceof cljs.core.MultiFn);\n});\nsci.impl.multimethods.multi_fn_impl \x3d (function sci$impl$multimethods$multi_fn_impl(name,dispatch_fn,default$,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy){\nreturn (new cljs.core.MultiFn(name,dispatch_fn,default$,hierarchy,method_table,prefer_table,method_cache,cached_hierarchy));\n});\nsci.impl.multimethods.multi_fn_add_method_impl \x3d (function sci$impl$multimethods$multi_fn_add_method_impl(multifn,dispatch_val,f){\nreturn cljs.core._add_method(multifn,dispatch_val,f);\n});\n/**\n * Creates and installs a new method of multimethod associated with dispatch-value. \n */\nsci.impl.multimethods.defmethod \x3d (function sci$impl$multimethods$defmethod(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51588 \x3d arguments.length;\nvar i__4772__auto___51593 \x3d (0);\nwhile(true){\nif((i__4772__auto___51593 \x3c len__4771__auto___51588)){\nargs__4777__auto__.push((arguments[i__4772__auto___51593]));\n\nvar G__51594 \x3d (i__4772__auto___51593 + (1));\ni__4772__auto___51593 \x3d G__51594;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.multimethods.defmethod.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.multimethods.defmethod.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,multifn,dispatch_val,fn_tail){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22multi-fn-add-method-impl\x22,\x22cljs.core/multi-fn-add-method-impl\x22,-1207709569,null),null,(1),null)),(new cljs.core.List(null,multifn,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,dispatch_val,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),fn_tail))),null,(1),null))], 0))));\n}));\n\n(sci.impl.multimethods.defmethod.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.multimethods.defmethod.cljs$lang$applyTo \x3d (function (seq51393){\nvar G__51394 \x3d cljs.core.first(seq51393);\nvar seq51393__$1 \x3d cljs.core.next(seq51393);\nvar G__51395 \x3d cljs.core.first(seq51393__$1);\nvar seq51393__$2 \x3d cljs.core.next(seq51393__$1);\nvar G__51396 \x3d cljs.core.first(seq51393__$2);\nvar seq51393__$3 \x3d cljs.core.next(seq51393__$2);\nvar G__51397 \x3d cljs.core.first(seq51393__$3);\nvar seq51393__$4 \x3d cljs.core.next(seq51393__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51394,G__51395,G__51396,G__51397,seq51393__$4);\n}));\n\n");
SHADOW_ENV.evalLoad("edamame.impl.read_fn.js", true , "goog.provide(\x27edamame.impl.read_fn\x27);\n/**\n * Preserves metadata, unlike clojure.walk/walk.\n */\nedamame.impl.read_fn.walk_STAR_ \x3d (function edamame$impl$read_fn$walk_STAR_(inner,outer,form){\nif(cljs.core.list_QMARK_(form)){\nreturn cljs.core.with_meta((function (){var G__51392 \x3d cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__51392) : outer.call(null,G__51392));\n})(),cljs.core.meta(form));\n} else {\nif(cljs.core.map_entry_QMARK_(form)){\nvar G__51398 \x3d (new cljs.core.MapEntry((function (){var G__51399 \x3d cljs.core.key(form);\nreturn (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__51399) : inner.call(null,G__51399));\n})(),(function (){var G__51415 \x3d cljs.core.val(form);\nreturn (inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(G__51415) : inner.call(null,G__51415));\n})(),null));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__51398) : outer.call(null,G__51398));\n} else {\nif(cljs.core.seq_QMARK_(form)){\nreturn cljs.core.with_meta((function (){var G__51416 \x3d cljs.core.doall.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__51416) : outer.call(null,G__51416));\n})(),cljs.core.meta(form));\n} else {\nif(cljs.core.record_QMARK_(form)){\nvar G__51422 \x3d cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (r,x){\nreturn cljs.core.conj.cljs$core$IFn$_invoke$arity$2(r,(inner.cljs$core$IFn$_invoke$arity$1 ? inner.cljs$core$IFn$_invoke$arity$1(x) : inner.call(null,x)));\n}),form,form);\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__51422) : outer.call(null,G__51422));\n} else {\nif(cljs.core.coll_QMARK_(form)){\nvar G__51427 \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.empty(form),cljs.core.map.cljs$core$IFn$_invoke$arity$2(inner,form));\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(G__51427) : outer.call(null,G__51427));\n} else {\nreturn (outer.cljs$core$IFn$_invoke$arity$1 ? outer.cljs$core$IFn$_invoke$arity$1(form) : outer.call(null,form));\n\n}\n}\n}\n}\n}\n});\n/**\n * Preserves metadata, unlike clojure.walk/postwalk.\n */\nedamame.impl.read_fn.postwalk_STAR_ \x3d (function edamame$impl$read_fn$postwalk_STAR_(f,form){\nreturn edamame.impl.read_fn.walk_STAR_(cljs.core.partial.cljs$core$IFn$_invoke$arity$2(edamame.impl.read_fn.postwalk_STAR_,f),f,form);\n});\nedamame.impl.read_fn.read_fn \x3d (function edamame$impl$read_fn$read_fn(expr){\nvar state \x3d cljs.core.volatile_BANG_(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124),(0),new cljs.core.Keyword(null,\x22var-args?\x22,\x22var-args?\x22,-1630678710),false], null));\nvar expr__$1 \x3d edamame.impl.read_fn.postwalk_STAR_((function (elt){\nif((elt instanceof cljs.core.Symbol)){\nvar temp__5751__auto__ \x3d cljs.core.re_matches(/^%(.*)/,cljs.core.name(elt));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__51445 \x3d temp__5751__auto__;\nvar _ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51445,(0),null);\nvar m \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51445,(1),null);\nif(cljs.core.empty_QMARK_(m)){\nstate.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,cljs.core.update.cljs$core$IFn$_invoke$arity$4(state.cljs$core$IDeref$_deref$arity$1(null),new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124),cljs.core.max,(1)));\n\nreturn new cljs.core.Symbol(null,\x22%1\x22,\x22%1\x22,1309450150,null);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\x26\x22,m)){\nstate.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(state.cljs$core$IDeref$_deref$arity$1(null),new cljs.core.Keyword(null,\x22var-args?\x22,\x22var-args?\x22,-1630678710),true));\n\nreturn elt;\n} else {\nvar n_51519 \x3d parseInt(m);\nstate.cljs$core$IVolatile$_vreset_BANG_$arity$2(null,cljs.core.update.cljs$core$IFn$_invoke$arity$4(state.cljs$core$IDeref$_deref$arity$1(null),new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124),cljs.core.max,n_51519));\n\nreturn elt;\n\n}\n}\n} else {\nreturn elt;\n}\n} else {\nreturn elt;\n}\n}),expr);\nvar map__51440 \x3d cljs.core.deref(state);\nvar map__51440__$1 \x3d cljs.core.__destructure_map(map__51440);\nvar max_fixed \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51440__$1,new cljs.core.Keyword(null,\x22max-fixed\x22,\x22max-fixed\x22,166770124));\nvar var_args_QMARK_ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51440__$1,new cljs.core.Keyword(null,\x22var-args?\x22,\x22var-args?\x22,-1630678710));\nvar fixed_names \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__51436_SHARP_){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([\x22%\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__51436_SHARP_)].join(\x27\x27));\n}),cljs.core.range.cljs$core$IFn$_invoke$arity$2((1),(max_fixed + (1))));\nvar var_args_sym \x3d new cljs.core.Symbol(null,\x22%\x26\x22,\x22%\x26\x22,-728707069,null);\nvar arg_list \x3d cljs.core.vec(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(fixed_names,(cljs.core.truth_(var_args_QMARK_)?new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),var_args_sym], null):null)));\nvar form \x3d (new cljs.core.List(null,new cljs.core.Symbol(null,\x22fn*\x22,\x22fn*\x22,-752876845,null),(new cljs.core.List(null,arg_list,(new cljs.core.List(null,expr__$1,null,(1),null)),(2),null)),(3),null));\nreturn form;\n});\n");
SHADOW_ENV.evalLoad("edamame.impl.syntax_quote.js", true , "goog.provide(\x27edamame.impl.syntax_quote\x27);\nedamame.impl.syntax_quote.unquote_QMARK_ \x3d (function edamame$impl$syntax_quote$unquote_QMARK_(form){\nreturn ((cljs.core.seq_QMARK_(form)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(form),new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote\x22,\x22clojure.core/unquote\x22,843087510,null))));\n});\nedamame.impl.syntax_quote.unquote_splicing_QMARK_ \x3d (function edamame$impl$syntax_quote$unquote_splicing_QMARK_(form){\nreturn ((cljs.core.seq_QMARK_(form)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.first(form),new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote-splicing\x22,\x22clojure.core/unquote-splicing\x22,-552003150,null))));\n});\n/**\n * Expand a list by resolving its syntax quotes and unquotes\n */\nedamame.impl.syntax_quote.expand_list \x3d (function edamame$impl$syntax_quote$expand_list(ctx,reader,s){\nvar s__$1 \x3d cljs.core.seq(s);\nvar r \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nif(s__$1){\nvar item \x3d cljs.core.first(s__$1);\nvar ret \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(r,((edamame.impl.syntax_quote.unquote_QMARK_(item))?(new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22list\x22,\x22clojure.core/list\x22,-1119203325,null),(new cljs.core.List(null,cljs.core.second(item),null,(1),null)),(2),null)):((edamame.impl.syntax_quote.unquote_splicing_QMARK_(item))?cljs.core.second(item):(new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22list\x22,\x22clojure.core/list\x22,-1119203325,null),(new cljs.core.List(null,(edamame.impl.syntax_quote.syntax_quote.cljs$core$IFn$_invoke$arity$3 ? edamame.impl.syntax_quote.syntax_quote.cljs$core$IFn$_invoke$arity$3(ctx,reader,item) : edamame.impl.syntax_quote.syntax_quote.call(null,ctx,reader,item)),null,(1),null)),(2),null))\n)));\nvar G__51597 \x3d cljs.core.next(s__$1);\nvar G__51598 \x3d ret;\ns__$1 \x3d G__51597;\nr \x3d G__51598;\ncontinue;\n} else {\nreturn cljs.core.seq(cljs.core.persistent_BANG_(r));\n}\nbreak;\n}\n});\nedamame.impl.syntax_quote.syntax_quote_coll \x3d (function edamame$impl$syntax_quote$syntax_quote_coll(ctx,reader,type,coll){\nvar res \x3d (new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22sequence\x22,\x22clojure.core/sequence\x22,1998774218,null),(new cljs.core.List(null,(new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22seq\x22,\x22clojure.core/seq\x22,-1551838743,null),(new cljs.core.List(null,cljs.core.cons(new cljs.core.Symbol(\x22clojure.core\x22,\x22concat\x22,\x22clojure.core/concat\x22,-1236478952,null),edamame.impl.syntax_quote.expand_list(ctx,reader,coll)),null,(1),null)),(2),null)),null,(1),null)),(2),null));\nif(cljs.core.truth_(type)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22apply\x22,\x22clojure.core/apply\x22,1654646389,null),(new cljs.core.List(null,type,(new cljs.core.List(null,res,null,(1),null)),(2),null)),(3),null));\n} else {\nreturn res;\n}\n});\n/**\n * Decide which map type to use, array-map if less than 16 elements\n */\nedamame.impl.syntax_quote.map_func \x3d (function edamame$impl$syntax_quote$map_func(coll){\nif((cljs.core.count(coll) \x3e\x3d (16))){\nreturn new cljs.core.Symbol(\x22clojure.core\x22,\x22hash-map\x22,\x22clojure.core/hash-map\x22,338908405,null);\n} else {\nreturn new cljs.core.Symbol(\x22clojure.core\x22,\x22array-map\x22,\x22clojure.core/array-map\x22,-1351833961,null);\n}\n});\n/**\n * Flatten a map into a seq of alternate keys and values\n */\nedamame.impl.syntax_quote.flatten_map \x3d (function edamame$impl$syntax_quote$flatten_map(form){\nvar s \x3d cljs.core.seq(form);\nvar key_vals \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nif(s){\nvar e \x3d cljs.core.first(s);\nvar G__51637 \x3d cljs.core.next(s);\nvar G__51638 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(key_vals,cljs.core.key(e)),cljs.core.val(e));\ns \x3d G__51637;\nkey_vals \x3d G__51638;\ncontinue;\n} else {\nreturn cljs.core.seq(cljs.core.persistent_BANG_(key_vals));\n}\nbreak;\n}\n});\nedamame.impl.syntax_quote.syntax_quote_STAR_ \x3d (function edamame$impl$syntax_quote$syntax_quote_STAR_(p__51454,reader,form){\nvar map__51455 \x3d p__51454;\nvar map__51455__$1 \x3d cljs.core.__destructure_map(map__51455);\nvar ctx \x3d map__51455__$1;\nvar gensyms \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51455__$1,new cljs.core.Keyword(null,\x22gensyms\x22,\x22gensyms\x22,248713782));\nif(cljs.core.special_symbol_QMARK_(form)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,form,null,(1),null)),(2),null));\n} else {\nif((form instanceof cljs.core.Symbol)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,(function (){var sym_name \x3d cljs.core.name(form);\nif(cljs.core.special_symbol_QMARK_(form)){\nreturn form;\n} else {\nif(clojure.string.ends_with_QMARK_(sym_name,\x22#\x22)){\nvar temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(gensyms),form);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar generated \x3d temp__5751__auto__;\nreturn generated;\n} else {\nvar n \x3d cljs.core.subs.cljs$core$IFn$_invoke$arity$3(sym_name,(0),(((sym_name).length) - (1)));\nvar generated \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1([n,\x22__\x22].join(\x27\x27));\nvar generated__$1 \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([cljs.core.name(generated),\x22__auto__\x22].join(\x27\x27));\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(gensyms,cljs.core.assoc,form,generated__$1);\n\nreturn generated__$1;\n}\n} else {\nvar f \x3d new cljs.core.Keyword(null,\x22resolve-symbol\x22,\x22resolve-symbol\x22,-319166964).cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847).cljs$core$IFn$_invoke$arity$1(ctx));\nvar fexpr__51466 \x3d (function (){var or__4160__auto__ \x3d f;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.identity;\n}\n})();\nreturn (fexpr__51466.cljs$core$IFn$_invoke$arity$1 ? fexpr__51466.cljs$core$IFn$_invoke$arity$1(form) : fexpr__51466.call(null,form));\n\n}\n}\n})(),null,(1),null)),(2),null));\n} else {\nif(edamame.impl.syntax_quote.unquote_QMARK_(form)){\nreturn cljs.core.second(form);\n} else {\nif(edamame.impl.syntax_quote.unquote_splicing_QMARK_(form)){\nthrow (new Error(\x22unquote-splice not in list\x22));\n} else {\nif(cljs.core.coll_QMARK_(form)){\nif((form instanceof cljs.core.IRecord)){\nreturn form;\n} else {\nif(cljs.core.map_QMARK_(form)){\nreturn edamame.impl.syntax_quote.syntax_quote_coll(ctx,reader,edamame.impl.syntax_quote.map_func(form),edamame.impl.syntax_quote.flatten_map(form));\n} else {\nif(cljs.core.vector_QMARK_(form)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22vec\x22,\x22clojure.core/vec\x22,146271141,null),(new cljs.core.List(null,edamame.impl.syntax_quote.syntax_quote_coll(ctx,reader,null,form),null,(1),null)),(2),null));\n} else {\nif(cljs.core.set_QMARK_(form)){\nreturn edamame.impl.syntax_quote.syntax_quote_coll(ctx,reader,new cljs.core.Symbol(\x22clojure.core\x22,\x22hash-set\x22,\x22clojure.core/hash-set\x22,1229125967,null),form);\n} else {\nif(((cljs.core.seq_QMARK_(form)) || (cljs.core.list_QMARK_(form)))){\nvar seq \x3d cljs.core.seq(form);\nif(seq){\nreturn edamame.impl.syntax_quote.syntax_quote_coll(ctx,reader,null,seq);\n} else {\nreturn cljs.core.list(new cljs.core.Symbol(\x22clojure.core\x22,\x22list\x22,\x22clojure.core/list\x22,-1119203325,null));\n}\n} else {\nthrow (new Error(\x22Unknown Collection type\x22));\n\n}\n}\n}\n}\n}\n} else {\nif((((form instanceof cljs.core.Keyword)) || (typeof form \x3d\x3d\x3d \x27number\x27) || (cljs.core.char_QMARK_(form)) || (typeof form \x3d\x3d\x3d \x27string\x27) || ((form \x3d\x3d null)) || (cljs.core.boolean_QMARK_(form)) || (cljs.core.regexp_QMARK_(form)))){\nreturn form;\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,form,null,(1),null)),(2),null));\n\n}\n}\n}\n}\n}\n}\n});\nedamame.impl.syntax_quote.add_meta \x3d (function edamame$impl$syntax_quote$add_meta(ctx,reader,form,ret){\nif((((((!((form \x3d\x3d null))))?(((((form.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d form.cljs$core$IWithMeta$))))?true:false):false))?cljs.core.seq(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(cljs.core.meta(form),new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712).cljs$core$IFn$_invoke$arity$1(ctx),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766).cljs$core$IFn$_invoke$arity$1(ctx),new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680).cljs$core$IFn$_invoke$arity$1(ctx),new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304).cljs$core$IFn$_invoke$arity$1(ctx)], 0))):false)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22with-meta\x22,\x22cljs.core/with-meta\x22,749126446,null),(new cljs.core.List(null,ret,(new cljs.core.List(null,edamame.impl.syntax_quote.syntax_quote_STAR_(ctx,reader,cljs.core.meta(form)),null,(1),null)),(2),null)),(3),null));\n} else {\nreturn ret;\n}\n});\nedamame.impl.syntax_quote.syntax_quote \x3d (function edamame$impl$syntax_quote$syntax_quote(ctx,reader,form){\nvar ret \x3d edamame.impl.syntax_quote.syntax_quote_STAR_(ctx,reader,form);\nreturn edamame.impl.syntax_quote.add_meta(ctx,reader,form,ret);\n});\n");
SHADOW_ENV.evalLoad("edamame.impl.parser.js", true , "goog.provide(\x27edamame.impl.parser\x27);\nedamame.impl.parser.edn_read \x3d (function edamame$impl$parser$edn_read(ctx,reader){\nvar tools_reader_opts \x3d new cljs.core.Keyword(\x22tools.reader\x22,\x22opts\x22,\x22tools.reader/opts\x22,-2121810901).cljs$core$IFn$_invoke$arity$1(ctx);\nreturn cljs.tools.reader.edn.read.cljs$core$IFn$_invoke$arity$2(tools_reader_opts,reader);\n});\nedamame.impl.parser.dispatch_macro_QMARK_ \x3d (function edamame$impl$parser$dispatch_macro_QMARK_(ch){\nreturn cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 10, [\x22!\x22,null,\x22\\\x22\x22,null,\x22#\x22,null,\x22\x27\x22,null,\x22(\x22,null,\x22:\x22,null,\x22{\x22,null,\x22^\x22,null,\x22?\x22,null,\x22_\x22,null], null), null),ch);\n});\nedamame.impl.parser.read_token \x3d new cljs.core.Var(function(){return cljs.tools.reader.edn.read_token;},new cljs.core.Symbol(\x22cljs.tools.reader.edn\x22,\x22read-token\x22,\x22cljs.tools.reader.edn/read-token\x22,-1809266548,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22private\x22,\x22private\x22,-558947994),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[true,new cljs.core.Symbol(null,\x22cljs.tools.reader.edn\x22,\x22cljs.tools.reader.edn\x22,-1275821532,null),new cljs.core.Symbol(null,\x22read-token\x22,\x22read-token\x22,392624627,null),\x22cljs/tools/reader/edn.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),4,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),4,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22initch\x22,\x22initch\x22,946908919,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22initch\x22,\x22initch\x22,946908919,null),new cljs.core.Symbol(null,\x22validate-leading?\x22,\x22validate-leading?\x22,1185429770,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22initch\x22,\x22initch\x22,946908919,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22initch\x22,\x22initch\x22,946908919,null),new cljs.core.Symbol(null,\x22validate-leading?\x22,\x22validate-leading?\x22,1185429770,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,42,42,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22initch\x22,\x22initch\x22,946908919,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rdr\x22,\x22rdr\x22,190007785,null),new cljs.core.Symbol(null,\x22kind\x22,\x22kind\x22,923265724,null),new cljs.core.Symbol(null,\x22initch\x22,\x22initch\x22,946908919,null),new cljs.core.Symbol(null,\x22validate-leading?\x22,\x22validate-leading?\x22,1185429770,null)], null)),null,(cljs.core.truth_(cljs.tools.reader.edn.read_token)?cljs.tools.reader.edn.read_token.cljs$lang$test:null)]));\nedamame.impl.parser.parse_symbol \x3d new cljs.core.Var(function(){return cljs.tools.reader.impl.commons.parse_symbol;},new cljs.core.Symbol(\x22cljs.tools.reader.impl.commons\x22,\x22parse-symbol\x22,\x22cljs.tools.reader.impl.commons/parse-symbol\x22,-903976395,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.tools.reader.impl.commons\x22,\x22cljs.tools.reader.impl.commons\x22,1569241026,null),new cljs.core.Symbol(null,\x22parse-symbol\x22,\x22parse-symbol\x22,1608073451,null),\x22cljs/tools/reader/impl/commons.cljs\x22,19,1,97,97,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22token\x22,\x22token\x22,429068312,null)], null)),\x22Parses a string into a vector of the namespace and symbol\x22,(cljs.core.truth_(cljs.tools.reader.impl.commons.parse_symbol)?cljs.tools.reader.impl.commons.parse_symbol.cljs$lang$test:null)]));\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nedamame.impl.parser.Loc \x3d (function (row,col,__meta,__extmap,__hash){\nthis.row \x3d row;\nthis.col \x3d col;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(edamame.impl.parser.Loc.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k51771,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__51816 \x3d k51771;\nvar G__51816__$1 \x3d (((G__51816 instanceof cljs.core.Keyword))?G__51816.fqn:null);\nswitch (G__51816__$1) {\ncase \x22row\x22:\nreturn self__.row;\n\nbreak;\ncase \x22col\x22:\nreturn self__.col;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k51771,else__4418__auto__);\n\n}\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__51876){\nvar vec__51877 \x3d p__51876;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51877,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51877,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#edamame.impl.parser.Loc{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),self__.row],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),self__.col],null))], null),self__.__extmap));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__51770){\nvar self__ \x3d this;\nvar G__51770__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__51770__$1,2,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new edamame.impl.parser.Loc(self__.row,self__.col,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (2 + cljs.core.count(self__.__extmap));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (1435872067 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this51772,other51773){\nvar self__ \x3d this;\nvar this51772__$1 \x3d this;\nreturn (((!((other51773 \x3d\x3d null)))) \x26\x26 ((this51772__$1.constructor \x3d\x3d\x3d other51773.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this51772__$1.row,other51773.row)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this51772__$1.col,other51773.col)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this51772__$1.__extmap,other51773.__extmap)));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),null,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new edamame.impl.parser.Loc(self__.row,self__.col,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__51770){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__51956 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__51957 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__51956.cljs$core$IFn$_invoke$arity$2 ? pred__51956.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),expr__51957) : pred__51956.call(null,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),expr__51957)))){\nreturn (new edamame.impl.parser.Loc(G__51770,self__.col,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__51956.cljs$core$IFn$_invoke$arity$2 ? pred__51956.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),expr__51957) : pred__51956.call(null,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),expr__51957)))){\nreturn (new edamame.impl.parser.Loc(self__.row,G__51770,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new edamame.impl.parser.Loc(self__.row,self__.col,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__51770),null));\n}\n}\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),self__.row,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),self__.col,null))], null),self__.__extmap));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__51770){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new edamame.impl.parser.Loc(self__.row,self__.col,G__51770,self__.__extmap,self__.__hash));\n}));\n\n(edamame.impl.parser.Loc.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(edamame.impl.parser.Loc.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22row\x22,\x22row\x22,1070392006,null),new cljs.core.Symbol(null,\x22col\x22,\x22col\x22,-318831557,null)], null);\n}));\n\n(edamame.impl.parser.Loc.cljs$lang$type \x3d true);\n\n(edamame.impl.parser.Loc.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22edamame.impl.parser/Loc\x22,null,(1),null));\n}));\n\n(edamame.impl.parser.Loc.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22edamame.impl.parser/Loc\x22);\n}));\n\n/**\n * Positional factory function for edamame.impl.parser/Loc.\n */\nedamame.impl.parser.__GT_Loc \x3d (function edamame$impl$parser$__GT_Loc(row,col){\nreturn (new edamame.impl.parser.Loc(row,col,null,null,null));\n});\n\n/**\n * Factory function for edamame.impl.parser/Loc, taking a map of keywords to field values.\n */\nedamame.impl.parser.map__GT_Loc \x3d (function edamame$impl$parser$map__GT_Loc(G__51789){\nvar extmap__4454__auto__ \x3d (function (){var G__52014 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__51789,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084)], 0));\nif(cljs.core.record_QMARK_(G__51789)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__52014);\n} else {\nreturn G__52014;\n}\n})();\nreturn (new edamame.impl.parser.Loc(new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521).cljs$core$IFn$_invoke$arity$1(G__51789),new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084).cljs$core$IFn$_invoke$arity$1(G__51789),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nedamame.impl.parser.location \x3d (function edamame$impl$parser$location(reader){\nreturn edamame.impl.parser.__GT_Loc(reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null),reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null));\n});\nedamame.impl.parser.kw_identical_QMARK_ \x3d (function edamame$impl$parser$kw_identical_QMARK_(kw,v){\nreturn cljs.core.keyword_identical_QMARK_(kw,v);\n});\nedamame.impl.parser.parse_comment \x3d (function edamame$impl$parser$parse_comment(reader){\ncljs.tools.reader.reader_types.read_line(reader);\n\nreturn reader;\n});\nedamame.impl.parser.whitespace_QMARK_ \x3d (function edamame$impl$parser$whitespace_QMARK_(c){\nvar and__4149__auto__ \x3d c;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ((-1) \x3c [\x22\\r\x22,\x22\\n\x22,\x22\\t\x22,\x22 \x22,\x22,\x22].indexOf(c));\n} else {\nreturn and__4149__auto__;\n}\n});\n/**\n * Skips whitespace. Returns reader. If end of stream is reached, returns nil.\n */\nedamame.impl.parser.skip_whitespace \x3d (function edamame$impl$parser$skip_whitespace(_ctx,reader){\nwhile(true){\nvar temp__5753__auto__ \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar c \x3d temp__5753__auto__;\nif(cljs.core.truth_(edamame.impl.parser.whitespace_QMARK_(c))){\ncontinue;\n} else {\nreader.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,c);\n\nreturn reader;\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\n/**\n * Throw reader exception, including line line/column. line/column is\n *   read from the reader but it can be overriden by passing loc\n *   optional parameter.\n */\nedamame.impl.parser.throw_reader \x3d (function edamame$impl$parser$throw_reader(var_args){\nvar G__52031 \x3d arguments.length;\nswitch (G__52031) {\ncase 3:\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,reader,msg){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4(ctx,reader,msg,null);\n}));\n\n(edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4 \x3d (function (ctx,reader,msg,data){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5(ctx,reader,msg,data,null);\n}));\n\n(edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5 \x3d (function (ctx,reader,msg,data,loc){\nvar c \x3d new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084).cljs$core$IFn$_invoke$arity$2(loc,cljs.tools.reader.reader_types.get_column_number(reader));\nvar l \x3d new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521).cljs$core$IFn$_invoke$arity$2(loc,cljs.tools.reader.reader_types.get_line_number(reader));\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(msg,cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.PersistentArrayMap.createAsIfByAssoc([new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(\x22edamame\x22,\x22error\x22,\x22edamame/error\x22,882529634),new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712).cljs$core$IFn$_invoke$arity$1(ctx),l,new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766).cljs$core$IFn$_invoke$arity$1(ctx),c]),data], 0)));\n}));\n\n(edamame.impl.parser.throw_reader.cljs$lang$maxFixedArity \x3d 5);\n\nedamame.impl.parser.non_match \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(\x22non-match\x22);\nedamame.impl.parser.non_match_QMARK_ \x3d (function edamame$impl$parser$non_match_QMARK_(v){\nreturn (v \x3d\x3d\x3d edamame.impl.parser.non_match);\n});\nedamame.impl.parser.throw_eof_while_reading \x3d (function edamame$impl$parser$throw_eof_while_reading(ctx,reader){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22EOF while reading\x22);\n});\nedamame.impl.parser.parse_to_delimiter \x3d (function edamame$impl$parser$parse_to_delimiter(var_args){\nvar G__52089 \x3d arguments.length;\nswitch (G__52089) {\ncase 3:\nreturn edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,reader,delimiter){\nreturn edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$4(ctx,reader,delimiter,cljs.core.PersistentVector.EMPTY);\n}));\n\n(edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$4 \x3d (function (ctx,reader,delimiter,into){\nvar row \x3d reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null);\nvar col \x3d reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null);\nvar opened \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),delimiter),new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586),opened,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),row,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),col], null));\nvar vals \x3d cljs.core.transient$(into);\nwhile(true){\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx__$1,reader) : edamame.impl.parser.parse_next.call(null,ctx__$1,reader));\nvar cond_splice_QMARK_ \x3d (function (){var G__52163 \x3d next_val;\nvar G__52163__$1 \x3d (((G__52163 \x3d\x3d null))?null:cljs.core.meta(G__52163));\nif((G__52163__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22cond-splice\x22,\x22edamame.impl.parser/cond-splice\x22,1534599765).cljs$core$IFn$_invoke$arity$1(G__52163__$1);\n}\n})();\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006),next_val)){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4(ctx__$1,reader,[\x22EOF while reading, expected \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(delimiter),\x22 to match \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(opened),\x22 at [\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(row),\x22,\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col),\x22]\x22].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(\x22edamame\x22,\x22expected-delimiter\x22,\x22edamame/expected-delimiter\x22,93379254),cljs.core.str.cljs$core$IFn$_invoke$arity$1(delimiter),new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter\x22,\x22edamame/opened-delimiter\x22,-1906008305),cljs.core.str.cljs$core$IFn$_invoke$arity$1(opened),new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter-loc\x22,\x22edamame/opened-delimiter-loc\x22,443885208),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),row,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),col], null)], null));\n} else {\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),next_val)){\nreturn cljs.core.persistent_BANG_(vals);\n} else {\nif(cljs.core.truth_(cond_splice_QMARK_)){\nvar seq__52167_53512 \x3d cljs.core.seq(next_val);\nvar chunk__52168_53513 \x3d null;\nvar count__52169_53514 \x3d (0);\nvar i__52170_53515 \x3d (0);\nwhile(true){\nif((i__52170_53515 \x3c count__52169_53514)){\nvar v_53519 \x3d chunk__52168_53513.cljs$core$IIndexed$_nth$arity$2(null,i__52170_53515);\ncljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vals,v_53519);\n\n\nvar G__53520 \x3d seq__52167_53512;\nvar G__53521 \x3d chunk__52168_53513;\nvar G__53522 \x3d count__52169_53514;\nvar G__53523 \x3d (i__52170_53515 + (1));\nseq__52167_53512 \x3d G__53520;\nchunk__52168_53513 \x3d G__53521;\ncount__52169_53514 \x3d G__53522;\ni__52170_53515 \x3d G__53523;\ncontinue;\n} else {\nvar temp__5753__auto___53525 \x3d cljs.core.seq(seq__52167_53512);\nif(temp__5753__auto___53525){\nvar seq__52167_53528__$1 \x3d temp__5753__auto___53525;\nif(cljs.core.chunked_seq_QMARK_(seq__52167_53528__$1)){\nvar c__4591__auto___53529 \x3d cljs.core.chunk_first(seq__52167_53528__$1);\nvar G__53530 \x3d cljs.core.chunk_rest(seq__52167_53528__$1);\nvar G__53531 \x3d c__4591__auto___53529;\nvar G__53532 \x3d cljs.core.count(c__4591__auto___53529);\nvar G__53533 \x3d (0);\nseq__52167_53512 \x3d G__53530;\nchunk__52168_53513 \x3d G__53531;\ncount__52169_53514 \x3d G__53532;\ni__52170_53515 \x3d G__53533;\ncontinue;\n} else {\nvar v_53535 \x3d cljs.core.first(seq__52167_53528__$1);\ncljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vals,v_53535);\n\n\nvar G__53536 \x3d cljs.core.next(seq__52167_53528__$1);\nvar G__53537 \x3d null;\nvar G__53538 \x3d (0);\nvar G__53539 \x3d (0);\nseq__52167_53512 \x3d G__53536;\nchunk__52168_53513 \x3d G__53537;\ncount__52169_53514 \x3d G__53538;\ni__52170_53515 \x3d G__53539;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\nvar G__53541 \x3d vals;\nvals \x3d G__53541;\ncontinue;\n} else {\nif(edamame.impl.parser.non_match_QMARK_(next_val)){\nvar G__53542 \x3d vals;\nvals \x3d G__53542;\ncontinue;\n} else {\nvar G__53543 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(vals,next_val);\nvals \x3d G__53543;\ncontinue;\n\n}\n}\n}\n}\nbreak;\n}\n}));\n\n(edamame.impl.parser.parse_to_delimiter.cljs$lang$maxFixedArity \x3d 4);\n\nedamame.impl.parser.parse_list \x3d (function edamame$impl$parser$parse_list(ctx,reader){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.list,edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22)\x22));\n});\n/**\n * Modeled after tools.reader/read-regex.\n */\nedamame.impl.parser.read_regex_pattern \x3d (function edamame$impl$parser$read_regex_pattern(ctx,reader){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar sb \x3d (new goog.string.StringBuffer());\nvar ch \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nwhile(true){\nif((\x22\\\x22\x22 \x3d\x3d\x3d ch)){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb);\n} else {\nif((ch \x3d\x3d null)){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Error while parsing regex\x22);\n} else {\nsb.append(ch);\n\nif((\x22\\\\\x22 \x3d\x3d\x3d ch)){\nvar ch_53548__$1 \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif((ch_53548__$1 \x3d\x3d null)){\nedamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Error while parsing regex\x22);\n} else {\n}\n\nsb.append(ch_53548__$1);\n} else {\n}\n\nvar G__53567 \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nch \x3d G__53567;\ncontinue;\n}\n}\nbreak;\n}\n});\nedamame.impl.parser.duplicate_keys_error \x3d (function edamame$impl$parser$duplicate_keys_error(msg,coll){\nvar duplicates \x3d (function edamame$impl$parser$duplicate_keys_error_$_duplicates(seq){\nvar iter__4564__auto__ \x3d (function edamame$impl$parser$duplicate_keys_error_$_duplicates_$_iter__52312(s__52313){\nreturn (new cljs.core.LazySeq(null,(function (){\nvar s__52313__$1 \x3d s__52313;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(s__52313__$1);\nif(temp__5753__auto__){\nvar s__52313__$2 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(s__52313__$2)){\nvar c__4562__auto__ \x3d cljs.core.chunk_first(s__52313__$2);\nvar size__4563__auto__ \x3d cljs.core.count(c__4562__auto__);\nvar b__52315 \x3d cljs.core.chunk_buffer(size__4563__auto__);\nif((function (){var i__52314 \x3d (0);\nwhile(true){\nif((i__52314 \x3c size__4563__auto__)){\nvar vec__52319 \x3d cljs.core._nth(c__4562__auto__,i__52314);\nvar id \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52319,(0),null);\nvar freq \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52319,(1),null);\nif((freq \x3e (1))){\ncljs.core.chunk_append(b__52315,id);\n\nvar G__53761 \x3d (i__52314 + (1));\ni__52314 \x3d G__53761;\ncontinue;\n} else {\nvar G__53762 \x3d (i__52314 + (1));\ni__52314 \x3d G__53762;\ncontinue;\n}\n} else {\nreturn true;\n}\nbreak;\n}\n})()){\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__52315),edamame$impl$parser$duplicate_keys_error_$_duplicates_$_iter__52312(cljs.core.chunk_rest(s__52313__$2)));\n} else {\nreturn cljs.core.chunk_cons(cljs.core.chunk(b__52315),null);\n}\n} else {\nvar vec__52332 \x3d cljs.core.first(s__52313__$2);\nvar id \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52332,(0),null);\nvar freq \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52332,(1),null);\nif((freq \x3e (1))){\nreturn cljs.core.cons(id,edamame$impl$parser$duplicate_keys_error_$_duplicates_$_iter__52312(cljs.core.rest(s__52313__$2)));\n} else {\nvar G__53766 \x3d cljs.core.rest(s__52313__$2);\ns__52313__$1 \x3d G__53766;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\nbreak;\n}\n}),null,null));\n});\nreturn iter__4564__auto__(cljs.core.frequencies(seq));\n});\nvar dups \x3d duplicates(coll);\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$5(cljs.core.str,msg,(((cljs.core.count(dups) \x3e (1)))?\x22s\x22:null),\x22: \x22,cljs.core.interpose.cljs$core$IFn$_invoke$arity$2(\x22, \x22,dups));\n});\nedamame.impl.parser.throw_dup_keys \x3d (function edamame$impl$parser$throw_dup_keys(ctx,reader,loc,kind,ks){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5(ctx,reader,edamame.impl.parser.duplicate_keys_error([clojure.string.capitalize(cljs.core.name(kind)),\x22 literal contains duplicate key\x22].join(\x27\x27),ks),null,loc);\n});\nedamame.impl.parser.parse_set \x3d (function edamame$impl$parser$parse_set(ctx,reader){\nvar start_loc \x3d edamame.impl.parser.location(reader);\nvar coll \x3d edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22}\x22);\nvar the_set \x3d cljs.core.set(coll);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(coll),cljs.core.count(the_set))){\n} else {\nedamame.impl.parser.throw_dup_keys(ctx,reader,start_loc,new cljs.core.Keyword(null,\x22set\x22,\x22set\x22,304602554),coll);\n}\n\nreturn the_set;\n});\nedamame.impl.parser.parse_first_matching_condition \x3d (function edamame$impl$parser$parse_first_matching_condition(ctx,reader){\nvar features \x3d new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336).cljs$core$IFn$_invoke$arity$1(ctx);\nvar match \x3d edamame.impl.parser.non_match;\nwhile(true){\nvar k \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(edamame.impl.parser.kw_identical_QMARK_(k,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803))){\nreturn match;\n} else {\nvar next_is_match_QMARK_ \x3d ((edamame.impl.parser.non_match_QMARK_(match)) \x26\x26 (((cljs.core.contains_QMARK_(features,k)) || (edamame.impl.parser.kw_identical_QMARK_(k,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328))))));\nif(next_is_match_QMARK_){\nvar match__$1 \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22suppress\x22,\x22edamame.impl.parser/suppress\x22,1718484755),true);\nwhile(true){\nvar next_val_53771 \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx__$1,reader) : edamame.impl.parser.parse_next.call(null,ctx__$1,reader));\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),next_val_53771)){\n} else {\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006),next_val_53771)){\nvar delimiter_53775 \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803).cljs$core$IFn$_invoke$arity$1(ctx__$1);\nvar map__52390_53776 \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx__$1);\nvar map__52390_53777__$1 \x3d cljs.core.__destructure_map(map__52390_53776);\nvar row_53778 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52390_53777__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col_53779 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52390_53777__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nvar char_53780 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52390_53777__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nedamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4(ctx__$1,reader,[\x22EOF while reading, expected \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(delimiter_53775),\x22 to match \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(char_53780),\x22 at [\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(row_53778),\x22,\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(col_53779),\x22]\x22].join(\x27\x27),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22edamame\x22,\x22expected-delimiter\x22,\x22edamame/expected-delimiter\x22,93379254),cljs.core.str.cljs$core$IFn$_invoke$arity$1(delimiter_53775),new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter\x22,\x22edamame/opened-delimiter\x22,-1906008305),cljs.core.str.cljs$core$IFn$_invoke$arity$1(char_53780)], null));\n} else {\ncontinue;\n}\n}\nbreak;\n}\n\nreturn match__$1;\n} else {\nvar G__52391_53785 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22suppress\x22,\x22edamame.impl.parser/suppress\x22,1718484755),true);\nvar G__52392_53786 \x3d reader;\n(edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(G__52391_53785,G__52392_53786) : edamame.impl.parser.parse_next.call(null,G__52391_53785,G__52392_53786));\n\nvar G__53787 \x3d match;\nmatch \x3d G__53787;\ncontinue;\n}\n}\nbreak;\n}\n});\nedamame.impl.parser.parse_reader_conditional \x3d (function edamame$impl$parser$parse_reader_conditional(ctx,reader){\nedamame.impl.parser.skip_whitespace(ctx,reader);\n\nvar opt \x3d new cljs.core.Keyword(null,\x22read-cond\x22,\x22read-cond\x22,1056899244).cljs$core$IFn$_invoke$arity$1(ctx);\nvar splice_QMARK_ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22@\x22,reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null));\nif(splice_QMARK_){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n} else {\n}\n\nedamame.impl.parser.skip_whitespace(ctx,reader);\n\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(null,\x22preserve\x22,\x22preserve\x22,1276846509),opt)){\nreturn cljs.tools.reader.impl.utils.reader_conditional((edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader)),splice_QMARK_);\n} else {\nif(cljs.core.fn_QMARK_(opt)){\nvar G__52405 \x3d cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$4((edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader)),cljs.core.assoc,new cljs.core.Keyword(\x22edamame\x22,\x22read-cond-splicing\x22,\x22edamame/read-cond-splicing\x22,-1992728777),splice_QMARK_);\nreturn (opt.cljs$core$IFn$_invoke$arity$1 ? opt.cljs$core$IFn$_invoke$arity$1(G__52405) : opt.call(null,G__52405));\n} else {\nvar row \x3d reader.cljs$tools$reader$reader_types$IndexingReader$get_line_number$arity$1(null);\nvar col \x3d reader.cljs$tools$reader$reader_types$IndexingReader$get_column_number$arity$1(null);\nvar opened \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),\x22)\x22),new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586),opened,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),row,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),col], null));\nvar match \x3d edamame.impl.parser.parse_first_matching_condition(ctx__$1,reader);\nif(edamame.impl.parser.non_match_QMARK_(match)){\nreturn reader;\n} else {\nif(splice_QMARK_){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(match,(function (p1__52393_SHARP_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__52393_SHARP_,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22cond-splice\x22,\x22edamame.impl.parser/cond-splice\x22,1534599765),true);\n}));\n} else {\nreturn match;\n\n}\n}\n\n}\n}\n});\nedamame.impl.parser.get_auto_resolve \x3d (function edamame$impl$parser$get_auto_resolve(var_args){\nvar G__52408 \x3d arguments.length;\nswitch (G__52408) {\ncase 3:\nreturn edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,reader,next_val){\nreturn edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$4(ctx,reader,next_val,null);\n}));\n\n(edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$4 \x3d (function (ctx,reader,next_val,msg){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22auto-resolve\x22,\x22auto-resolve\x22,1851201983).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreturn v;\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4(ctx,reader,(function (){var or__4160__auto__ \x3d msg;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn \x22Use `:auto-resolve` to resolve aliases.\x22;\n}\n})(),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22expr\x22,\x22expr\x22,745722291),[\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(next_val)].join(\x27\x27)], null));\n}\n}));\n\n(edamame.impl.parser.get_auto_resolve.cljs$lang$maxFixedArity \x3d 4);\n\n/**\n * Returns namespace for given alias.\n */\nedamame.impl.parser.auto_resolve \x3d (function edamame$impl$parser$auto_resolve(var_args){\nvar G__52428 \x3d arguments.length;\nswitch (G__52428) {\ncase 5:\nreturn edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 6:\nreturn edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$6((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),(arguments[(5)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$5 \x3d (function (ctx,m,kns,reader,next_val){\nreturn edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$6(ctx,m,kns,reader,next_val,null);\n}));\n\n(edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$6 \x3d (function (ctx,m,kns,reader,next_val,msg){\nvar temp__5751__auto__ \x3d (m.cljs$core$IFn$_invoke$arity$1 ? m.cljs$core$IFn$_invoke$arity$1(kns) : m.call(null,kns));\nif(cljs.core.truth_(temp__5751__auto__)){\nvar kns__$1 \x3d temp__5751__auto__;\nreturn kns__$1;\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$4(ctx,reader,(function (){var or__4160__auto__ \x3d msg;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn [\x22Alias `\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(kns)),\x22` not found in `:auto-resolve`\x22].join(\x27\x27);\n}\n})(),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22expr\x22,\x22expr\x22,745722291),[\x22:\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(next_val)].join(\x27\x27)], null));\n}\n}));\n\n(edamame.impl.parser.auto_resolve.cljs$lang$maxFixedArity \x3d 6);\n\nedamame.impl.parser.parse_namespaced_map \x3d (function edamame$impl$parser$parse_namespaced_map(ctx,reader){\nvar auto_resolved_QMARK_ \x3d (((\x22:\x22 \x3d\x3d\x3d reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null)))?(function (){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn true;\n})()\n:null);\nvar current_ns_QMARK_ \x3d (cljs.core.truth_(auto_resolved_QMARK_)?(\x22{\x22 \x3d\x3d\x3d reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null)):null);\nvar prefix \x3d (cljs.core.truth_(auto_resolved_QMARK_)?(cljs.core.truth_(current_ns_QMARK_)?null:edamame.impl.parser.edn_read(ctx,reader)):edamame.impl.parser.edn_read(ctx,reader));\nvar the_map \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.truth_(auto_resolved_QMARK_)){\nvar ns \x3d (cljs.core.truth_(current_ns_QMARK_)?new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603):cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(prefix)));\nvar f \x3d edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$3(ctx,reader,ns);\nvar resolved_ns \x3d edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$5(ctx,f,ns,reader,prefix);\nreturn cljs.core.zipmap(cljs.tools.reader.impl.utils.namespace_keys(cljs.core.str.cljs$core$IFn$_invoke$arity$1(resolved_ns),cljs.core.keys(the_map)),cljs.core.vals(the_map));\n} else {\nvar resolved_ns \x3d cljs.core.name(prefix);\nreturn cljs.core.zipmap(cljs.tools.reader.impl.utils.namespace_keys(resolved_ns,cljs.core.keys(the_map)),cljs.core.vals(the_map));\n}\n});\nedamame.impl.parser.parse_sharp \x3d (function edamame$impl$parser$parse_sharp(ctx,reader){\nvar c \x3d reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\nvar G__52457 \x3d c;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__52457)){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Unexpected EOF.\x22);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22!\x22,G__52457)){\nedamame.impl.parser.parse_comment(reader);\n\nreturn reader;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\\\x22\x22,G__52457)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nvar pat \x3d edamame.impl.parser.read_regex_pattern(ctx,reader);\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(pat) : v.call(null,pat));\n} else {\nreturn cljs.core.re_pattern(pat);\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Regex not allowed. Use the `:regex` option\x22);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\x27\x22,G__52457)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006),next_val)){\nedamame.impl.parser.throw_eof_while_reading(ctx,reader);\n} else {\n}\n\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(next_val) : v.call(null,next_val));\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),(new cljs.core.List(null,next_val,null,(1),null)),(2),null));\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Var literal not allowed. Use the `:var` option\x22);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22(\x22,G__52457)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nvar fn_expr \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(fn_expr) : v.call(null,fn_expr));\n} else {\nreturn edamame.impl.read_fn.read_fn(fn_expr);\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Function literal not allowed. Use the `:fn` option\x22);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22:\x22,G__52457)){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn edamame.impl.parser.parse_namespaced_map(ctx,reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22{\x22,G__52457)){\nreturn edamame.impl.parser.parse_set(ctx,reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\x3d\x22,G__52457)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(next_val) : v.call(null,next_val));\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22read-eval\x22,\x22read-eval\x22,-865701837,null),(new cljs.core.List(null,next_val,null,(1),null)),(2),null));\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Read-eval not allowed. Use the `:read-eval` option\x22);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22?\x22,G__52457)){\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22read-cond\x22,\x22read-cond\x22,1056899244).cljs$core$IFn$_invoke$arity$1(ctx))){\n} else {\nedamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Conditional read not allowed.\x22);\n}\n\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn edamame.impl.parser.parse_reader_conditional(ctx,reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22_\x22,G__52457)){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\n(edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\n\nreturn reader;\n} else {\nif(edamame.impl.parser.dispatch_macro_QMARK_(c)){\nreader.cljs$tools$reader$reader_types$IPushbackReader$unread$arity$2(null,\x22#\x22);\n\nreturn edamame.impl.parser.edn_read(ctx,reader);\n} else {\nvar suppress_QMARK_ \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22suppress\x22,\x22edamame.impl.parser/suppress\x22,1718484755).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(suppress_QMARK_)){\n(edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\n\nreturn (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\n} else {\nvar sym \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nvar data \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nvar f \x3d (function (){var or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar readers \x3d temp__5753__auto__;\nreturn (readers.cljs$core$IFn$_invoke$arity$1 ? readers.cljs$core$IFn$_invoke$arity$1(sym) : readers.call(null,sym));\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar fexpr__52497 \x3d cljs.core.deref(cljs.reader._STAR_tag_table_STAR_);\nreturn (fexpr__52497.cljs$core$IFn$_invoke$arity$1 ? fexpr__52497.cljs$core$IFn$_invoke$arity$1(sym) : fexpr__52497.call(null,sym));\n}\n})();\nif(cljs.core.truth_(f)){\nreturn (f.cljs$core$IFn$_invoke$arity$1 ? f.cljs$core$IFn$_invoke$arity$1(data) : f.call(null,data));\n} else {\nthrow (new Error([\x22No reader function for tag \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)].join(\x27\x27)));\n}\n}\n}\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nedamame.impl.parser.throw_odd_map \x3d (function edamame$impl$parser$throw_odd_map(ctx,reader,loc,elements){\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5(ctx,reader,[\x22The map literal starting with \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.impl.inspect.inspect.cljs$core$IFn$_invoke$arity$1(cljs.core.first(elements))),\x22 contains \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.count(elements)),\x22 form(s). Map literals must contain an even number of forms.\x22].join(\x27\x27),null,loc);\n});\nedamame.impl.parser.parse_map \x3d (function edamame$impl$parser$parse_map(ctx,reader){\nvar start_loc \x3d edamame.impl.parser.location(reader);\nvar elements \x3d edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22}\x22);\nvar c \x3d cljs.core.count(elements);\nif((c \x3e (0))){\nif(cljs.core.odd_QMARK_(c)){\nedamame.impl.parser.throw_odd_map(ctx,reader,start_loc,elements);\n} else {\n}\n\nvar ks_53804 \x3d cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),elements);\nif(cljs.core.truth_(cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.distinct_QMARK_,ks_53804))){\n} else {\nedamame.impl.parser.throw_dup_keys(ctx,reader,start_loc,new cljs.core.Keyword(null,\x22map\x22,\x22map\x22,1371690461),ks_53804);\n}\n} else {\n}\n\nif((c \x3c\x3d (16))){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,elements);\n} else {\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,elements);\n}\n});\nedamame.impl.parser.parse_keyword \x3d (function edamame$impl$parser$parse_keyword(ctx,reader){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar init_c \x3d reader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\nif(cljs.core.truth_(edamame.impl.parser.whitespace_QMARK_(init_c))){\nedamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Invalid token: :\x22);\n} else {\n}\n\nvar token \x3d (edamame.impl.parser.read_token.cljs$core$IFn$_invoke$arity$3 ? edamame.impl.parser.read_token.cljs$core$IFn$_invoke$arity$3(reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),init_c) : edamame.impl.parser.read_token.call(null,reader,new cljs.core.Keyword(null,\x22keyword\x22,\x22keyword\x22,811389747),init_c));\nvar auto_resolve_QMARK_ \x3d (\x22:\x22 \x3d\x3d\x3d token.charAt((0)));\nif(auto_resolve_QMARK_){\nvar token__$1 \x3d ((auto_resolve_QMARK_)?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(token,(1)):token);\nvar vec__52528 \x3d (edamame.impl.parser.parse_symbol.cljs$core$IFn$_invoke$arity$1 ? edamame.impl.parser.parse_symbol.cljs$core$IFn$_invoke$arity$1(token__$1) : edamame.impl.parser.parse_symbol.call(null,token__$1));\nvar token_ns \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52528,(0),null);\nvar token_name \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52528,(1),null);\nif(cljs.core.truth_(token_ns)){\nvar f \x3d edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$3(ctx,reader,token__$1);\nvar kns \x3d edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$5(ctx,f,cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(token_ns),reader,token_ns);\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(kns),token_name);\n} else {\nvar f \x3d edamame.impl.parser.get_auto_resolve.cljs$core$IFn$_invoke$arity$4(ctx,reader,token__$1,\x22Use `:auto-resolve` + `:current` to resolve current namespace.\x22);\nvar kns \x3d edamame.impl.parser.auto_resolve.cljs$core$IFn$_invoke$arity$6(ctx,f,new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),reader,token__$1,\x22Use `:auto-resolve` + `:current` to resolve current namespace.\x22);\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(kns),token_name);\n}\n} else {\nreturn cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(token);\n}\n});\n/**\n * Resolves syntactical sugar in metadata\n */\nedamame.impl.parser.desugar_meta \x3d (function edamame$impl$parser$desugar_meta(var_args){\nvar G__52553 \x3d arguments.length;\nswitch (G__52553) {\ncase 1:\nreturn edamame.impl.parser.desugar_meta.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn edamame.impl.parser.desugar_meta.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(edamame.impl.parser.desugar_meta.cljs$core$IFn$_invoke$arity$1 \x3d (function (f){\nif((f instanceof cljs.core.Keyword)){\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([f,true]);\n} else {\nif((f instanceof cljs.core.Symbol)){\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),f], null);\n} else {\nif(typeof f \x3d\x3d\x3d \x27string\x27){\nreturn new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),f], null);\n} else {\nreturn f;\n\n}\n}\n}\n}));\n\n(edamame.impl.parser.desugar_meta.cljs$core$IFn$_invoke$arity$2 \x3d (function (f,postprocess){\nif((f instanceof cljs.core.Keyword)){\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([(postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(f) : postprocess.call(null,f)),(postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(true) : postprocess.call(null,true))]);\n} else {\nif((f instanceof cljs.core.Symbol)){\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([(postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223)) : postprocess.call(null,new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223))),(postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(f) : postprocess.call(null,f))]);\n} else {\nif(typeof f \x3d\x3d\x3d \x27string\x27){\nreturn cljs.core.PersistentArrayMap.createAsIfByAssoc([(postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223)) : postprocess.call(null,new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223))),(postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(f) : postprocess.call(null,f))]);\n} else {\nreturn f;\n\n}\n}\n}\n}));\n\n(edamame.impl.parser.desugar_meta.cljs$lang$maxFixedArity \x3d 2);\n\nedamame.impl.parser.dispatch \x3d (function edamame$impl$parser$dispatch(ctx,reader,c){\nvar sharp_QMARK_ \x3d cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22#\x22,c);\nif(sharp_QMARK_){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn edamame.impl.parser.parse_sharp(ctx,reader);\n} else {\nvar G__52577 \x3d c;\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(null,G__52577)){\nreturn new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22@\x22,G__52577)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(next_val) : v.call(null,next_val));\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22deref\x22,\x22clojure.core/deref\x22,188719157,null),(new cljs.core.List(null,next_val,null,(1),null)),(2),null));\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Deref not allowed. Use the `:deref` option\x22);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22`\x22,G__52577)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.fn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(next_val) : v.call(null,next_val));\n} else {\nvar gensyms \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22gensyms\x22,\x22gensyms\x22,248713782),gensyms);\nvar ret \x3d edamame.impl.syntax_quote.syntax_quote(ctx__$1,reader,next_val);\nreturn ret;\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Syntax quote not allowed. Use the `:syntax-quote` option\x22);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22\x27\x22,G__52577)){\nvar temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006),next_val)){\nedamame.impl.parser.throw_eof_while_reading(ctx,reader);\n} else {\n}\n\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(next_val) : v.call(null,next_val));\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),(new cljs.core.List(null,next_val,null,(1),null)),(2),null));\n}\n} else {\nreturn edamame.impl.parser.edn_read(ctx,reader);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22(\x22,G__52577)){\nreturn edamame.impl.parser.parse_list(ctx,reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22)\x22,G__52577)){\nvar expected \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(expected,c)){\nvar loc \x3d edamame.impl.parser.location(reader);\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5(ctx,reader,[\x22Unmatched delimiter: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(c),(cljs.core.truth_(expected)?[\x22, expected: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expected),(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar map__52670 \x3d temp__5753__auto__;\nvar map__52670__$1 \x3d cljs.core.__destructure_map(map__52670);\nvar row \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52670__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52670__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nvar char$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52670__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nreturn [\x22 to match \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(char$),\x22 at \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [row,col], null))].join(\x27\x27);\n} else {\nreturn null;\n}\n})()].join(\x27\x27):null)].join(\x27\x27),(function (){var map__52680 \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx);\nvar map__52680__$1 \x3d cljs.core.__destructure_map(map__52680);\nvar char$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52680__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nvar row \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52680__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52680__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter\x22,\x22edamame/opened-delimiter\x22,-1906008305),cljs.core.str.cljs$core$IFn$_invoke$arity$1(char$),new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter-loc\x22,\x22edamame/opened-delimiter-loc\x22,443885208),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),row,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),col], null),new cljs.core.Keyword(\x22edamame\x22,\x22expected-delimiter\x22,\x22edamame/expected-delimiter\x22,93379254),cljs.core.str.cljs$core$IFn$_invoke$arity$1(expected)], null);\n})(),loc);\n} else {\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22:\x22,G__52577)){\nreturn edamame.impl.parser.parse_keyword(ctx,reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22;\x22,G__52577)){\nreturn edamame.impl.parser.parse_comment(reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22[\x22,G__52577)){\nreturn edamame.impl.parser.parse_to_delimiter.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22]\x22);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22{\x22,G__52577)){\nreturn edamame.impl.parser.parse_map(ctx,reader);\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22]\x22,G__52577)){\nvar expected \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(expected,c)){\nvar loc \x3d edamame.impl.parser.location(reader);\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5(ctx,reader,[\x22Unmatched delimiter: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(c),(cljs.core.truth_(expected)?[\x22, expected: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expected),(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar map__52796 \x3d temp__5753__auto__;\nvar map__52796__$1 \x3d cljs.core.__destructure_map(map__52796);\nvar row \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52796__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52796__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nvar char$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52796__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nreturn [\x22 to match \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(char$),\x22 at \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [row,col], null))].join(\x27\x27);\n} else {\nreturn null;\n}\n})()].join(\x27\x27):null)].join(\x27\x27),(function (){var map__52809 \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx);\nvar map__52809__$1 \x3d cljs.core.__destructure_map(map__52809);\nvar char$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52809__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nvar row \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52809__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52809__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter\x22,\x22edamame/opened-delimiter\x22,-1906008305),cljs.core.str.cljs$core$IFn$_invoke$arity$1(char$),new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter-loc\x22,\x22edamame/opened-delimiter-loc\x22,443885208),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),row,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),col], null),new cljs.core.Keyword(\x22edamame\x22,\x22expected-delimiter\x22,\x22edamame/expected-delimiter\x22,93379254),cljs.core.str.cljs$core$IFn$_invoke$arity$1(expected)], null);\n})(),loc);\n} else {\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22}\x22,G__52577)){\nvar expected \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.not_EQ_.cljs$core$IFn$_invoke$arity$2(expected,c)){\nvar loc \x3d edamame.impl.parser.location(reader);\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$5(ctx,reader,[\x22Unmatched delimiter: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(c),(cljs.core.truth_(expected)?[\x22, expected: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expected),(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar map__52851 \x3d temp__5753__auto__;\nvar map__52851__$1 \x3d cljs.core.__destructure_map(map__52851);\nvar row \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52851__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52851__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nvar char$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52851__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nreturn [\x22 to match \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(char$),\x22 at \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [row,col], null))].join(\x27\x27);\n} else {\nreturn null;\n}\n})()].join(\x27\x27):null)].join(\x27\x27),(function (){var map__52852 \x3d new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22opened-delimiter\x22,\x22edamame.impl.parser/opened-delimiter\x22,1199661648).cljs$core$IFn$_invoke$arity$1(ctx);\nvar map__52852__$1 \x3d cljs.core.__destructure_map(map__52852);\nvar char$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52852__$1,new cljs.core.Keyword(null,\x22char\x22,\x22char\x22,-641587586));\nvar row \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52852__$1,new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521));\nvar col \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__52852__$1,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084));\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter\x22,\x22edamame/opened-delimiter\x22,-1906008305),cljs.core.str.cljs$core$IFn$_invoke$arity$1(char$),new cljs.core.Keyword(\x22edamame\x22,\x22opened-delimiter-loc\x22,\x22edamame/opened-delimiter-loc\x22,443885208),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521),row,new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084),col], null),new cljs.core.Keyword(\x22edamame\x22,\x22expected-delimiter\x22,\x22edamame/expected-delimiter\x22,93379254),cljs.core.str.cljs$core$IFn$_invoke$arity$1(expected)], null);\n})(),loc);\n} else {\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nreturn new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803);\n}\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22^\x22,G__52577)){\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar meta_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3(ctx,reader,true) : edamame.impl.parser.parse_next.call(null,ctx,reader,true));\nvar val_val \x3d cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$3((edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader)),cljs.core.merge,meta_val);\nreturn val_val;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22~\x22,G__52577)){\nvar temp__5751__auto__ \x3d (function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(and__4149__auto__)){\nvar or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn true;\n}\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar nc \x3d reader.cljs$tools$reader$reader_types$Reader$peek_char$arity$1(null);\nif((nc \x3d\x3d\x3d \x22@\x22)){\nvar temp__5751__auto____$1 \x3d (function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(and__4149__auto__)){\nvar or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn true;\n}\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar v__$1 \x3d temp__5751__auto____$1;\nreader.cljs$tools$reader$reader_types$Reader$read_char$arity$1(null);\n\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.ifn_QMARK_(v__$1)){\nreturn (v__$1.cljs$core$IFn$_invoke$arity$1 ? v__$1.cljs$core$IFn$_invoke$arity$1(next_val) : v__$1.call(null,next_val));\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote-splicing\x22,\x22clojure.core/unquote-splicing\x22,-552003150,null),(new cljs.core.List(null,next_val,null,(1),null)),(2),null));\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Syntax unquote splice not allowed. Use the `:syntax-quote` option\x22);\n}\n} else {\nvar next_val \x3d (edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 ? edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,reader) : edamame.impl.parser.parse_next.call(null,ctx,reader));\nif(cljs.core.ifn_QMARK_(v)){\nreturn (v.cljs$core$IFn$_invoke$arity$1 ? v.cljs$core$IFn$_invoke$arity$1(next_val) : v.call(null,next_val));\n} else {\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote\x22,\x22clojure.core/unquote\x22,843087510,null),(new cljs.core.List(null,next_val,null,(1),null)),(2),null));\n}\n}\n} else {\nreturn edamame.impl.parser.throw_reader.cljs$core$IFn$_invoke$arity$3(ctx,reader,\x22Syntax unquote not allowed. Use the `:syntax-unquote` option\x22);\n}\n} else {\nreturn edamame.impl.parser.edn_read(ctx,reader);\n\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n});\nedamame.impl.parser.iobj_QMARK_ \x3d (function edamame$impl$parser$iobj_QMARK_(obj){\nif((!((obj \x3d\x3d null)))){\nif((((obj.cljs$lang$protocol_mask$partition0$ \x26 (262144))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IWithMeta$)))){\nreturn true;\n} else {\nif((!obj.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IWithMeta,obj);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IWithMeta,obj);\n}\n});\nedamame.impl.parser.parse_next \x3d (function edamame$impl$parser$parse_next(var_args){\nvar G__52974 \x3d arguments.length;\nswitch (G__52974) {\ncase 2:\nreturn edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,reader){\nreturn edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3(ctx,reader,null);\n}));\n\n(edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,reader,desugar){\nwhile(true){\nvar temp__5751__auto__ \x3d (function (){var and__4149__auto__ \x3d edamame.impl.parser.skip_whitespace(ctx,reader);\nif(cljs.core.truth_(and__4149__auto__)){\nreturn cljs.tools.reader.reader_types.peek_char(reader);\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(temp__5751__auto__)){\nvar c \x3d temp__5751__auto__;\nvar loc \x3d edamame.impl.parser.location(reader);\nvar log_QMARK_ \x3d new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539).cljs$core$IFn$_invoke$arity$1(ctx);\nvar buf \x3d ((function (ctx,reader,desugar,loc,log_QMARK_,c,temp__5751__auto__){\nreturn (function (){\nreturn cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22buffer\x22,\x22buffer\x22,617295198).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(reader.frames)));\n});})(ctx,reader,desugar,loc,log_QMARK_,c,temp__5751__auto__))\n;\nvar offset \x3d (cljs.core.truth_(log_QMARK_)?((buf()).length):null);\nvar obj \x3d (cljs.core.truth_(log_QMARK_)?cljs.tools.reader.reader_types.log_source_STAR_(reader,((function (ctx,reader,desugar,loc,log_QMARK_,buf,offset,c,temp__5751__auto__){\nreturn (function (){\nreturn edamame.impl.parser.dispatch(ctx,reader,c);\n});})(ctx,reader,desugar,loc,log_QMARK_,buf,offset,c,temp__5751__auto__))\n):edamame.impl.parser.dispatch(ctx,reader,c));\nif((reader \x3d\x3d\x3d obj)){\nvar G__53836 \x3d ctx;\nvar G__53837 \x3d reader;\nvar G__53838 \x3d desugar;\nctx \x3d G__53836;\nreader \x3d G__53837;\ndesugar \x3d G__53838;\ncontinue;\n} else {\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),obj)){\nreturn obj;\n} else {\nvar postprocess \x3d new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881).cljs$core$IFn$_invoke$arity$1(ctx);\nvar location_QMARK_ \x3d new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086).cljs$core$IFn$_invoke$arity$1(ctx);\nvar end_loc_QMARK_ \x3d new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467).cljs$core$IFn$_invoke$arity$1(ctx);\nvar iobj_QMARK__QMARK_ \x3d edamame.impl.parser.iobj_QMARK_(obj);\nvar src \x3d (cljs.core.truth_(log_QMARK_)?cljs.core.subs.cljs$core$IFn$_invoke$arity$2(buf(),offset).trim():null);\nvar loc_QMARK_ \x3d (function (){var or__4160__auto__ \x3d ((iobj_QMARK__QMARK_)?(function (){var or__4160__auto__ \x3d cljs.core.not(location_QMARK_);\nif(or__4160__auto__){\nreturn or__4160__auto__;\n} else {\nreturn (location_QMARK_.cljs$core$IFn$_invoke$arity$1 ? location_QMARK_.cljs$core$IFn$_invoke$arity$1(obj) : location_QMARK_.call(null,obj));\n}\n})():false);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn postprocess;\n}\n})();\nvar end_loc \x3d (cljs.core.truth_((function (){var and__4149__auto__ \x3d loc_QMARK_;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn end_loc_QMARK_;\n} else {\nreturn and__4149__auto__;\n}\n})())?edamame.impl.parser.location(reader):null);\nvar row \x3d (cljs.core.truth_(loc_QMARK_)?loc.row:null);\nvar end_row \x3d (cljs.core.truth_(end_loc_QMARK_)?new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521).cljs$core$IFn$_invoke$arity$1(end_loc):null);\nvar col \x3d (cljs.core.truth_(loc_QMARK_)?loc.col:null);\nvar end_col \x3d (cljs.core.truth_(end_loc_QMARK_)?new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084).cljs$core$IFn$_invoke$arity$1(end_loc):null);\nvar postprocess_fn \x3d (cljs.core.truth_(postprocess)?((function (ctx,reader,desugar,postprocess,location_QMARK_,end_loc_QMARK_,iobj_QMARK__QMARK_,src,loc_QMARK_,end_loc,row,end_row,col,end_col,loc,log_QMARK_,buf,offset,obj,c,temp__5751__auto__){\nreturn (function (p1__52950_SHARP_){\nvar G__53052 \x3d (function (){var G__53053 \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),p1__52950_SHARP_], null);\nvar G__53053__$1 \x3d (cljs.core.truth_(loc_QMARK_)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53053,new cljs.core.Keyword(null,\x22loc\x22,\x22loc\x22,-584284901),(function (){var G__53055 \x3d cljs.core.PersistentArrayMap.createAsIfByAssoc([new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712).cljs$core$IFn$_invoke$arity$1(ctx),row,new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766).cljs$core$IFn$_invoke$arity$1(ctx),col]);\nif(cljs.core.truth_(end_loc_QMARK_)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(G__53055,new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680).cljs$core$IFn$_invoke$arity$1(ctx),end_row,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304).cljs$core$IFn$_invoke$arity$1(ctx),end_col], 0));\n} else {\nreturn G__53055;\n}\n})()):G__53053);\nif(cljs.core.truth_(src)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53053__$1,(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539);\n}\n})(),src);\n} else {\nreturn G__53053__$1;\n}\n})();\nreturn (postprocess.cljs$core$IFn$_invoke$arity$1 ? postprocess.cljs$core$IFn$_invoke$arity$1(G__53052) : postprocess.call(null,G__53052));\n});})(ctx,reader,desugar,postprocess,location_QMARK_,end_loc_QMARK_,iobj_QMARK__QMARK_,src,loc_QMARK_,end_loc,row,end_row,col,end_col,loc,log_QMARK_,buf,offset,obj,c,temp__5751__auto__))\n:null);\nvar obj__$1 \x3d (cljs.core.truth_(desugar)?(cljs.core.truth_(postprocess_fn)?edamame.impl.parser.desugar_meta.cljs$core$IFn$_invoke$arity$2(obj,postprocess_fn):edamame.impl.parser.desugar_meta.cljs$core$IFn$_invoke$arity$1(obj)):obj);\nvar obj__$2 \x3d (cljs.core.truth_(postprocess)?(postprocess_fn.cljs$core$IFn$_invoke$arity$1 ? postprocess_fn.cljs$core$IFn$_invoke$arity$1(obj__$1) : postprocess_fn.call(null,obj__$1)):(cljs.core.truth_(loc_QMARK_)?cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(obj__$1,((function (ctx,reader,desugar,postprocess,location_QMARK_,end_loc_QMARK_,iobj_QMARK__QMARK_,src,loc_QMARK_,end_loc,row,end_row,col,end_col,postprocess_fn,obj__$1,loc,log_QMARK_,buf,offset,obj,c,temp__5751__auto__){\nreturn (function (p1__52955_SHARP_){\nvar G__53075 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__52955_SHARP_,new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712).cljs$core$IFn$_invoke$arity$1(ctx),row),new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766).cljs$core$IFn$_invoke$arity$1(ctx),col);\nvar G__53075__$1 \x3d (cljs.core.truth_(end_loc_QMARK_)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53075,new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680).cljs$core$IFn$_invoke$arity$1(ctx),end_row),new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304).cljs$core$IFn$_invoke$arity$1(ctx),end_col):G__53075);\nif(cljs.core.truth_(src)){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53075__$1,new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542).cljs$core$IFn$_invoke$arity$1(ctx),src);\n} else {\nreturn G__53075__$1;\n}\n});})(ctx,reader,desugar,postprocess,location_QMARK_,end_loc_QMARK_,iobj_QMARK__QMARK_,src,loc_QMARK_,end_loc,row,end_row,col,end_col,postprocess_fn,obj__$1,loc,log_QMARK_,buf,offset,obj,c,temp__5751__auto__))\n):obj__$1\n));\nreturn obj__$2;\n}\n}\n} else {\nreturn new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006);\n}\nbreak;\n}\n}));\n\n(edamame.impl.parser.parse_next.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Create reader for strings.\n */\nedamame.impl.parser.string_reader \x3d (function edamame$impl$parser$string_reader(s){\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\n});\n\n/**\n* @constructor\n * @implements {cljs.core.IRecord}\n * @implements {cljs.core.IKVReduce}\n * @implements {cljs.core.IEquiv}\n * @implements {cljs.core.IHash}\n * @implements {cljs.core.ICollection}\n * @implements {cljs.core.ICounted}\n * @implements {cljs.core.ISeqable}\n * @implements {cljs.core.IMeta}\n * @implements {cljs.core.ICloneable}\n * @implements {cljs.core.IPrintWithWriter}\n * @implements {cljs.core.IIterable}\n * @implements {cljs.core.IWithMeta}\n * @implements {cljs.core.IAssociative}\n * @implements {cljs.core.IMap}\n * @implements {cljs.core.ILookup}\n*/\nedamame.impl.parser.Options \x3d (function (dispatch,deref,syntax_quote,unquote,unquote_splicing,quote,fn,var$,read_eval,regex,row_key,col_key,end_row_key,end_col_key,source,source_key,postprocess,location_QMARK_,end_location,sci,__meta,__extmap,__hash){\nthis.dispatch \x3d dispatch;\nthis.deref \x3d deref;\nthis.syntax_quote \x3d syntax_quote;\nthis.unquote \x3d unquote;\nthis.unquote_splicing \x3d unquote_splicing;\nthis.quote \x3d quote;\nthis.fn \x3d fn;\nthis.var$ \x3d var$;\nthis.read_eval \x3d read_eval;\nthis.regex \x3d regex;\nthis.row_key \x3d row_key;\nthis.col_key \x3d col_key;\nthis.end_row_key \x3d end_row_key;\nthis.end_col_key \x3d end_col_key;\nthis.source \x3d source;\nthis.source_key \x3d source_key;\nthis.postprocess \x3d postprocess;\nthis.location_QMARK_ \x3d location_QMARK_;\nthis.end_location \x3d end_location;\nthis.sci \x3d sci;\nthis.__meta \x3d __meta;\nthis.__extmap \x3d __extmap;\nthis.__hash \x3d __hash;\nthis.cljs$lang$protocol_mask$partition0$ \x3d 2230716170;\nthis.cljs$lang$protocol_mask$partition1$ \x3d 139264;\n});\n(edamame.impl.parser.Options.prototype.cljs$core$ILookup$_lookup$arity$2 \x3d (function (this__4415__auto__,k__4416__auto__){\nvar self__ \x3d this;\nvar this__4415__auto____$1 \x3d this;\nreturn this__4415__auto____$1.cljs$core$ILookup$_lookup$arity$3(null,k__4416__auto__,null);\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$ILookup$_lookup$arity$3 \x3d (function (this__4417__auto__,k53081,else__4418__auto__){\nvar self__ \x3d this;\nvar this__4417__auto____$1 \x3d this;\nvar G__53109 \x3d k53081;\nvar G__53109__$1 \x3d (((G__53109 instanceof cljs.core.Keyword))?G__53109.fqn:null);\nswitch (G__53109__$1) {\ncase \x22dispatch\x22:\nreturn self__.dispatch;\n\nbreak;\ncase \x22deref\x22:\nreturn self__.deref;\n\nbreak;\ncase \x22syntax-quote\x22:\nreturn self__.syntax_quote;\n\nbreak;\ncase \x22unquote\x22:\nreturn self__.unquote;\n\nbreak;\ncase \x22unquote-splicing\x22:\nreturn self__.unquote_splicing;\n\nbreak;\ncase \x22quote\x22:\nreturn self__.quote;\n\nbreak;\ncase \x22fn\x22:\nreturn self__.fn;\n\nbreak;\ncase \x22var\x22:\nreturn self__.var$;\n\nbreak;\ncase \x22read-eval\x22:\nreturn self__.read_eval;\n\nbreak;\ncase \x22regex\x22:\nreturn self__.regex;\n\nbreak;\ncase \x22row-key\x22:\nreturn self__.row_key;\n\nbreak;\ncase \x22col-key\x22:\nreturn self__.col_key;\n\nbreak;\ncase \x22end-row-key\x22:\nreturn self__.end_row_key;\n\nbreak;\ncase \x22end-col-key\x22:\nreturn self__.end_col_key;\n\nbreak;\ncase \x22source\x22:\nreturn self__.source;\n\nbreak;\ncase \x22source-key\x22:\nreturn self__.source_key;\n\nbreak;\ncase \x22postprocess\x22:\nreturn self__.postprocess;\n\nbreak;\ncase \x22location?\x22:\nreturn self__.location_QMARK_;\n\nbreak;\ncase \x22end-location\x22:\nreturn self__.end_location;\n\nbreak;\ncase \x22sci\x22:\nreturn self__.sci;\n\nbreak;\ndefault:\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k53081,else__4418__auto__);\n\n}\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IKVReduce$_kv_reduce$arity$3 \x3d (function (this__4434__auto__,f__4435__auto__,init__4436__auto__){\nvar self__ \x3d this;\nvar this__4434__auto____$1 \x3d this;\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3((function (ret__4437__auto__,p__53116){\nvar vec__53118 \x3d p__53116;\nvar k__4438__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53118,(0),null);\nvar v__4439__auto__ \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__53118,(1),null);\nreturn (f__4435__auto__.cljs$core$IFn$_invoke$arity$3 ? f__4435__auto__.cljs$core$IFn$_invoke$arity$3(ret__4437__auto__,k__4438__auto__,v__4439__auto__) : f__4435__auto__.call(null,ret__4437__auto__,k__4438__auto__,v__4439__auto__));\n}),init__4436__auto__,this__4434__auto____$1);\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IPrintWithWriter$_pr_writer$arity$3 \x3d (function (this__4429__auto__,writer__4430__auto__,opts__4431__auto__){\nvar self__ \x3d this;\nvar this__4429__auto____$1 \x3d this;\nvar pr_pair__4432__auto__ \x3d (function (keyval__4433__auto__){\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,cljs.core.pr_writer,\x22\x22,\x22 \x22,\x22\x22,opts__4431__auto__,keyval__4433__auto__);\n});\nreturn cljs.core.pr_sequential_writer(writer__4430__auto__,pr_pair__4432__auto__,\x22#edamame.impl.parser.Options{\x22,\x22, \x22,\x22}\x22,opts__4431__auto__,cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),self__.dispatch],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),self__.deref],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),self__.syntax_quote],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),self__.unquote],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),self__.unquote_splicing],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),self__.quote],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),self__.fn],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),self__.var$],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),self__.read_eval],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),self__.regex],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),self__.row_key],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),self__.col_key],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),self__.end_row_key],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),self__.end_col_key],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),self__.source],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),self__.source_key],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),self__.postprocess],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),self__.location_QMARK_],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),self__.end_location],null)),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218),self__.sci],null))], null),self__.__extmap));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IIterable$_iterator$arity$1 \x3d (function (G__53080){\nvar self__ \x3d this;\nvar G__53080__$1 \x3d this;\nreturn (new cljs.core.RecordIter((0),G__53080__$1,20,new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218)], null),(cljs.core.truth_(self__.__extmap)?cljs.core._iterator(self__.__extmap):cljs.core.nil_iter())));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IMeta$_meta$arity$1 \x3d (function (this__4413__auto__){\nvar self__ \x3d this;\nvar this__4413__auto____$1 \x3d this;\nreturn self__.__meta;\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$ICloneable$_clone$arity$1 \x3d (function (this__4410__auto__){\nvar self__ \x3d this;\nvar this__4410__auto____$1 \x3d this;\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,self__.__hash));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$ICounted$_count$arity$1 \x3d (function (this__4419__auto__){\nvar self__ \x3d this;\nvar this__4419__auto____$1 \x3d this;\nreturn (20 + cljs.core.count(self__.__extmap));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IHash$_hash$arity$1 \x3d (function (this__4411__auto__){\nvar self__ \x3d this;\nvar this__4411__auto____$1 \x3d this;\nvar h__4273__auto__ \x3d self__.__hash;\nif((!((h__4273__auto__ \x3d\x3d null)))){\nreturn h__4273__auto__;\n} else {\nvar h__4273__auto____$1 \x3d (function (coll__4412__auto__){\nreturn (-1037796634 ^ cljs.core.hash_unordered_coll(coll__4412__auto__));\n})(this__4411__auto____$1);\n(self__.__hash \x3d h__4273__auto____$1);\n\nreturn h__4273__auto____$1;\n}\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IEquiv$_equiv$arity$2 \x3d (function (this53082,other53083){\nvar self__ \x3d this;\nvar this53082__$1 \x3d this;\nreturn (((!((other53083 \x3d\x3d null)))) \x26\x26 ((this53082__$1.constructor \x3d\x3d\x3d other53083.constructor)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.dispatch,other53083.dispatch)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.deref,other53083.deref)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.syntax_quote,other53083.syntax_quote)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.unquote,other53083.unquote)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.unquote_splicing,other53083.unquote_splicing)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.quote,other53083.quote)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.fn,other53083.fn)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.var,other53083.var)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.read_eval,other53083.read_eval)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.regex,other53083.regex)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.row_key,other53083.row_key)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.col_key,other53083.col_key)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.end_row_key,other53083.end_row_key)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.end_col_key,other53083.end_col_key)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.source,other53083.source)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.source_key,other53083.source_key)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.postprocess,other53083.postprocess)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.location_QMARK_,other53083.location_QMARK_)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.end_location,other53083.end_location)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.sci,other53083.sci)) \x26\x26 (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(this53082__$1.__extmap,other53083.__extmap)));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IMap$_dissoc$arity$2 \x3d (function (this__4424__auto__,k__4425__auto__){\nvar self__ \x3d this;\nvar this__4424__auto____$1 \x3d this;\nif(cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 20, [new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),null,new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),null,new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),null,new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),null,new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),null,new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),null,new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),null,new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),null,new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),null,new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),null,new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),null,new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),null,new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),null,new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),null,new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),null,new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),null,new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),null,new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),null,new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218),null,new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),null], null), null),k__4425__auto__)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(cljs.core._with_meta(cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,this__4424__auto____$1),self__.__meta),k__4425__auto__);\n} else {\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,cljs.core.not_empty(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(self__.__extmap,k__4425__auto__)),null));\n}\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IAssociative$_assoc$arity$3 \x3d (function (this__4422__auto__,k__4423__auto__,G__53080){\nvar self__ \x3d this;\nvar this__4422__auto____$1 \x3d this;\nvar pred__53187 \x3d cljs.core.keyword_identical_QMARK_;\nvar expr__53188 \x3d k__4423__auto__;\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),expr__53188)))){\nreturn (new edamame.impl.parser.Options(G__53080,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,G__53080,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,G__53080,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,G__53080,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,G__53080,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,G__53080,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,G__53080,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,G__53080,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,G__53080,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,G__53080,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,G__53080,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,G__53080,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,G__53080,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,G__53080,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,G__53080,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,G__53080,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,G__53080,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,G__53080,self__.end_location,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,G__53080,self__.sci,self__.__meta,self__.__extmap,null));\n} else {\nif(cljs.core.truth_((pred__53187.cljs$core$IFn$_invoke$arity$2 ? pred__53187.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218),expr__53188) : pred__53187.call(null,new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218),expr__53188)))){\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,G__53080,self__.__meta,self__.__extmap,null));\n} else {\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,self__.__meta,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(self__.__extmap,k__4423__auto__,G__53080),null));\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$ISeqable$_seq$arity$1 \x3d (function (this__4427__auto__){\nvar self__ \x3d this;\nvar this__4427__auto____$1 \x3d this;\nreturn cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, [(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),self__.dispatch,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),self__.deref,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),self__.syntax_quote,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),self__.unquote,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),self__.unquote_splicing,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),self__.quote,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),self__.fn,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),self__.var$,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),self__.read_eval,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),self__.regex,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),self__.row_key,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),self__.col_key,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),self__.end_row_key,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),self__.end_col_key,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),self__.source,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),self__.source_key,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),self__.postprocess,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),self__.location_QMARK_,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),self__.end_location,null)),(new cljs.core.MapEntry(new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218),self__.sci,null))], null),self__.__extmap));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$IWithMeta$_with_meta$arity$2 \x3d (function (this__4414__auto__,G__53080){\nvar self__ \x3d this;\nvar this__4414__auto____$1 \x3d this;\nreturn (new edamame.impl.parser.Options(self__.dispatch,self__.deref,self__.syntax_quote,self__.unquote,self__.unquote_splicing,self__.quote,self__.fn,self__.var$,self__.read_eval,self__.regex,self__.row_key,self__.col_key,self__.end_row_key,self__.end_col_key,self__.source,self__.source_key,self__.postprocess,self__.location_QMARK_,self__.end_location,self__.sci,G__53080,self__.__extmap,self__.__hash));\n}));\n\n(edamame.impl.parser.Options.prototype.cljs$core$ICollection$_conj$arity$2 \x3d (function (this__4420__auto__,entry__4421__auto__){\nvar self__ \x3d this;\nvar this__4420__auto____$1 \x3d this;\nif(cljs.core.vector_QMARK_(entry__4421__auto__)){\nreturn this__4420__auto____$1.cljs$core$IAssociative$_assoc$arity$3(null,cljs.core._nth(entry__4421__auto__,(0)),cljs.core._nth(entry__4421__auto__,(1)));\n} else {\nreturn cljs.core.reduce.cljs$core$IFn$_invoke$arity$3(cljs.core._conj,this__4420__auto____$1,entry__4421__auto__);\n}\n}));\n\n(edamame.impl.parser.Options.getBasis \x3d (function (){\nreturn new cljs.core.PersistentVector(null, 20, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22dispatch\x22,\x22dispatch\x22,-1335098760,null),new cljs.core.Symbol(null,\x22deref\x22,\x22deref\x22,1494944732,null),new cljs.core.Symbol(null,\x22syntax-quote\x22,\x22syntax-quote\x22,407366680,null),new cljs.core.Symbol(null,\x22unquote\x22,\x22unquote\x22,-1004694737,null),new cljs.core.Symbol(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,-1359168213,null),new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),new cljs.core.Symbol(null,\x22fn\x22,\x22fn\x22,465265323,null),new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),new cljs.core.Symbol(null,\x22read-eval\x22,\x22read-eval\x22,-865701837,null),new cljs.core.Symbol(null,\x22regex\x22,\x22regex\x22,-1714946913,null),new cljs.core.Symbol(null,\x22row-key\x22,\x22row-key\x22,451520815,null),new cljs.core.Symbol(null,\x22col-key\x22,\x22col-key\x22,-369144239,null),new cljs.core.Symbol(null,\x22end-row-key\x22,\x22end-row-key\x22,513868847,null),new cljs.core.Symbol(null,\x22end-col-key\x22,\x22end-col-key\x22,1722344831,null),new cljs.core.Symbol(null,\x22source\x22,\x22source\x22,1206599988,null),new cljs.core.Symbol(null,\x22source-key\x22,\x22source-key\x22,314655985,null),new cljs.core.Symbol(null,\x22postprocess\x22,\x22postprocess\x22,-223231354,null),new cljs.core.Symbol(null,\x22location?\x22,\x22location?\x22,2066409613,null),new cljs.core.Symbol(null,\x22end-location\x22,\x22end-location\x22,441082060,null),new cljs.core.Symbol(null,\x22sci\x22,\x22sci\x22,322746309,null)], null);\n}));\n\n(edamame.impl.parser.Options.cljs$lang$type \x3d true);\n\n(edamame.impl.parser.Options.cljs$lang$ctorPrSeq \x3d (function (this__4458__auto__){\nreturn (new cljs.core.List(null,\x22edamame.impl.parser/Options\x22,null,(1),null));\n}));\n\n(edamame.impl.parser.Options.cljs$lang$ctorPrWriter \x3d (function (this__4458__auto__,writer__4459__auto__){\nreturn cljs.core._write(writer__4459__auto__,\x22edamame.impl.parser/Options\x22);\n}));\n\n/**\n * Positional factory function for edamame.impl.parser/Options.\n */\nedamame.impl.parser.__GT_Options \x3d (function edamame$impl$parser$__GT_Options(dispatch,deref,syntax_quote,unquote,unquote_splicing,quote,fn,var$,read_eval,regex,row_key,col_key,end_row_key,end_col_key,source,source_key,postprocess,location_QMARK_,end_location,sci__$1){\nreturn (new edamame.impl.parser.Options(dispatch,deref,syntax_quote,unquote,unquote_splicing,quote,fn,var$,read_eval,regex,row_key,col_key,end_row_key,end_col_key,source,source_key,postprocess,location_QMARK_,end_location,sci__$1,null,null,null));\n});\n\n/**\n * Factory function for edamame.impl.parser/Options, taking a map of keywords to field values.\n */\nedamame.impl.parser.map__GT_Options \x3d (function edamame$impl$parser$map__GT_Options(G__53086){\nvar extmap__4454__auto__ \x3d (function (){var G__53251 \x3d cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(G__53086,new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881),new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218)], 0));\nif(cljs.core.record_QMARK_(G__53086)){\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,G__53251);\n} else {\nreturn G__53251;\n}\n})();\nreturn (new edamame.impl.parser.Options(new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22postprocess\x22,\x22postprocess\x22,-1863762881).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467).cljs$core$IFn$_invoke$arity$1(G__53086),new cljs.core.Keyword(null,\x22sci\x22,\x22sci\x22,-1317785218).cljs$core$IFn$_invoke$arity$1(G__53086),null,cljs.core.not_empty(extmap__4454__auto__),null));\n});\n\nedamame.impl.parser.normalize_opts \x3d (function edamame$impl$parser$normalize_opts(opts){\nvar opts__$1 \x3d (function (){var temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009).cljs$core$IFn$_invoke$arity$1(opts);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar dispatch \x3d temp__5751__auto__;\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22dispatch\x22,\x22dispatch\x22,1319337009)),new cljs.core.PersistentVector(null, 9, 5, cljs.core.PersistentVector.EMPTY_NODE, [(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22@\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22`\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22~\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nif(cljs.core.fn_QMARK_(v)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),v], null);\n} else {\nvar temp__5753__auto____$1 \x3d new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328).cljs$core$IFn$_invoke$arity$1(v);\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar v__$1 \x3d temp__5753__auto____$1;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22unquote\x22,\x22unquote\x22,1649741032),v__$1], null);\n} else {\nreturn null;\n}\n}\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22~\x22,\x22@\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22unquote-splicing\x22,\x22unquote-splicing\x22,1295267556),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22\x27\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22#\x22,\x22(\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22#\x22,\x22\x27\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22#\x22,\x22\x3d\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),v], null);\n} else {\nreturn null;\n}\n})(),(function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(dispatch,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [\x22#\x22,\x22\\\x22\x22], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),v], null);\n} else {\nreturn null;\n}\n})()], null));\n} else {\nreturn opts;\n}\n})();\nvar opts__$2 \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22all\x22,\x22all\x22,892129742).cljs$core$IFn$_invoke$arity$1(opts__$1))?cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,\x22deref\x22,\x22deref\x22,-145586795),true,new cljs.core.Keyword(null,\x22fn\x22,\x22fn\x22,-1175266204),true,new cljs.core.Keyword(null,\x22quote\x22,\x22quote\x22,-262615245),true,new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),true,new cljs.core.Keyword(null,\x22regex\x22,\x22regex\x22,939488856),true,new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),true,new cljs.core.Keyword(null,\x22var\x22,\x22var\x22,-769682797),true], null),opts__$1], 0)):opts__$1);\nvar opts__$3 \x3d (function (){var G__53296 \x3d opts__$2;\nvar G__53296__$1 \x3d ((cljs.core.not(new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712).cljs$core$IFn$_invoke$arity$1(opts__$2)))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53296,new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),new cljs.core.Keyword(null,\x22row\x22,\x22row\x22,-570139521)):G__53296);\nvar G__53296__$2 \x3d ((cljs.core.not(new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766).cljs$core$IFn$_invoke$arity$1(opts__$2)))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53296__$1,new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),new cljs.core.Keyword(null,\x22col\x22,\x22col\x22,-1959363084)):G__53296__$1);\nvar G__53296__$3 \x3d ((cljs.core.not(new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680).cljs$core$IFn$_invoke$arity$1(opts__$2)))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53296__$2,new cljs.core.Keyword(null,\x22end-row-key\x22,\x22end-row-key\x22,-1126662680),new cljs.core.Keyword(null,\x22end-row\x22,\x22end-row\x22,-545103581)):G__53296__$2);\nvar G__53296__$4 \x3d ((cljs.core.not(new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304).cljs$core$IFn$_invoke$arity$1(opts__$2)))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53296__$3,new cljs.core.Keyword(null,\x22end-col-key\x22,\x22end-col-key\x22,81813304),new cljs.core.Keyword(null,\x22end-col\x22,\x22end-col\x22,-724155879)):G__53296__$3);\nvar G__53296__$5 \x3d ((cljs.core.not(new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542).cljs$core$IFn$_invoke$arity$1(opts__$2)))?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53296__$4,new cljs.core.Keyword(null,\x22source-key\x22,\x22source-key\x22,-1325875542),new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539)):G__53296__$4);\nif((!(cljs.core.contains_QMARK_(opts__$2,new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467))))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__53296__$5,new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),true);\n} else {\nreturn G__53296__$5;\n}\n})();\nreturn edamame.impl.parser.map__GT_Options(opts__$3);\n});\nedamame.impl.parser.parse_string \x3d (function edamame$impl$parser$parse_string(s,opts){\nvar opts__$1 \x3d edamame.impl.parser.normalize_opts(opts);\nvar src_QMARK_ \x3d opts__$1.source;\nvar r \x3d (cljs.core.truth_(src_QMARK_)?cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$1(s):edamame.impl.parser.string_reader(s));\nvar ctx \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(opts__$1,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),null);\nvar v \x3d edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,r);\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006),v)){\nreturn null;\n} else {\nreturn v;\n}\n});\nedamame.impl.parser.parse_string_all \x3d (function edamame$impl$parser$parse_string_all(s,opts){\nvar opts__$1 \x3d edamame.impl.parser.normalize_opts(opts);\nvar r \x3d edamame.impl.parser.string_reader(s);\nvar ctx \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(opts__$1,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22expected-delimiter\x22,\x22edamame.impl.parser/expected-delimiter\x22,2057965803),null);\nvar ret \x3d cljs.core.transient$(cljs.core.PersistentVector.EMPTY);\nwhile(true){\nvar next_val \x3d edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,r);\nif(edamame.impl.parser.kw_identical_QMARK_(new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006),next_val)){\nreturn cljs.core.persistent_BANG_(ret);\n} else {\nvar G__54207 \x3d cljs.core.conj_BANG_.cljs$core$IFn$_invoke$arity$2(ret,next_val);\nret \x3d G__54207;\ncontinue;\n}\nbreak;\n}\n});\nedamame.impl.parser.reader \x3d (function edamame$impl$parser$reader(x){\nvar string_reader \x3d cljs.tools.reader.reader_types.string_reader(x);\nvar buf_len \x3d (1);\nvar pushback_reader \x3d (new cljs.tools.reader.reader_types.PushbackReader(string_reader,cljs.core.object_array.cljs$core$IFn$_invoke$arity$1(buf_len),buf_len,buf_len));\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(pushback_reader);\n});\nedamame.impl.parser.get_line_number \x3d (function edamame$impl$parser$get_line_number(reader){\nreturn cljs.tools.reader.reader_types.get_line_number(reader);\n});\nedamame.impl.parser.get_column_number \x3d (function edamame$impl$parser$get_column_number(reader){\nreturn cljs.tools.reader.reader_types.get_column_number(reader);\n});\nedamame.impl.parser.source_logging_reader \x3d (function edamame$impl$parser$source_logging_reader(x){\nvar string_reader \x3d cljs.tools.reader.reader_types.string_reader(x);\nvar buf_len \x3d (1);\nvar pushback_reader \x3d (new cljs.tools.reader.reader_types.PushbackReader(string_reader,cljs.core.object_array.cljs$core$IFn$_invoke$arity$1(buf_len),buf_len,buf_len));\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$1(pushback_reader);\n});\n");
SHADOW_ENV.evalLoad("sci.impl.parser.js", true , "goog.provide(\x27sci.impl.parser\x27);\nsci.impl.parser.eof \x3d new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517);\nsci.impl.parser.default_opts \x3d edamame.impl.parser.normalize_opts(new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Keyword(null,\x22all\x22,\x22all\x22,892129742),true,new cljs.core.Keyword(null,\x22read-eval\x22,\x22read-eval\x22,1788733932),false,new cljs.core.Keyword(null,\x22row-key\x22,\x22row-key\x22,-1189010712),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22col-key\x22,\x22col-key\x22,-2009675766),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22read-cond\x22,\x22read-cond\x22,1056899244),new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745),new cljs.core.Keyword(null,\x22location?\x22,\x22location?\x22,425878086),(function (obj){\nreturn (((obj instanceof cljs.core.Symbol)) || (cljs.core.seq_QMARK_(obj)));\n}),new cljs.core.Keyword(null,\x22end-location\x22,\x22end-location\x22,-1199449467),false], null));\nsci.impl.parser.var__GT_sym \x3d (function sci$impl$parser$var__GT_sym(v){\nvar temp__5753__auto__ \x3d cljs.core.meta(v);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar m \x3d temp__5753__auto__;\nvar temp__5753__auto____$1 \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar var_name \x3d temp__5753__auto____$1;\nvar temp__5753__auto____$2 \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(temp__5753__auto____$2)){\nvar ns \x3d temp__5753__auto____$2;\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.getName(ns)),cljs.core.str.cljs$core$IFn$_invoke$arity$1(var_name));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\nsci.impl.parser.fully_qualify \x3d (function sci$impl$parser$fully_qualify(ctx,sym){\nvar env \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar sym_ns \x3d (function (){var temp__5753__auto__ \x3d cljs.core.namespace(sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar n \x3d temp__5753__auto__;\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(n);\n} else {\nreturn null;\n}\n})();\nvar sym_name_str \x3d cljs.core.name(sym);\nvar current_ns \x3d sci.impl.vars.current_ns_name();\nvar current_ns_str \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(current_ns);\nvar namespaces \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469));\nvar the_current_ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,current_ns);\nvar aliases \x3d new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714).cljs$core$IFn$_invoke$arity$1(the_current_ns);\nvar ret \x3d ((cljs.core.not(sym_ns))?(function (){var or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_current_ns);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar refers \x3d temp__5753__auto__;\nvar temp__5753__auto____$1 \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(refers,sym);\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar v \x3d temp__5753__auto____$1;\nreturn sci.impl.parser.var__GT_sym(v);\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d (function (){var temp__5753__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(the_current_ns,sym);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nreturn sci.impl.parser.var__GT_sym(v);\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nvar or__4160__auto____$2 \x3d ((((((cljs.core.contains_QMARK_(cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespaces,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null)),sym)) \x26\x26 (cljs.core.not((function (){var G__53842 \x3d the_current_ns;\nvar G__53842__$1 \x3d (((G__53842 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553).cljs$core$IFn$_invoke$arity$1(G__53842));\nvar G__53842__$2 \x3d (((G__53842__$1 \x3d\x3d null))?null:cljs.core.get.cljs$core$IFn$_invoke$arity$2(G__53842__$1,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null)));\nvar G__53842__$3 \x3d (((G__53842__$2 \x3d\x3d null))?null:new cljs.core.Keyword(null,\x22exclude\x22,\x22exclude\x22,-1230250334).cljs$core$IFn$_invoke$arity$1(G__53842__$2));\nif((G__53842__$3 \x3d\x3d null)){\nreturn null;\n} else {\nreturn cljs.core.contains_QMARK_(G__53842__$3,sym);\n}\n})())))) || (cljs.core.contains_QMARK_(sci.impl.utils.ana_macros,sym))))?cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(\x22clojure.core\x22,sym_name_str):null);\nif(cljs.core.truth_(or__4160__auto____$2)){\nreturn or__4160__auto____$2;\n} else {\nvar or__4160__auto____$3 \x3d sci.impl.interop.fully_qualify_class(ctx,sym);\nif(cljs.core.truth_(or__4160__auto____$3)){\nreturn or__4160__auto____$3;\n} else {\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(current_ns_str,sym_name_str);\n}\n}\n}\n}\n})():(cljs.core.truth_(cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),sym_ns], null)))?sym:(function (){var temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(aliases,sym_ns);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar ns \x3d temp__5751__auto__;\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),sym_name_str);\n} else {\nreturn sym;\n}\n})()));\nreturn ret;\n});\nsci.impl.parser.parse_next \x3d (function sci$impl$parser$parse_next(var_args){\nvar G__53857 \x3d arguments.length;\nswitch (G__53857) {\ncase 2:\nreturn sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,r){\nreturn sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3(ctx,r,null);\n}));\n\n(sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,r,opts){\nvar features \x3d new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336).cljs$core$IFn$_invoke$arity$1(ctx);\nvar readers \x3d new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030).cljs$core$IFn$_invoke$arity$1(ctx);\nvar readers__$1 \x3d ((sci.impl.vars.var_QMARK_(readers))?cljs.core.deref(readers):readers);\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar env_val \x3d cljs.core.deref(env);\nvar current_ns \x3d sci.impl.vars.current_ns_name();\nvar the_current_ns \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env_val,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),current_ns], null));\nvar aliases \x3d new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714).cljs$core$IFn$_invoke$arity$1(the_current_ns);\nvar auto_resolve \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(aliases,new cljs.core.Keyword(null,\x22current\x22,\x22current\x22,-1088038603),current_ns);\nvar parse_opts \x3d (function (){var G__53864 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(sci.impl.parser.default_opts,new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336),features,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22auto-resolve\x22,\x22auto-resolve\x22,1851201983),auto_resolve,new cljs.core.Keyword(null,\x22syntax-quote\x22,\x22syntax-quote\x22,-1233164847),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22resolve-symbol\x22,\x22resolve-symbol\x22,-319166964),(function (p1__53854_SHARP_){\nreturn sci.impl.parser.fully_qualify(ctx,p1__53854_SHARP_);\n})], null),new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),readers__$1], 0));\nif(cljs.core.truth_(opts)){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([G__53864,opts], 0));\n} else {\nreturn G__53864;\n}\n})();\nvar ret \x3d (function (){try{var v \x3d edamame.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(parse_opts,r);\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(v,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006)) : sci.impl.utils.kw_identical_QMARK_.call(null,v,new cljs.core.Keyword(\x22edamame.impl.parser\x22,\x22eof\x22,\x22edamame.impl.parser/eof\x22,720552006))))){\nreturn new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517);\n} else {\nreturn v;\n}\n}catch (e53866){if((e53866 instanceof cljs.core.ExceptionInfo)){\nvar e \x3d e53866;\nthrow cljs.core.ex_info.cljs$core$IFn$_invoke$arity$3(e.message,cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(cljs.core.ex_data(e),new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348),new cljs.core.Keyword(\x22sci.error\x22,\x22parse\x22,\x22sci.error/parse\x22,-264338844),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22phase\x22,\x22phase\x22,575722892),\x22parse\x22,new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),cljs.core.deref(sci.impl.vars.current_file)], 0)),e);\n} else {\nthrow e53866;\n\n}\n}})();\nreturn ret;\n}));\n\n(sci.impl.parser.parse_next.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.parser.reader \x3d (function sci$impl$parser$reader(x){\nvar string_reader \x3d cljs.tools.reader.reader_types.string_reader(x);\nvar buf_len \x3d (1);\nvar pushback_reader \x3d (new cljs.tools.reader.reader_types.PushbackReader(string_reader,cljs.core.object_array.cljs$core$IFn$_invoke$arity$1(buf_len),buf_len,buf_len));\nreturn cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(pushback_reader);\n});\nsci.impl.parser.get_line_number \x3d (function sci$impl$parser$get_line_number(reader){\nreturn cljs.tools.reader.reader_types.get_line_number(reader);\n});\nsci.impl.parser.get_column_number \x3d (function sci$impl$parser$get_column_number(reader){\nreturn cljs.tools.reader.reader_types.get_column_number(reader);\n});\nsci.impl.parser.parse_string \x3d (function sci$impl$parser$parse_string(ctx,s){\nvar r \x3d sci.impl.parser.reader(s);\nvar v \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx,r);\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),v) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),v)))){\nreturn null;\n} else {\nreturn v;\n}\n});\n");
SHADOW_ENV.evalLoad("sci.impl.protocols.js", true , "goog.provide(\x27sci.impl.protocols\x27);\nsci.impl.protocols.defprotocol \x3d (function sci$impl$protocols$defprotocol(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___52489 \x3d arguments.length;\nvar i__4772__auto___52490 \x3d (0);\nwhile(true){\nif((i__4772__auto___52490 \x3c len__4771__auto___52489)){\nargs__4777__auto__.push((arguments[i__4772__auto___52490]));\n\nvar G__52492 \x3d (i__4772__auto___52490 + (1));\ni__4772__auto___52490 \x3d G__52492;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.protocols.defprotocol.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.protocols.defprotocol.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,_ctx,protocol_name,signatures){\nvar vec__51882 \x3d (function (){var sig \x3d cljs.core.first(signatures);\nif(typeof sig \x3d\x3d\x3d \x27string\x27){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [sig,cljs.core.rest(signatures)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,signatures], null);\n}\n})();\nvar docstring \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51882,(0),null);\nvar signatures__$1 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51882,(1),null);\nvar vec__51885 \x3d (function (){var opt \x3d cljs.core.first(signatures__$1);\nif((opt instanceof cljs.core.Keyword)){\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentArrayMap.createAsIfByAssoc([opt,cljs.core.second(signatures__$1)]),cljs.core.nnext(signatures__$1)], null);\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [null,signatures__$1], null);\n}\n})();\nvar opts \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51885,(0),null);\nvar signatures__$2 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51885,(1),null);\nvar current_ns \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.current_ns_name());\nvar fq_name \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(current_ns,cljs.core.str.cljs$core$IFn$_invoke$arity$1(protocol_name));\nvar expansion \x3d cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),null,(1),null)),(new cljs.core.List(null,cljs.core.with_meta(protocol_name,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),docstring], null)),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.array_map,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866),null,(1),null)),(new cljs.core.List(null,cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_set,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,fq_name,null,(1),null))))),null,(1),null)),(new cljs.core.List(null,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22*ns*\x22,\x22cljs.core/*ns*\x22,1155497085,null),null,(1),null))], 0))))),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__51890){\nvar vec__51891 \x3d p__51890;\nvar seq__51892 \x3d cljs.core.seq(vec__51891);\nvar first__51893 \x3d cljs.core.first(seq__51892);\nvar seq__51892__$1 \x3d cljs.core.next(seq__51892);\nvar method_name \x3d first__51893;\nvar ___$2 \x3d seq__51892__$1;\nvar fq_name__$1 \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(current_ns,cljs.core.str.cljs$core$IFn$_invoke$arity$1(method_name));\nvar impls \x3d new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defmulti\x22,\x22cljs.core/defmulti\x22,723984225,null),null,(1),null)),(new cljs.core.List(null,method_name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22protocol-type-impl\x22,\x22cljs.core/protocol-type-impl\x22,155177701,null),null,(1),null))], 0)))),cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defmethod\x22,\x22cljs.core/defmethod\x22,-180785162,null),null,(1),null)),(new cljs.core.List(null,method_name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(\x22sci.impl.protocols\x22,\x22reified\x22,\x22sci.impl.protocols/reified\x22,-2019939396),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51822__auto__\x22,\x22x__51822__auto__\x22,1537949977,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22args__51823__auto__\x22,\x22args__51823__auto__\x22,453728653,null),null,(1),null))], 0))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22methods__51827__auto__\x22,\x22methods__51827__auto__\x22,-21758571,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22-reified-methods\x22,\x22cljs.core/-reified-methods\x22,-1833109469,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51822__auto__\x22,\x22x__51822__auto__\x22,1537949977,null),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22apply\x22,\x22cljs.core/apply\x22,1757277831,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22get\x22,\x22cljs.core/get\x22,-296075407,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22methods__51827__auto__\x22,\x22methods__51827__auto__\x22,-21758571,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,method_name,null,(1),null))))),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51822__auto__\x22,\x22x__51822__auto__\x22,1537949977,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22args__51823__auto__\x22,\x22args__51823__auto__\x22,453728653,null),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))))], null);\nvar impls__$1 \x3d (cljs.core.truth_(new cljs.core.Keyword(null,\x22extend-via-metadata\x22,\x22extend-via-metadata\x22,-427346794).cljs$core$IFn$_invoke$arity$1(opts))?cljs.core.conj.cljs$core$IFn$_invoke$arity$2(impls,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defmethod\x22,\x22cljs.core/defmethod\x22,-180785162,null),null,(1),null)),(new cljs.core.List(null,method_name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51828__auto__\x22,\x22x__51828__auto__\x22,1779612763,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22args__51829__auto__\x22,\x22args__51829__auto__\x22,2134517226,null),null,(1),null))], 0))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22meta__51830__auto__\x22,\x22meta__51830__auto__\x22,1550275467,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22meta\x22,\x22cljs.core/meta\x22,-748218346,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51828__auto__\x22,\x22x__51828__auto__\x22,1779612763,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method__51835__auto__\x22,\x22method__51835__auto__\x22,1291043252,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22get\x22,\x22cljs.core/get\x22,-296075407,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22meta__51830__auto__\x22,\x22meta__51830__auto__\x22,1550275467,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,fq_name__$1,null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method__51835__auto__\x22,\x22method__51835__auto__\x22,1291043252,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22apply\x22,\x22cljs.core/apply\x22,1757277831,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22method__51835__auto__\x22,\x22method__51835__auto__\x22,1291043252,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51828__auto__\x22,\x22x__51828__auto__\x22,1779612763,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22args__51829__auto__\x22,\x22args__51829__auto__\x22,2134517226,null),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(\x22js\x22,\x22Error\x22,\x22js/Error\x22,-1692659266,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,\x22No implementation of method: \x22,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.keyword.cljs$core$IFn$_invoke$arity$1(method_name),null,(1),null)),(new cljs.core.List(null,\x22 of protocol: \x22,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),null,(1),null)),(new cljs.core.List(null,protocol_name,null,(1),null))))),null,(1),null)),(new cljs.core.List(null,\x22 found for: \x22,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22protocol-type-impl\x22,\x22cljs.core/protocol-type-impl\x22,155177701,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22x__51828__auto__\x22,\x22x__51828__auto__\x22,1779612763,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))))):impls);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),impls__$1,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),null,(1),null)),(new cljs.core.List(null,protocol_name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22update\x22,\x22cljs.core/update\x22,-908565906,null),null,(1),null)),(new cljs.core.List(null,protocol_name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22conj\x22,\x22cljs.core/conj\x22,-460750931,null),null,(1),null)),(new cljs.core.List(null,method_name,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}),signatures__$2)], 0))));\nreturn expansion;\n}));\n\n(sci.impl.protocols.defprotocol.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.protocols.defprotocol.cljs$lang$applyTo \x3d (function (seq51836){\nvar G__51837 \x3d cljs.core.first(seq51836);\nvar seq51836__$1 \x3d cljs.core.next(seq51836);\nvar G__51838 \x3d cljs.core.first(seq51836__$1);\nvar seq51836__$2 \x3d cljs.core.next(seq51836__$1);\nvar G__51839 \x3d cljs.core.first(seq51836__$2);\nvar seq51836__$3 \x3d cljs.core.next(seq51836__$2);\nvar G__51840 \x3d cljs.core.first(seq51836__$3);\nvar seq51836__$4 \x3d cljs.core.next(seq51836__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51837,G__51838,G__51839,G__51840,seq51836__$4);\n}));\n\nsci.impl.protocols.extend_protocol \x3d (function sci$impl$protocols$extend_protocol(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___52578 \x3d arguments.length;\nvar i__4772__auto___52579 \x3d (0);\nwhile(true){\nif((i__4772__auto___52579 \x3c len__4771__auto___52578)){\nargs__4777__auto__.push((arguments[i__4772__auto___52579]));\n\nvar G__52580 \x3d (i__4772__auto___52579 + (1));\ni__4772__auto___52579 \x3d G__52580;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.protocols.extend_protocol.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.protocols.extend_protocol.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,ctx,protocol_name,impls){\nvar impls__$1 \x3d sci.impl.utils.split_when((function (p1__52017_SHARP_){\nreturn (!(cljs.core.seq_QMARK_(p1__52017_SHARP_)));\n}),impls);\nvar protocol_var \x3d (function (){var fexpr__52039 \x3d cljs.core.deref(sci.impl.utils.eval_resolve_state);\nreturn (fexpr__52039.cljs$core$IFn$_invoke$arity$2 ? fexpr__52039.cljs$core$IFn$_invoke$arity$2(ctx,protocol_name) : fexpr__52039.call(null,ctx,protocol_name));\n})();\nvar protocol_ns \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(protocol_var));\nvar pns \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.getName(protocol_ns));\nvar fq_meth_name \x3d (function (p1__52018_SHARP_){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(pns,p1__52018_SHARP_);\n});\nvar expansion \x3d cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__52079){\nvar vec__52080 \x3d p__52079;\nvar seq__52081 \x3d cljs.core.seq(vec__52080);\nvar first__52082 \x3d cljs.core.first(seq__52081);\nvar seq__52081__$1 \x3d cljs.core.next(seq__52081);\nvar type \x3d first__52082;\nvar meths \x3d seq__52081__$1;\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (meth){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defmethod\x22,\x22cljs.core/defmethod\x22,-180785162,null),null,(1),null)),(new cljs.core.List(null,fq_meth_name(cljs.core.name(cljs.core.first(meth))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,type,null,(1),null)),(new cljs.core.List(null,cljs.core.second(meth),null,(1),null)),cljs.core.nnext(meth)], 0))));\n}),meths))));\n}),impls__$1))));\nreturn expansion;\n}));\n\n(sci.impl.protocols.extend_protocol.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.protocols.extend_protocol.cljs$lang$applyTo \x3d (function (seq52023){\nvar G__52024 \x3d cljs.core.first(seq52023);\nvar seq52023__$1 \x3d cljs.core.next(seq52023);\nvar G__52025 \x3d cljs.core.first(seq52023__$1);\nvar seq52023__$2 \x3d cljs.core.next(seq52023__$1);\nvar G__52026 \x3d cljs.core.first(seq52023__$2);\nvar seq52023__$3 \x3d cljs.core.next(seq52023__$2);\nvar G__52027 \x3d cljs.core.first(seq52023__$3);\nvar seq52023__$4 \x3d cljs.core.next(seq52023__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__52024,G__52025,G__52026,G__52027,seq52023__$4);\n}));\n\nsci.impl.protocols.extend \x3d (function sci$impl$protocols$extend(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___52611 \x3d arguments.length;\nvar i__4772__auto___52612 \x3d (0);\nwhile(true){\nif((i__4772__auto___52612 \x3c len__4771__auto___52611)){\nargs__4777__auto__.push((arguments[i__4772__auto___52612]));\n\nvar G__52618 \x3d (i__4772__auto___52612 + (1));\ni__4772__auto___52612 \x3d G__52618;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.protocols.extend.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.protocols.extend.cljs$core$IFn$_invoke$arity$variadic \x3d (function (ctx,atype,proto_PLUS_mmaps){\nvar seq__52095 \x3d cljs.core.seq(cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),proto_PLUS_mmaps));\nvar chunk__52097 \x3d null;\nvar count__52098 \x3d (0);\nvar i__52099 \x3d (0);\nwhile(true){\nif((i__52099 \x3c count__52098)){\nvar vec__52298 \x3d chunk__52097.cljs$core$IIndexed$_nth$arity$2(null,i__52099);\nvar proto \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52298,(0),null);\nvar mmap \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52298,(1),null);\nvar proto_ns_52627 \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(proto);\nvar pns_52628 \x3d sci.impl.vars.getName(proto_ns_52627);\nvar seq__52304_52629 \x3d cljs.core.seq(mmap);\nvar chunk__52305_52630 \x3d null;\nvar count__52306_52631 \x3d (0);\nvar i__52307_52632 \x3d (0);\nwhile(true){\nif((i__52307_52632 \x3c count__52306_52631)){\nvar vec__52336_52635 \x3d chunk__52305_52630.cljs$core$IIndexed$_nth$arity$2(null,i__52307_52632);\nvar fn_name_52636 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52336_52635,(0),null);\nvar f_52637 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52336_52635,(1),null);\nvar fn_sym_52647 \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(fn_name_52636));\nvar env_52648 \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar multi_method_var_52649 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env_52648,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),pns_52628,fn_sym_52647], null));\nvar multi_method_52650 \x3d cljs.core.deref(multi_method_var_52649);\nsci.impl.multimethods.multi_fn_add_method_impl(multi_method_52650,atype,f_52637);\n\n\nvar G__52656 \x3d seq__52304_52629;\nvar G__52657 \x3d chunk__52305_52630;\nvar G__52658 \x3d count__52306_52631;\nvar G__52659 \x3d (i__52307_52632 + (1));\nseq__52304_52629 \x3d G__52656;\nchunk__52305_52630 \x3d G__52657;\ncount__52306_52631 \x3d G__52658;\ni__52307_52632 \x3d G__52659;\ncontinue;\n} else {\nvar temp__5753__auto___52661 \x3d cljs.core.seq(seq__52304_52629);\nif(temp__5753__auto___52661){\nvar seq__52304_52662__$1 \x3d temp__5753__auto___52661;\nif(cljs.core.chunked_seq_QMARK_(seq__52304_52662__$1)){\nvar c__4591__auto___52665 \x3d cljs.core.chunk_first(seq__52304_52662__$1);\nvar G__52666 \x3d cljs.core.chunk_rest(seq__52304_52662__$1);\nvar G__52667 \x3d c__4591__auto___52665;\nvar G__52668 \x3d cljs.core.count(c__4591__auto___52665);\nvar G__52669 \x3d (0);\nseq__52304_52629 \x3d G__52666;\nchunk__52305_52630 \x3d G__52667;\ncount__52306_52631 \x3d G__52668;\ni__52307_52632 \x3d G__52669;\ncontinue;\n} else {\nvar vec__52339_52672 \x3d cljs.core.first(seq__52304_52662__$1);\nvar fn_name_52673 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52339_52672,(0),null);\nvar f_52674 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52339_52672,(1),null);\nvar fn_sym_52675 \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(fn_name_52673));\nvar env_52676 \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar multi_method_var_52677 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env_52676,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),pns_52628,fn_sym_52675], null));\nvar multi_method_52678 \x3d cljs.core.deref(multi_method_var_52677);\nsci.impl.multimethods.multi_fn_add_method_impl(multi_method_52678,atype,f_52674);\n\n\nvar G__52685 \x3d cljs.core.next(seq__52304_52662__$1);\nvar G__52686 \x3d null;\nvar G__52687 \x3d (0);\nvar G__52688 \x3d (0);\nseq__52304_52629 \x3d G__52685;\nchunk__52305_52630 \x3d G__52686;\ncount__52306_52631 \x3d G__52687;\ni__52307_52632 \x3d G__52688;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\n\nvar G__52693 \x3d seq__52095;\nvar G__52694 \x3d chunk__52097;\nvar G__52695 \x3d count__52098;\nvar G__52696 \x3d (i__52099 + (1));\nseq__52095 \x3d G__52693;\nchunk__52097 \x3d G__52694;\ncount__52098 \x3d G__52695;\ni__52099 \x3d G__52696;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__52095);\nif(temp__5753__auto__){\nvar seq__52095__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__52095__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__52095__$1);\nvar G__52704 \x3d cljs.core.chunk_rest(seq__52095__$1);\nvar G__52705 \x3d c__4591__auto__;\nvar G__52706 \x3d cljs.core.count(c__4591__auto__);\nvar G__52707 \x3d (0);\nseq__52095 \x3d G__52704;\nchunk__52097 \x3d G__52705;\ncount__52098 \x3d G__52706;\ni__52099 \x3d G__52707;\ncontinue;\n} else {\nvar vec__52349 \x3d cljs.core.first(seq__52095__$1);\nvar proto \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52349,(0),null);\nvar mmap \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52349,(1),null);\nvar proto_ns_52711 \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(proto);\nvar pns_52712 \x3d sci.impl.vars.getName(proto_ns_52711);\nvar seq__52352_52714 \x3d cljs.core.seq(mmap);\nvar chunk__52353_52715 \x3d null;\nvar count__52354_52716 \x3d (0);\nvar i__52355_52717 \x3d (0);\nwhile(true){\nif((i__52355_52717 \x3c count__52354_52716)){\nvar vec__52364_52721 \x3d chunk__52353_52715.cljs$core$IIndexed$_nth$arity$2(null,i__52355_52717);\nvar fn_name_52722 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52364_52721,(0),null);\nvar f_52723 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52364_52721,(1),null);\nvar fn_sym_52725 \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(fn_name_52722));\nvar env_52726 \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar multi_method_var_52727 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env_52726,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),pns_52712,fn_sym_52725], null));\nvar multi_method_52728 \x3d cljs.core.deref(multi_method_var_52727);\nsci.impl.multimethods.multi_fn_add_method_impl(multi_method_52728,atype,f_52723);\n\n\nvar G__52730 \x3d seq__52352_52714;\nvar G__52731 \x3d chunk__52353_52715;\nvar G__52732 \x3d count__52354_52716;\nvar G__52733 \x3d (i__52355_52717 + (1));\nseq__52352_52714 \x3d G__52730;\nchunk__52353_52715 \x3d G__52731;\ncount__52354_52716 \x3d G__52732;\ni__52355_52717 \x3d G__52733;\ncontinue;\n} else {\nvar temp__5753__auto___52734__$1 \x3d cljs.core.seq(seq__52352_52714);\nif(temp__5753__auto___52734__$1){\nvar seq__52352_52735__$1 \x3d temp__5753__auto___52734__$1;\nif(cljs.core.chunked_seq_QMARK_(seq__52352_52735__$1)){\nvar c__4591__auto___52736 \x3d cljs.core.chunk_first(seq__52352_52735__$1);\nvar G__52737 \x3d cljs.core.chunk_rest(seq__52352_52735__$1);\nvar G__52738 \x3d c__4591__auto___52736;\nvar G__52739 \x3d cljs.core.count(c__4591__auto___52736);\nvar G__52740 \x3d (0);\nseq__52352_52714 \x3d G__52737;\nchunk__52353_52715 \x3d G__52738;\ncount__52354_52716 \x3d G__52739;\ni__52355_52717 \x3d G__52740;\ncontinue;\n} else {\nvar vec__52386_52752 \x3d cljs.core.first(seq__52352_52735__$1);\nvar fn_name_52753 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52386_52752,(0),null);\nvar f_52754 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__52386_52752,(1),null);\nvar fn_sym_52755 \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(fn_name_52753));\nvar env_52756 \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar multi_method_var_52757 \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env_52756,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),pns_52712,fn_sym_52755], null));\nvar multi_method_52758 \x3d cljs.core.deref(multi_method_var_52757);\nsci.impl.multimethods.multi_fn_add_method_impl(multi_method_52758,atype,f_52754);\n\n\nvar G__52762 \x3d cljs.core.next(seq__52352_52735__$1);\nvar G__52763 \x3d null;\nvar G__52764 \x3d (0);\nvar G__52765 \x3d (0);\nseq__52352_52714 \x3d G__52762;\nchunk__52353_52715 \x3d G__52763;\ncount__52354_52716 \x3d G__52764;\ni__52355_52717 \x3d G__52765;\ncontinue;\n}\n} else {\n}\n}\nbreak;\n}\n\n\nvar G__52768 \x3d cljs.core.next(seq__52095__$1);\nvar G__52769 \x3d null;\nvar G__52770 \x3d (0);\nvar G__52771 \x3d (0);\nseq__52095 \x3d G__52768;\nchunk__52097 \x3d G__52769;\ncount__52098 \x3d G__52770;\ni__52099 \x3d G__52771;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n}));\n\n(sci.impl.protocols.extend.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.protocols.extend.cljs$lang$applyTo \x3d (function (seq52090){\nvar G__52091 \x3d cljs.core.first(seq52090);\nvar seq52090__$1 \x3d cljs.core.next(seq52090);\nvar G__52092 \x3d cljs.core.first(seq52090__$1);\nvar seq52090__$2 \x3d cljs.core.next(seq52090__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__52091,G__52092,seq52090__$2);\n}));\n\nsci.impl.protocols.extend_type \x3d (function sci$impl$protocols$extend_type(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___52778 \x3d arguments.length;\nvar i__4772__auto___52779 \x3d (0);\nwhile(true){\nif((i__4772__auto___52779 \x3c len__4771__auto___52778)){\nargs__4777__auto__.push((arguments[i__4772__auto___52779]));\n\nvar G__52784 \x3d (i__4772__auto___52779 + (1));\ni__4772__auto___52779 \x3d G__52784;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.protocols.extend_type.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.protocols.extend_type.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,ctx,atype,proto_PLUS_meths){\nvar proto_PLUS_meths__$1 \x3d sci.impl.utils.split_when((function (p1__52395_SHARP_){\nreturn (!(cljs.core.seq_QMARK_(p1__52395_SHARP_)));\n}),proto_PLUS_meths);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__52410){\nvar vec__52411 \x3d p__52410;\nvar seq__52412 \x3d cljs.core.seq(vec__52411);\nvar first__52413 \x3d cljs.core.first(seq__52412);\nvar seq__52412__$1 \x3d cljs.core.next(seq__52412);\nvar proto \x3d first__52413;\nvar meths \x3d seq__52412__$1;\nvar protocol_var \x3d (function (){var fexpr__52414 \x3d cljs.core.deref(sci.impl.utils.eval_resolve_state);\nreturn (fexpr__52414.cljs$core$IFn$_invoke$arity$2 ? fexpr__52414.cljs$core$IFn$_invoke$arity$2(ctx,proto) : fexpr__52414.call(null,ctx,proto));\n})();\nvar protocol_ns \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(protocol_var));\nvar pns \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.vars.getName(protocol_ns));\nvar fq_meth_name \x3d (function (p1__52397_SHARP_){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(pns,p1__52397_SHARP_);\n});\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (meth){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22defmethod\x22,\x22cljs.core/defmethod\x22,-180785162,null),null,(1),null)),(new cljs.core.List(null,fq_meth_name(cljs.core.name(cljs.core.first(meth))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,atype,null,(1),null)),(new cljs.core.List(null,cljs.core.second(meth),null,(1),null)),cljs.core.nnext(meth)], 0))));\n}),meths))));\n}),proto_PLUS_meths__$1))));\n}));\n\n(sci.impl.protocols.extend_type.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.protocols.extend_type.cljs$lang$applyTo \x3d (function (seq52399){\nvar G__52401 \x3d cljs.core.first(seq52399);\nvar seq52399__$1 \x3d cljs.core.next(seq52399);\nvar G__52402 \x3d cljs.core.first(seq52399__$1);\nvar seq52399__$2 \x3d cljs.core.next(seq52399__$1);\nvar G__52403 \x3d cljs.core.first(seq52399__$2);\nvar seq52399__$3 \x3d cljs.core.next(seq52399__$2);\nvar G__52404 \x3d cljs.core.first(seq52399__$3);\nvar seq52399__$4 \x3d cljs.core.next(seq52399__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__52401,G__52402,G__52403,G__52404,seq52399__$4);\n}));\n\nsci.impl.protocols.find_matching_non_default_method \x3d (function sci$impl$protocols$find_matching_non_default_method(protocol,obj){\nreturn cljs.core.boolean$(cljs.core.some((function (p1__52430_SHARP_){\nvar temp__5753__auto__ \x3d cljs.core.get_method(p1__52430_SHARP_,sci.impl.types.type_impl(obj));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar m \x3d temp__5753__auto__;\nvar ms \x3d cljs.core.methods$(p1__52430_SHARP_);\nvar default$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(ms,new cljs.core.Keyword(null,\x22default\x22,\x22default\x22,-1987822328));\nreturn (!((m \x3d\x3d\x3d default$)));\n} else {\nreturn null;\n}\n}),new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866).cljs$core$IFn$_invoke$arity$1(protocol)));\n});\nsci.impl.protocols.satisfies_QMARK_ \x3d (function sci$impl$protocols$satisfies_QMARK_(protocol,obj){\nif((obj instanceof sci.impl.types.Reified)){\nreturn cljs.core.contains_QMARK_(obj.sci$impl$types$IReified$getProtocols$arity$1(null),protocol);\n} else {\nvar p \x3d new cljs.core.Keyword(null,\x22protocol\x22,\x22protocol\x22,652470118).cljs$core$IFn$_invoke$arity$1(protocol);\nvar or__4160__auto__ \x3d (function (){var and__4149__auto__ \x3d p;\nif(cljs.core.truth_(and__4149__auto__)){\nvar pred__52452 \x3d cljs.core._EQ_;\nvar expr__52453 \x3d p;\nif(cljs.core.truth_((pred__52452.cljs$core$IFn$_invoke$arity$2 ? pred__52452.cljs$core$IFn$_invoke$arity$2(cljs.core.IDeref,expr__52453) : pred__52452.call(null,cljs.core.IDeref,expr__52453)))){\nif((!((obj \x3d\x3d null)))){\nif((((obj.cljs$lang$protocol_mask$partition0$ \x26 (32768))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IDeref$)))){\nreturn true;\n} else {\nif((!obj.cljs$lang$protocol_mask$partition0$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,obj);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IDeref,obj);\n}\n} else {\nif(cljs.core.truth_((pred__52452.cljs$core$IFn$_invoke$arity$2 ? pred__52452.cljs$core$IFn$_invoke$arity$2(cljs.core.ISwap,expr__52453) : pred__52452.call(null,cljs.core.ISwap,expr__52453)))){\nif((!((obj \x3d\x3d null)))){\nif((((obj.cljs$lang$protocol_mask$partition1$ \x26 (65536))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$ISwap$)))){\nreturn true;\n} else {\nif((!obj.cljs$lang$protocol_mask$partition1$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISwap,obj);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.ISwap,obj);\n}\n} else {\nif(cljs.core.truth_((pred__52452.cljs$core$IFn$_invoke$arity$2 ? pred__52452.cljs$core$IFn$_invoke$arity$2(cljs.core.IReset,expr__52453) : pred__52452.call(null,cljs.core.IReset,expr__52453)))){\nif((!((obj \x3d\x3d null)))){\nif((((obj.cljs$lang$protocol_mask$partition1$ \x26 (32768))) || ((cljs.core.PROTOCOL_SENTINEL \x3d\x3d\x3d obj.cljs$core$IReset$)))){\nreturn true;\n} else {\nif((!obj.cljs$lang$protocol_mask$partition1$)){\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IReset,obj);\n} else {\nreturn false;\n}\n}\n} else {\nreturn cljs.core.native_satisfies_QMARK_(cljs.core.IReset,obj);\n}\n} else {\nthrow (new Error([\x22No matching clause: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(expr__52453)].join(\x27\x27)));\n}\n}\n}\n} else {\nreturn and__4149__auto__;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sci.impl.protocols.find_matching_non_default_method(protocol,obj);\n}\n}\n});\nsci.impl.protocols.instance_impl \x3d (function sci$impl$protocols$instance_impl(clazz,x){\nif(cljs.core.truth_((((clazz instanceof cljs.core.Symbol))?(function (){var G__52473 \x3d clazz;\nvar G__52473__$1 \x3d (((G__52473 \x3d\x3d null))?null:cljs.core.meta(G__52473));\nif((G__52473__$1 \x3d\x3d null)){\nreturn null;\n} else {\nreturn new cljs.core.Keyword(\x22sci.impl\x22,\x22record\x22,\x22sci.impl/record\x22,-1939193950).cljs$core$IFn$_invoke$arity$1(G__52473__$1);\n}\n})():false))){\nreturn cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(clazz,new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(x)));\n} else {\nreturn (x instanceof clazz);\n\n}\n});\n/**\n * Returns true if atype extends protocol\n */\nsci.impl.protocols.extends_QMARK_ \x3d (function sci$impl$protocols$extends_QMARK_(protocol,atype){\nreturn cljs.core.boolean$(cljs.core.some((function (p1__52478_SHARP_){\nreturn cljs.core.get_method(p1__52478_SHARP_,atype);\n}),new cljs.core.Keyword(null,\x22methods\x22,\x22methods\x22,453930866).cljs$core$IFn$_invoke$arity$1(protocol)));\n});\n");
SHADOW_ENV.evalLoad("sci.impl.read.js", true , "goog.provide(\x27sci.impl.read\x27);\n/**\n * Added for compatibility. Does not support all of the options from the original yet.\n */\nsci.impl.read.read \x3d (function sci$impl$read$read(var_args){\nvar G__53884 \x3d arguments.length;\nswitch (G__53884) {\ncase 1:\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 4:\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ncase 3:\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.read.read.cljs$core$IFn$_invoke$arity$1 \x3d (function (sci_ctx){\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$2(sci_ctx,cljs.core.deref(sci.impl.io.in$));\n}));\n\n(sci.impl.read.read.cljs$core$IFn$_invoke$arity$2 \x3d (function (sci_ctx,stream){\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$4(sci_ctx,stream,true,null);\n}));\n\n(sci.impl.read.read.cljs$core$IFn$_invoke$arity$4 \x3d (function (sci_ctx,stream,eof_error_QMARK_,eof_value){\nreturn sci.impl.read.read.cljs$core$IFn$_invoke$arity$5(sci_ctx,stream,eof_error_QMARK_,eof_value,false);\n}));\n\n(sci.impl.read.read.cljs$core$IFn$_invoke$arity$5 \x3d (function (sci_ctx,stream,_eof_error_QMARK_,eof_value,_recursive_QMARK_){\nvar v \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3(sci_ctx,stream,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237),eof_value], null));\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),v) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),v)))){\nreturn eof_value;\n} else {\nreturn v;\n}\n}));\n\n(sci.impl.read.read.cljs$core$IFn$_invoke$arity$3 \x3d (function (sci_ctx,_opts,stream){\nreturn sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(sci_ctx,stream);\n}));\n\n(sci.impl.read.read.cljs$lang$maxFixedArity \x3d 5);\n\nsci.impl.read.read_string \x3d (function sci$impl$read$read_string(sci_ctx,s){\nvar reader \x3d cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\nreturn sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(sci_ctx,reader);\n});\nsci.impl.read.eval \x3d (function sci$impl$read$eval(sci_ctx,form){\nvar fexpr__53891 \x3d cljs.core.deref(sci.impl.utils.eval_form_state);\nreturn (fexpr__53891.cljs$core$IFn$_invoke$arity$2 ? fexpr__53891.cljs$core$IFn$_invoke$arity$2(sci_ctx,form) : fexpr__53891.call(null,sci_ctx,form));\n});\nsci.impl.read.load_string \x3d (function sci$impl$read$load_string(sci_ctx,s){\nsci.impl.vars.push_thread_bindings(cljs.core.PersistentArrayMap.createAsIfByAssoc([sci.impl.vars.current_ns,cljs.core.deref(sci.impl.vars.current_ns)]));\n\ntry{var reader \x3d cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\nvar ret \x3d null;\nwhile(true){\nvar x \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(sci_ctx,reader);\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),x) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),x)))){\nreturn ret;\n} else {\nvar G__54094 \x3d sci.impl.read.eval(sci_ctx,x);\nret \x3d G__54094;\ncontinue;\n}\nbreak;\n}\n}finally {sci.impl.vars.pop_thread_bindings();\n}});\nsci.impl.read.source_logging_reader \x3d (function sci$impl$read$source_logging_reader(x){\nvar string_reader \x3d cljs.tools.reader.reader_types.string_reader(x);\nvar buf_len \x3d (1);\nvar pushback_reader \x3d (new cljs.tools.reader.reader_types.PushbackReader(string_reader,cljs.core.object_array.cljs$core$IFn$_invoke$arity$1(buf_len),buf_len,buf_len));\nreturn cljs.tools.reader.reader_types.source_logging_push_back_reader.cljs$core$IFn$_invoke$arity$1(pushback_reader);\n});\n");
SHADOW_ENV.evalLoad("sci.impl.reify.js", true , "goog.provide(\x27sci.impl.reify\x27);\nsci.impl.reify.reify \x3d (function sci$impl$reify$reify(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___51972 \x3d arguments.length;\nvar i__4772__auto___51973 \x3d (0);\nwhile(true){\nif((i__4772__auto___51973 \x3c len__4771__auto___51972)){\nargs__4777__auto__.push((arguments[i__4772__auto___51973]));\n\nvar G__51975 \x3d (i__4772__auto___51973 + (1));\ni__4772__auto___51973 \x3d G__51975;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.reify.reify.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.reify.reify.cljs$core$IFn$_invoke$arity$variadic \x3d (function (form,_,_ctx,args){\nvar map__51954 \x3d cljs.core.group_by(cljs.core.symbol_QMARK_,args);\nvar map__51954__$1 \x3d cljs.core.__destructure_map(map__51954);\nvar classes \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51954__$1,true);\nvar methods$ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__51954__$1,false);\nvar methods$__$1 \x3d cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__51955){\nvar vec__51959 \x3d p__51955;\nvar meth \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51959,(0),null);\nvar bodies \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__51959,(1),null);\nreturn cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,meth,null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.rest,bodies)))),null,(1),null))))));\n}),cljs.core.group_by(cljs.core.first,methods$)));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22reify*\x22,\x22cljs.core/reify*\x22,1256833160,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,form,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.vec(classes),null,(1),null)),(new cljs.core.List(null,methods$__$1,null,(1),null))], 0))));\n}));\n\n(sci.impl.reify.reify.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.reify.reify.cljs$lang$applyTo \x3d (function (seq51944){\nvar G__51945 \x3d cljs.core.first(seq51944);\nvar seq51944__$1 \x3d cljs.core.next(seq51944);\nvar G__51946 \x3d cljs.core.first(seq51944__$1);\nvar seq51944__$2 \x3d cljs.core.next(seq51944__$1);\nvar G__51947 \x3d cljs.core.first(seq51944__$2);\nvar seq51944__$3 \x3d cljs.core.next(seq51944__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__51945,G__51946,G__51947,seq51944__$3);\n}));\n\nsci.impl.reify.reify_STAR_ \x3d (function sci$impl$reify$reify_STAR_(_ctx,_form,classes,methods$){\nreturn sci.impl.types.__GT_Reified(classes,methods$,cljs.core.set(classes));\n});\n");
SHADOW_ENV.evalLoad("sci.impl.namespaces.js", true , "goog.provide(\x27sci.impl.namespaces\x27);\nsci.impl.namespaces.clojure_core_ns \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),null);\nsci.impl.namespaces.inlined_vars \x3d new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 90, [new cljs.core.Symbol(null,\x22+\x27\x22,\x22+\x27\x22,1839585344,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-remainder-int\x22,\x22unchecked-remainder-int\x22,1427188224,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-subtract-int\x22,\x22unchecked-subtract-int\x22,-1899147615,null),\x22null\x22,new cljs.core.Symbol(null,\x22dec\x27\x22,\x22dec\x27\x22,1382902561,null),\x22null\x22,new cljs.core.Symbol(null,\x22short-array\x22,\x22short-array\x22,-395185918,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-shift-right\x22,\x22bit-shift-right\x22,884046498,null),\x22null\x22,new cljs.core.Symbol(null,\x22aget\x22,\x22aget\x22,1491056546,null),\x22null\x22,new cljs.core.Symbol(null,\x22\x3d\x22,\x22\x3d\x22,-1501502141,null),\x22null\x22,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-shift-left\x22,\x22bit-shift-left\x22,-1814765981,null),\x22null\x22,new cljs.core.Symbol(null,\x22aclone\x22,\x22aclone\x22,722978531,null),\x22null\x22,new cljs.core.Symbol(null,\x22dec\x22,\x22dec\x22,-766002333,null),\x22null\x22,new cljs.core.Symbol(null,\x22\x3c\x22,\x22\x3c\x22,993667236,null),\x22null\x22,new cljs.core.Symbol(null,\x22char\x22,\x22char\x22,998943941,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-long\x22,\x22unchecked-long\x22,1306610949,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-negate\x22,\x22unchecked-negate\x22,-1669067451,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-inc-int\x22,\x22unchecked-inc-int\x22,1402783397,null),\x22null\x22,new cljs.core.Symbol(null,\x22floats\x22,\x22floats\x22,513591110,null),\x22null\x22,new cljs.core.Symbol(null,\x22pos?\x22,\x22pos?\x22,-244377722,null),\x22null\x22,new cljs.core.Symbol(null,\x22boolean-array\x22,\x22boolean-array\x22,-640353913,null),\x22null\x22,new cljs.core.Symbol(null,\x22alength\x22,\x22alength\x22,-1268305401,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-xor\x22,\x22bit-xor\x22,-1334295033,null),\x22null\x22,new cljs.core.Symbol(null,\x22unsigned-bit-shift-right\x22,\x22unsigned-bit-shift-right\x22,-1953076601,null),\x22null\x22,new cljs.core.Symbol(null,\x22neg?\x22,\x22neg?\x22,-1902175577,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-float\x22,\x22unchecked-float\x22,1485658216,null),\x22null\x22,new cljs.core.Symbol(null,\x22num\x22,\x22num\x22,-669195096,null),\x22null\x22,new cljs.core.Symbol(null,\x22reduced?\x22,\x22reduced?\x22,1361797384,null),\x22null\x22,new cljs.core.Symbol(null,\x22booleans\x22,\x22booleans\x22,756846088,null),\x22null\x22,new cljs.core.Symbol(null,\x22int-array\x22,\x22int-array\x22,459176616,null),\x22null\x22,new cljs.core.Symbol(null,\x22inc\x27\x22,\x22inc\x27\x22,1740049128,null),\x22null\x22,new cljs.core.Symbol(null,\x22\x3c\x3d\x22,\x22\x3c\x3d\x22,1244895369,null),\x22null\x22,new cljs.core.Symbol(null,\x22-\x27\x22,\x22-\x27\x22,1770549449,null),\x22null\x22,new cljs.core.Symbol(null,\x22*\x22,\x22*\x22,345799209,null),\x22null\x22,new cljs.core.Symbol(null,\x22min\x22,\x22min\x22,2085523049,null),\x22null\x22,new cljs.core.Symbol(null,\x22get\x22,\x22get\x22,-971253014,null),\x22null\x22,new cljs.core.Symbol(null,\x22long\x22,\x22long\x22,1469079434,null),\x22null\x22,new cljs.core.Symbol(null,\x22double\x22,\x22double\x22,-1769548886,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-and-not\x22,\x22bit-and-not\x22,-254338837,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-add-int\x22,\x22unchecked-add-int\x22,-1821763285,null),\x22null\x22,new cljs.core.Symbol(null,\x22short\x22,\x22short\x22,-725675253,null),\x22null\x22,new cljs.core.Symbol(null,\x22quot\x22,\x22quot\x22,-1125214196,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-double\x22,\x22unchecked-double\x22,-1593778036,null),\x22null\x22,new cljs.core.Symbol(null,\x22longs\x22,\x22longs\x22,-1017696020,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-multiply-int\x22,\x22unchecked-multiply-int\x22,-788546068,null),\x22null\x22,new cljs.core.Symbol(null,\x22int\x22,\x22int\x22,-100885395,null),\x22null\x22,new cljs.core.Symbol(null,\x22\x3e\x22,\x22\x3e\x22,1085014381,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-int\x22,\x22unchecked-int\x22,1672898125,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-multiply\x22,\x22unchecked-multiply\x22,-1019161490,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-dec\x22,\x22unchecked-dec\x22,2095823150,null),\x22null\x22,new cljs.core.Symbol(null,\x22double-array\x22,\x22double-array\x22,257035726,null),\x22null\x22,new cljs.core.Symbol(null,\x22float\x22,\x22float\x22,-91857841,null),\x22null\x22,new cljs.core.Symbol(null,\x22-\x22,\x22-\x22,-471816912,null),\x22null\x22,new cljs.core.Symbol(null,\x22byte-array\x22,\x22byte-array\x22,2009690064,null),\x22null\x22,new cljs.core.Symbol(null,\x22zero?\x22,\x22zero?\x22,325758897,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-dec-int\x22,\x22unchecked-dec-int\x22,1339067442,null),\x22null\x22,new cljs.core.Symbol(null,\x22rem\x22,\x22rem\x22,664046770,null),\x22null\x22,new cljs.core.Symbol(null,\x22nth\x22,\x22nth\x22,1529209554,null),\x22null\x22,new cljs.core.Symbol(null,\x22nil?\x22,\x22nil?\x22,1612038930,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-and\x22,\x22bit-and\x22,-479352589,null),\x22null\x22,new cljs.core.Symbol(null,\x22*\x27\x22,\x22*\x27\x22,-1403126253,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-add\x22,\x22unchecked-add\x22,-2030665965,null),\x22null\x22,new cljs.core.Symbol(null,\x22identical?\x22,\x22identical?\x22,-745864205,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-divide-int\x22,\x22unchecked-divide-int\x22,1613116468,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-subtract\x22,\x22unchecked-subtract\x22,-2137458667,null),\x22null\x22,new cljs.core.Symbol(null,\x22/\x22,\x22/\x22,-1371932971,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-or\x22,\x22bit-or\x22,-1144943723,null),\x22null\x22,new cljs.core.Symbol(null,\x22\x3e\x3d\x22,\x22\x3e\x3d\x22,1016916022,null),\x22null\x22,new cljs.core.Symbol(null,\x22long-array\x22,\x22long-array\x22,217579190,null),\x22null\x22,new cljs.core.Symbol(null,\x22object-array\x22,\x22object-array\x22,206434647,null),\x22null\x22,new cljs.core.Symbol(null,\x22doubles\x22,\x22doubles\x22,-1517872169,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-byte\x22,\x22unchecked-byte\x22,1091664664,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-short\x22,\x22unchecked-short\x22,27848057,null),\x22null\x22,new cljs.core.Symbol(null,\x22float-array\x22,\x22float-array\x22,2043038265,null),\x22null\x22,new cljs.core.Symbol(null,\x22inc\x22,\x22inc\x22,324505433,null),\x22null\x22,new cljs.core.Symbol(null,\x22+\x22,\x22+\x22,-740910886,null),\x22null\x22,new cljs.core.Symbol(null,\x22aset\x22,\x22aset\x22,900773178,null),\x22null\x22,new cljs.core.Symbol(null,\x22chars\x22,\x22chars\x22,545901210,null),\x22null\x22,new cljs.core.Symbol(null,\x22ints\x22,\x22ints\x22,-1761239845,null),\x22null\x22,new cljs.core.Symbol(null,\x22bit-not\x22,\x22bit-not\x22,1508529851,null),\x22null\x22,new cljs.core.Symbol(null,\x22byte\x22,\x22byte\x22,-1970660549,null),\x22null\x22,new cljs.core.Symbol(null,\x22max\x22,\x22max\x22,1701898075,null),\x22null\x22,new cljs.core.Symbol(null,\x22\x3d\x3d\x22,\x22\x3d\x3d\x22,-234118149,null),\x22null\x22,new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),\x22null\x22,new cljs.core.Symbol(null,\x22char-array\x22,\x22char-array\x22,1338149341,null),\x22null\x22,new cljs.core.Symbol(null,\x22compare\x22,\x22compare\x22,1109853757,null),\x22null\x22,new cljs.core.Symbol(null,\x22shorts\x22,\x22shorts\x22,107738238,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-negate-int\x22,\x22unchecked-negate-int\x22,-825297602,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-inc\x22,\x22unchecked-inc\x22,-1170131490,null),\x22null\x22,new cljs.core.Symbol(null,\x22unchecked-char\x22,\x22unchecked-char\x22,1662742943,null),\x22null\x22,new cljs.core.Symbol(null,\x22bytes\x22,\x22bytes\x22,-1478569089,null),\x22null\x22], null), null);\nsci.impl.namespaces.macrofy \x3d (function sci$impl$namespaces$macrofy(f){\nreturn cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$2(f,(function (p1__59811_SHARP_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(p1__59811_SHARP_,new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true);\n}));\n});\nsci.impl.namespaces.__GT__STAR_ \x3d (function sci$impl$namespaces$__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62396 \x3d arguments.length;\nvar i__4772__auto___62397 \x3d (0);\nwhile(true){\nif((i__4772__auto___62397 \x3c len__4771__auto___62396)){\nargs__4777__auto__.push((arguments[i__4772__auto___62397]));\n\nvar G__62398 \x3d (i__4772__auto___62397 + (1));\ni__4772__auto___62397 \x3d G__62398;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,x,forms){\nvar x__$1 \x3d x;\nvar forms__$1 \x3d forms;\nwhile(true){\nif(cljs.core.truth_(forms__$1)){\nvar form \x3d cljs.core.first(forms__$1);\nvar threaded \x3d ((cljs.core.seq_QMARK_(form))?cljs.core.with_meta(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,cljs.core.first(form),null,(1),null)),(new cljs.core.List(null,x__$1,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.next(form)], 0)))),cljs.core.meta(form)):(new cljs.core.List(null,form,(new cljs.core.List(null,x__$1,null,(1),null)),(2),null)));\nvar G__62401 \x3d threaded;\nvar G__62402 \x3d cljs.core.next(forms__$1);\nx__$1 \x3d G__62401;\nforms__$1 \x3d G__62402;\ncontinue;\n} else {\nreturn x__$1;\n}\nbreak;\n}\n}));\n\n(sci.impl.namespaces.__GT__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.__GT__STAR_.cljs$lang$applyTo \x3d (function (seq59812){\nvar G__59813 \x3d cljs.core.first(seq59812);\nvar seq59812__$1 \x3d cljs.core.next(seq59812);\nvar G__59814 \x3d cljs.core.first(seq59812__$1);\nvar seq59812__$2 \x3d cljs.core.next(seq59812__$1);\nvar G__59815 \x3d cljs.core.first(seq59812__$2);\nvar seq59812__$3 \x3d cljs.core.next(seq59812__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59813,G__59814,G__59815,seq59812__$3);\n}));\n\nsci.impl.namespaces.__GT__GT__STAR_ \x3d (function sci$impl$namespaces$__GT__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62405 \x3d arguments.length;\nvar i__4772__auto___62406 \x3d (0);\nwhile(true){\nif((i__4772__auto___62406 \x3c len__4771__auto___62405)){\nargs__4777__auto__.push((arguments[i__4772__auto___62406]));\n\nvar G__62407 \x3d (i__4772__auto___62406 + (1));\ni__4772__auto___62406 \x3d G__62407;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.__GT__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.__GT__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,x,forms){\nvar x__$1 \x3d x;\nvar forms__$1 \x3d forms;\nwhile(true){\nif(cljs.core.truth_(forms__$1)){\nvar form \x3d cljs.core.first(forms__$1);\nvar threaded \x3d ((cljs.core.seq_QMARK_(form))?cljs.core.with_meta(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,cljs.core.first(form),null,(1),null)),cljs.core.next(form),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,x__$1,null,(1),null))], 0)))),cljs.core.meta(form)):(new cljs.core.List(null,form,(new cljs.core.List(null,x__$1,null,(1),null)),(2),null)));\nvar G__62408 \x3d threaded;\nvar G__62409 \x3d cljs.core.next(forms__$1);\nx__$1 \x3d G__62408;\nforms__$1 \x3d G__62409;\ncontinue;\n} else {\nreturn x__$1;\n}\nbreak;\n}\n}));\n\n(sci.impl.namespaces.__GT__GT__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.__GT__GT__STAR_.cljs$lang$applyTo \x3d (function (seq59816){\nvar G__59817 \x3d cljs.core.first(seq59816);\nvar seq59816__$1 \x3d cljs.core.next(seq59816);\nvar G__59818 \x3d cljs.core.first(seq59816__$1);\nvar seq59816__$2 \x3d cljs.core.next(seq59816__$1);\nvar G__59819 \x3d cljs.core.first(seq59816__$2);\nvar seq59816__$3 \x3d cljs.core.next(seq59816__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59817,G__59818,G__59819,seq59816__$3);\n}));\n\nsci.impl.namespaces.as__GT__STAR_ \x3d (function sci$impl$namespaces$as__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62411 \x3d arguments.length;\nvar i__4772__auto___62412 \x3d (0);\nwhile(true){\nif((i__4772__auto___62412 \x3c len__4771__auto___62411)){\nargs__4777__auto__.push((arguments[i__4772__auto___62412]));\n\nvar G__62413 \x3d (i__4772__auto___62412 + (1));\ni__4772__auto___62412 \x3d G__62413;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.namespaces.as__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.as__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,expr,name,forms){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,name,null,(1),null)),(new cljs.core.List(null,expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(name),cljs.core.butlast(forms))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,((cljs.core.empty_QMARK_(forms))?name:cljs.core.last(forms)),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.as__GT__STAR_.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.namespaces.as__GT__STAR_.cljs$lang$applyTo \x3d (function (seq59824){\nvar G__59825 \x3d cljs.core.first(seq59824);\nvar seq59824__$1 \x3d cljs.core.next(seq59824);\nvar G__59826 \x3d cljs.core.first(seq59824__$1);\nvar seq59824__$2 \x3d cljs.core.next(seq59824__$1);\nvar G__59827 \x3d cljs.core.first(seq59824__$2);\nvar seq59824__$3 \x3d cljs.core.next(seq59824__$2);\nvar G__59828 \x3d cljs.core.first(seq59824__$3);\nvar seq59824__$4 \x3d cljs.core.next(seq59824__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59825,G__59826,G__59827,G__59828,seq59824__$4);\n}));\n\nsci.impl.namespaces.comment_STAR_ \x3d (function sci$impl$namespaces$comment_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62416 \x3d arguments.length;\nvar i__4772__auto___62417 \x3d (0);\nwhile(true){\nif((i__4772__auto___62417 \x3c len__4771__auto___62416)){\nargs__4777__auto__.push((arguments[i__4772__auto___62417]));\n\nvar G__62418 \x3d (i__4772__auto___62417 + (1));\ni__4772__auto___62417 \x3d G__62418;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.comment_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.comment_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,_body){\nreturn null;\n}));\n\n(sci.impl.namespaces.comment_STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.comment_STAR_.cljs$lang$applyTo \x3d (function (seq59833){\nvar G__59834 \x3d cljs.core.first(seq59833);\nvar seq59833__$1 \x3d cljs.core.next(seq59833);\nvar G__59835 \x3d cljs.core.first(seq59833__$1);\nvar seq59833__$2 \x3d cljs.core.next(seq59833__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59834,G__59835,seq59833__$2);\n}));\n\nsci.impl.namespaces.dotimes_STAR_ \x3d (function sci$impl$namespaces$dotimes_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62419 \x3d arguments.length;\nvar i__4772__auto___62420 \x3d (0);\nwhile(true){\nif((i__4772__auto___62420 \x3c len__4771__auto___62419)){\nargs__4777__auto__.push((arguments[i__4772__auto___62420]));\n\nvar G__62421 \x3d (i__4772__auto___62420 + (1));\ni__4772__auto___62420 \x3d G__62421;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.dotimes_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.dotimes_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,bindings,body){\nif(cljs.core.vector_QMARK_(bindings)){\n} else {\nthrow (new Error(\x22Assert failed: (vector? bindings)\x22));\n}\n\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),cljs.core.count(bindings))){\n} else {\nthrow (new Error(\x22Assert failed: (\x3d 2 (count bindings))\x22));\n}\n\nvar i \x3d cljs.core.first(bindings);\nvar n \x3d cljs.core.second(bindings);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22n__59838__auto__\x22,\x22n__59838__auto__\x22,498177873,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22long\x22,\x22cljs.core/long\x22,241154833,null),null,(1),null)),(new cljs.core.List(null,n,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,sci.impl.utils.allowed_loop,null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,i,null,(1),null)),(new cljs.core.List(null,(0),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3c\x22,\x22cljs.core/\x3c\x22,1677496129,null),null,(1),null)),(new cljs.core.List(null,i,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22n__59838__auto__\x22,\x22n__59838__auto__\x22,498177873,null),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body,(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,sci.impl.utils.allowed_recur,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-inc\x22,\x22cljs.core/unchecked-inc\x22,-501313167,null),null,(1),null)),(new cljs.core.List(null,i,null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.dotimes_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.dotimes_STAR_.cljs$lang$applyTo \x3d (function (seq59839){\nvar G__59841 \x3d cljs.core.first(seq59839);\nvar seq59839__$1 \x3d cljs.core.next(seq59839);\nvar G__59842 \x3d cljs.core.first(seq59839__$1);\nvar seq59839__$2 \x3d cljs.core.next(seq59839__$1);\nvar G__59843 \x3d cljs.core.first(seq59839__$2);\nvar seq59839__$3 \x3d cljs.core.next(seq59839__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59841,G__59842,G__59843,seq59839__$3);\n}));\n\n/**\n * if-not from clojure.core\n */\nsci.impl.namespaces.if_not_STAR_ \x3d (function sci$impl$namespaces$if_not_STAR_(var_args){\nvar G__59852 \x3d arguments.length;\nswitch (G__59852) {\ncase 4:\nreturn sci.impl.namespaces.if_not_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ncase 5:\nreturn sci.impl.namespaces.if_not_STAR_.cljs$core$IFn$_invoke$arity$5((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.namespaces.if_not_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (_AMPERSAND_form,_AMPERSAND_env,test,then){\nreturn sci.impl.namespaces.if_not_STAR_.cljs$core$IFn$_invoke$arity$5(_AMPERSAND_form,_AMPERSAND_env,test,then,null);\n}));\n\n(sci.impl.namespaces.if_not_STAR_.cljs$core$IFn$_invoke$arity$5 \x3d (function (__AMPERSAND_form,__AMPERSAND_env,test,then,else$){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22not\x22,\x22cljs.core/not\x22,100665144,null),null,(1),null)),(new cljs.core.List(null,test,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,then,null,(1),null)),(new cljs.core.List(null,else$,null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.if_not_STAR_.cljs$lang$maxFixedArity \x3d 5);\n\nsci.impl.namespaces.when_STAR_ \x3d (function sci$impl$namespaces$when_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62429 \x3d arguments.length;\nvar i__4772__auto___62430 \x3d (0);\nwhile(true){\nif((i__4772__auto___62430 \x3c len__4771__auto___62429)){\nargs__4777__auto__.push((arguments[i__4772__auto___62430]));\n\nvar G__62431 \x3d (i__4772__auto___62430 + (1));\ni__4772__auto___62430 \x3d G__62431;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.when_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.when_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,test,body){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),(new cljs.core.List(null,test,(new cljs.core.List(null,cljs.core.cons(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),body),null,(1),null)),(2),null)),(3),null));\n}));\n\n(sci.impl.namespaces.when_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.when_STAR_.cljs$lang$applyTo \x3d (function (seq59856){\nvar G__59857 \x3d cljs.core.first(seq59856);\nvar seq59856__$1 \x3d cljs.core.next(seq59856);\nvar G__59858 \x3d cljs.core.first(seq59856__$1);\nvar seq59856__$2 \x3d cljs.core.next(seq59856__$1);\nvar G__59859 \x3d cljs.core.first(seq59856__$2);\nvar seq59856__$3 \x3d cljs.core.next(seq59856__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59857,G__59858,G__59859,seq59856__$3);\n}));\n\n/**\n * when-not from clojure.core\n */\nsci.impl.namespaces.when_not_STAR_ \x3d (function sci$impl$namespaces$when_not_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62432 \x3d arguments.length;\nvar i__4772__auto___62433 \x3d (0);\nwhile(true){\nif((i__4772__auto___62433 \x3c len__4771__auto___62432)){\nargs__4777__auto__.push((arguments[i__4772__auto___62433]));\n\nvar G__62434 \x3d (i__4772__auto___62433 + (1));\ni__4772__auto___62433 \x3d G__62434;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.when_not_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.when_not_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,test,body){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),(new cljs.core.List(null,test,(new cljs.core.List(null,null,(new cljs.core.List(null,cljs.core.cons(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),body),null,(1),null)),(2),null)),(3),null)),(4),null));\n}));\n\n(sci.impl.namespaces.when_not_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.when_not_STAR_.cljs$lang$applyTo \x3d (function (seq59862){\nvar G__59863 \x3d cljs.core.first(seq59862);\nvar seq59862__$1 \x3d cljs.core.next(seq59862);\nvar G__59864 \x3d cljs.core.first(seq59862__$1);\nvar seq59862__$2 \x3d cljs.core.next(seq59862__$1);\nvar G__59865 \x3d cljs.core.first(seq59862__$2);\nvar seq59862__$3 \x3d cljs.core.next(seq59862__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59863,G__59864,G__59865,seq59862__$3);\n}));\n\n/**\n * doto from clojure.core\n */\nsci.impl.namespaces.doto_STAR_ \x3d (function sci$impl$namespaces$doto_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62436 \x3d arguments.length;\nvar i__4772__auto___62437 \x3d (0);\nwhile(true){\nif((i__4772__auto___62437 \x3c len__4771__auto___62436)){\nargs__4777__auto__.push((arguments[i__4772__auto___62437]));\n\nvar G__62438 \x3d (i__4772__auto___62437 + (1));\ni__4772__auto___62437 \x3d G__62438;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.doto_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.doto_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,x,forms){\nvar gx \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,gx,null,(1),null)),(new cljs.core.List(null,x,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (f){\nreturn cljs.core.with_meta(((cljs.core.seq_QMARK_(f))?cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,cljs.core.first(f),null,(1),null)),(new cljs.core.List(null,gx,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.next(f)], 0)))):cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,f,null,(1),null)),(new cljs.core.List(null,gx,null,(1),null)))))),cljs.core.meta(f));\n}),forms),(new cljs.core.List(null,gx,null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.doto_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.doto_STAR_.cljs$lang$applyTo \x3d (function (seq59866){\nvar G__59867 \x3d cljs.core.first(seq59866);\nvar seq59866__$1 \x3d cljs.core.next(seq59866);\nvar G__59868 \x3d cljs.core.first(seq59866__$1);\nvar seq59866__$2 \x3d cljs.core.next(seq59866__$1);\nvar G__59869 \x3d cljs.core.first(seq59866__$2);\nvar seq59866__$3 \x3d cljs.core.next(seq59866__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59867,G__59868,G__59869,seq59866__$3);\n}));\n\nsci.impl.namespaces.cond_STAR_ \x3d (function sci$impl$namespaces$cond_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62443 \x3d arguments.length;\nvar i__4772__auto___62444 \x3d (0);\nwhile(true){\nif((i__4772__auto___62444 \x3c len__4771__auto___62443)){\nargs__4777__auto__.push((arguments[i__4772__auto___62444]));\n\nvar G__62445 \x3d (i__4772__auto___62444 + (1));\ni__4772__auto___62444 \x3d G__62445;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.cond_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.cond_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,clauses){\nif(cljs.core.truth_(clauses)){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),(new cljs.core.List(null,cljs.core.first(clauses),(new cljs.core.List(null,((cljs.core.next(clauses))?cljs.core.second(clauses):(function(){throw (new Error(\x22cond requires an even number of forms\x22))})()),(new cljs.core.List(null,cljs.core.cons(new cljs.core.Symbol(\x22clojure.core\x22,\x22cond\x22,\x22clojure.core/cond\x22,1906951420,null),cljs.core.next(cljs.core.next(clauses))),null,(1),null)),(2),null)),(3),null)),(4),null));\n} else {\nreturn null;\n}\n}));\n\n(sci.impl.namespaces.cond_STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.cond_STAR_.cljs$lang$applyTo \x3d (function (seq59870){\nvar G__59871 \x3d cljs.core.first(seq59870);\nvar seq59870__$1 \x3d cljs.core.next(seq59870);\nvar G__59872 \x3d cljs.core.first(seq59870__$1);\nvar seq59870__$2 \x3d cljs.core.next(seq59870__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59871,G__59872,seq59870__$2);\n}));\n\nsci.impl.namespaces.cond__GT__STAR_ \x3d (function sci$impl$namespaces$cond__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62450 \x3d arguments.length;\nvar i__4772__auto___62451 \x3d (0);\nwhile(true){\nif((i__4772__auto___62451 \x3c len__4771__auto___62450)){\nargs__4777__auto__.push((arguments[i__4772__auto___62451]));\n\nvar G__62452 \x3d (i__4772__auto___62451 + (1));\ni__4772__auto___62451 \x3d G__62452;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.cond__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.cond__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,expr,clauses){\nif(cljs.core.even_QMARK_(cljs.core.count(clauses))){\n} else {\nthrow (new Error(\x22Assert failed: (even? (count clauses))\x22));\n}\n\nvar g \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\nvar steps \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__59880){\nvar vec__59883 \x3d p__59880;\nvar test \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59883,(0),null);\nvar step \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59883,(1),null);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,test,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22-\x3e\x22,\x22cljs.core/-\x3e\x22,1488366311,null),null,(1),null)),(new cljs.core.List(null,g,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,step,null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,g,null,(1),null))], 0))));\n}),cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),clauses));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,g,null,(1),null)),(new cljs.core.List(null,expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(g),cljs.core.butlast(steps))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,((cljs.core.empty_QMARK_(steps))?g:cljs.core.last(steps)),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.cond__GT__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.cond__GT__STAR_.cljs$lang$applyTo \x3d (function (seq59873){\nvar G__59874 \x3d cljs.core.first(seq59873);\nvar seq59873__$1 \x3d cljs.core.next(seq59873);\nvar G__59875 \x3d cljs.core.first(seq59873__$1);\nvar seq59873__$2 \x3d cljs.core.next(seq59873__$1);\nvar G__59876 \x3d cljs.core.first(seq59873__$2);\nvar seq59873__$3 \x3d cljs.core.next(seq59873__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59874,G__59875,G__59876,seq59873__$3);\n}));\n\nsci.impl.namespaces.cond__GT__GT__STAR_ \x3d (function sci$impl$namespaces$cond__GT__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62459 \x3d arguments.length;\nvar i__4772__auto___62460 \x3d (0);\nwhile(true){\nif((i__4772__auto___62460 \x3c len__4771__auto___62459)){\nargs__4777__auto__.push((arguments[i__4772__auto___62460]));\n\nvar G__62461 \x3d (i__4772__auto___62460 + (1));\ni__4772__auto___62460 \x3d G__62461;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.cond__GT__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.cond__GT__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,expr,clauses){\nif(cljs.core.even_QMARK_(cljs.core.count(clauses))){\n} else {\nthrow (new Error(\x22Assert failed: (even? (count clauses))\x22));\n}\n\nvar g \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\nvar steps \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p__59900){\nvar vec__59901 \x3d p__59900;\nvar test \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59901,(0),null);\nvar step \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59901,(1),null);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,test,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22-\x3e\x3e\x22,\x22cljs.core/-\x3e\x3e\x22,-1207871206,null),null,(1),null)),(new cljs.core.List(null,g,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,step,null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,g,null,(1),null))], 0))));\n}),cljs.core.partition.cljs$core$IFn$_invoke$arity$2((2),clauses));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,g,null,(1),null)),(new cljs.core.List(null,expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(g),cljs.core.butlast(steps))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,((cljs.core.empty_QMARK_(steps))?g:cljs.core.last(steps)),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.cond__GT__GT__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.cond__GT__GT__STAR_.cljs$lang$applyTo \x3d (function (seq59890){\nvar G__59891 \x3d cljs.core.first(seq59890);\nvar seq59890__$1 \x3d cljs.core.next(seq59890);\nvar G__59892 \x3d cljs.core.first(seq59890__$1);\nvar seq59890__$2 \x3d cljs.core.next(seq59890__$1);\nvar G__59893 \x3d cljs.core.first(seq59890__$2);\nvar seq59890__$3 \x3d cljs.core.next(seq59890__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59891,G__59892,G__59893,seq59890__$3);\n}));\n\nsci.impl.namespaces.if_let_STAR_ \x3d (function sci$impl$namespaces$if_let_STAR_(var_args){\nvar G__59926 \x3d arguments.length;\nswitch (G__59926) {\ncase 4:\nreturn sci.impl.namespaces.if_let_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___62463 \x3d arguments.length;\nvar i__4772__auto___62464 \x3d (0);\nwhile(true){\nif((i__4772__auto___62464 \x3c len__4771__auto___62463)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___62464]));\n\nvar G__62465 \x3d (i__4772__auto___62464 + (1));\ni__4772__auto___62464 \x3d G__62465;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((5)),(0),null));\nreturn sci.impl.namespaces.if_let_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),argseq__4793__auto__);\n\n}\n});\n\n(sci.impl.namespaces.if_let_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (_AMPERSAND_form,_AMPERSAND_env,bindings,then){\nreturn sci.impl.namespaces.if_let_STAR_(_AMPERSAND_form,_AMPERSAND_env,bindings,then,null);\n}));\n\n(sci.impl.namespaces.if_let_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,bindings,then,else$,_oldform){\nvar form \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((0)) : bindings.call(null,(0)));\nvar tst \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((1)) : bindings.call(null,(1)));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59914__auto__\x22,\x22temp__59914__auto__\x22,732646213,null),null,(1),null)),(new cljs.core.List(null,tst,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59914__auto__\x22,\x22temp__59914__auto__\x22,732646213,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,form,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59914__auto__\x22,\x22temp__59914__auto__\x22,732646213,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,then,null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,else$,null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n/** @this {Function} */\n(sci.impl.namespaces.if_let_STAR_.cljs$lang$applyTo \x3d (function (seq59919){\nvar G__59920 \x3d cljs.core.first(seq59919);\nvar seq59919__$1 \x3d cljs.core.next(seq59919);\nvar G__59921 \x3d cljs.core.first(seq59919__$1);\nvar seq59919__$2 \x3d cljs.core.next(seq59919__$1);\nvar G__59922 \x3d cljs.core.first(seq59919__$2);\nvar seq59919__$3 \x3d cljs.core.next(seq59919__$2);\nvar G__59923 \x3d cljs.core.first(seq59919__$3);\nvar seq59919__$4 \x3d cljs.core.next(seq59919__$3);\nvar G__59924 \x3d cljs.core.first(seq59919__$4);\nvar seq59919__$5 \x3d cljs.core.next(seq59919__$4);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59920,G__59921,G__59922,G__59923,G__59924,seq59919__$5);\n}));\n\n(sci.impl.namespaces.if_let_STAR_.cljs$lang$maxFixedArity \x3d (5));\n\nsci.impl.namespaces.if_some_STAR_ \x3d (function sci$impl$namespaces$if_some_STAR_(var_args){\nvar G__59956 \x3d arguments.length;\nswitch (G__59956) {\ncase 4:\nreturn sci.impl.namespaces.if_some_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___62468 \x3d arguments.length;\nvar i__4772__auto___62469 \x3d (0);\nwhile(true){\nif((i__4772__auto___62469 \x3c len__4771__auto___62468)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___62469]));\n\nvar G__62470 \x3d (i__4772__auto___62469 + (1));\ni__4772__auto___62469 \x3d G__62470;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((5)),(0),null));\nreturn sci.impl.namespaces.if_some_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),(arguments[(4)]),argseq__4793__auto__);\n\n}\n});\n\n(sci.impl.namespaces.if_some_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (_AMPERSAND_form,_AMPERSAND_env,bindings,then){\nreturn sci.impl.namespaces.if_some_STAR_(_AMPERSAND_form,_AMPERSAND_env,bindings,then,null);\n}));\n\n(sci.impl.namespaces.if_some_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,bindings,then,else$,_oldform){\nvar form \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((0)) : bindings.call(null,(0)));\nvar tst \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((1)) : bindings.call(null,(1)));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59945__auto__\x22,\x22temp__59945__auto__\x22,168874840,null),null,(1),null)),(new cljs.core.List(null,tst,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nil?\x22,\x22cljs.core/nil?\x22,945071861,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59945__auto__\x22,\x22temp__59945__auto__\x22,168874840,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,else$,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,form,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59945__auto__\x22,\x22temp__59945__auto__\x22,168874840,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,then,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n/** @this {Function} */\n(sci.impl.namespaces.if_some_STAR_.cljs$lang$applyTo \x3d (function (seq59948){\nvar G__59949 \x3d cljs.core.first(seq59948);\nvar seq59948__$1 \x3d cljs.core.next(seq59948);\nvar G__59950 \x3d cljs.core.first(seq59948__$1);\nvar seq59948__$2 \x3d cljs.core.next(seq59948__$1);\nvar G__59951 \x3d cljs.core.first(seq59948__$2);\nvar seq59948__$3 \x3d cljs.core.next(seq59948__$2);\nvar G__59952 \x3d cljs.core.first(seq59948__$3);\nvar seq59948__$4 \x3d cljs.core.next(seq59948__$3);\nvar G__59954 \x3d cljs.core.first(seq59948__$4);\nvar seq59948__$5 \x3d cljs.core.next(seq59948__$4);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59949,G__59950,G__59951,G__59952,G__59954,seq59948__$5);\n}));\n\n(sci.impl.namespaces.if_some_STAR_.cljs$lang$maxFixedArity \x3d (5));\n\nsci.impl.namespaces.when_let_STAR_ \x3d (function sci$impl$namespaces$when_let_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62472 \x3d arguments.length;\nvar i__4772__auto___62475 \x3d (0);\nwhile(true){\nif((i__4772__auto___62475 \x3c len__4771__auto___62472)){\nargs__4777__auto__.push((arguments[i__4772__auto___62475]));\n\nvar G__62476 \x3d (i__4772__auto___62475 + (1));\ni__4772__auto___62475 \x3d G__62476;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.when_let_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.when_let_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,bindings,body){\nvar form \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((0)) : bindings.call(null,(0)));\nvar tst \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((1)) : bindings.call(null,(1)));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59970__auto__\x22,\x22temp__59970__auto__\x22,515219787,null),null,(1),null)),(new cljs.core.List(null,tst,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59970__auto__\x22,\x22temp__59970__auto__\x22,515219787,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,form,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59970__auto__\x22,\x22temp__59970__auto__\x22,515219787,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.when_let_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.when_let_STAR_.cljs$lang$applyTo \x3d (function (seq59971){\nvar G__59972 \x3d cljs.core.first(seq59971);\nvar seq59971__$1 \x3d cljs.core.next(seq59971);\nvar G__59973 \x3d cljs.core.first(seq59971__$1);\nvar seq59971__$2 \x3d cljs.core.next(seq59971__$1);\nvar G__59974 \x3d cljs.core.first(seq59971__$2);\nvar seq59971__$3 \x3d cljs.core.next(seq59971__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59972,G__59973,G__59974,seq59971__$3);\n}));\n\nsci.impl.namespaces.when_first_STAR_ \x3d (function sci$impl$namespaces$when_first_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62480 \x3d arguments.length;\nvar i__4772__auto___62481 \x3d (0);\nwhile(true){\nif((i__4772__auto___62481 \x3c len__4771__auto___62480)){\nargs__4777__auto__.push((arguments[i__4772__auto___62481]));\n\nvar G__62482 \x3d (i__4772__auto___62481 + (1));\ni__4772__auto___62481 \x3d G__62482;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.when_first_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.when_first_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,bindings,body){\nvar vec__59991 \x3d bindings;\nvar x \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59991,(0),null);\nvar xs \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__59991,(1),null);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when-let\x22,\x22cljs.core/when-let\x22,-2049838349,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22xs__59981__auto__\x22,\x22xs__59981__auto__\x22,1488536159,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22seq\x22,\x22cljs.core/seq\x22,-1649497689,null),null,(1),null)),(new cljs.core.List(null,xs,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,x,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22first\x22,\x22cljs.core/first\x22,-752535972,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22xs__59981__auto__\x22,\x22xs__59981__auto__\x22,1488536159,null),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.when_first_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.when_first_STAR_.cljs$lang$applyTo \x3d (function (seq59983){\nvar G__59984 \x3d cljs.core.first(seq59983);\nvar seq59983__$1 \x3d cljs.core.next(seq59983);\nvar G__59985 \x3d cljs.core.first(seq59983__$1);\nvar seq59983__$2 \x3d cljs.core.next(seq59983__$1);\nvar G__59986 \x3d cljs.core.first(seq59983__$2);\nvar seq59983__$3 \x3d cljs.core.next(seq59983__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59984,G__59985,G__59986,seq59983__$3);\n}));\n\nsci.impl.namespaces.when_some_STAR_ \x3d (function sci$impl$namespaces$when_some_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62487 \x3d arguments.length;\nvar i__4772__auto___62488 \x3d (0);\nwhile(true){\nif((i__4772__auto___62488 \x3c len__4771__auto___62487)){\nargs__4777__auto__.push((arguments[i__4772__auto___62488]));\n\nvar G__62489 \x3d (i__4772__auto___62488 + (1));\ni__4772__auto___62488 \x3d G__62489;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.when_some_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.when_some_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,bindings,body){\nvar form \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((0)) : bindings.call(null,(0)));\nvar tst \x3d (bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((1)) : bindings.call(null,(1)));\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59996__auto__\x22,\x22temp__59996__auto__\x22,-1576614383,null),null,(1),null)),(new cljs.core.List(null,tst,null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nil?\x22,\x22cljs.core/nil?\x22,945071861,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59996__auto__\x22,\x22temp__59996__auto__\x22,-1576614383,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,null,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,form,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22temp__59996__auto__\x22,\x22temp__59996__auto__\x22,-1576614383,null),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.when_some_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.when_some_STAR_.cljs$lang$applyTo \x3d (function (seq59997){\nvar G__59998 \x3d cljs.core.first(seq59997);\nvar seq59997__$1 \x3d cljs.core.next(seq59997);\nvar G__59999 \x3d cljs.core.first(seq59997__$1);\nvar seq59997__$2 \x3d cljs.core.next(seq59997__$1);\nvar G__60000 \x3d cljs.core.first(seq59997__$2);\nvar seq59997__$3 \x3d cljs.core.next(seq59997__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__59998,G__59999,G__60000,seq59997__$3);\n}));\n\nsci.impl.namespaces.some__GT__STAR_ \x3d (function sci$impl$namespaces$some__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62494 \x3d arguments.length;\nvar i__4772__auto___62495 \x3d (0);\nwhile(true){\nif((i__4772__auto___62495 \x3c len__4771__auto___62494)){\nargs__4777__auto__.push((arguments[i__4772__auto___62495]));\n\nvar G__62496 \x3d (i__4772__auto___62495 + (1));\ni__4772__auto___62495 \x3d G__62496;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.some__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.some__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (__AMPERSAND_form,__AMPERSAND_env,expr,forms){\nvar g \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\nvar steps \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (step){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nil?\x22,\x22cljs.core/nil?\x22,945071861,null),null,(1),null)),(new cljs.core.List(null,g,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,null,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22-\x3e\x22,\x22cljs.core/-\x3e\x22,1488366311,null),null,(1),null)),(new cljs.core.List(null,g,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,step,null,(1),null))], 0)))),null,(1),null))], 0))));\n}),forms);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,g,null,(1),null)),(new cljs.core.List(null,expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(g),cljs.core.butlast(steps))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,((cljs.core.empty_QMARK_(steps))?g:cljs.core.last(steps)),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.some__GT__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.some__GT__STAR_.cljs$lang$applyTo \x3d (function (seq60013){\nvar G__60014 \x3d cljs.core.first(seq60013);\nvar seq60013__$1 \x3d cljs.core.next(seq60013);\nvar G__60015 \x3d cljs.core.first(seq60013__$1);\nvar seq60013__$2 \x3d cljs.core.next(seq60013__$1);\nvar G__60016 \x3d cljs.core.first(seq60013__$2);\nvar seq60013__$3 \x3d cljs.core.next(seq60013__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60014,G__60015,G__60016,seq60013__$3);\n}));\n\nsci.impl.namespaces.some__GT__GT__STAR_ \x3d (function sci$impl$namespaces$some__GT__GT__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62499 \x3d arguments.length;\nvar i__4772__auto___62500 \x3d (0);\nwhile(true){\nif((i__4772__auto___62500 \x3c len__4771__auto___62499)){\nargs__4777__auto__.push((arguments[i__4772__auto___62500]));\n\nvar G__62502 \x3d (i__4772__auto___62500 + (1));\ni__4772__auto___62500 \x3d G__62502;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.some__GT__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.some__GT__GT__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,expr,forms){\nvar g \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\nvar steps \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (step){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22nil?\x22,\x22cljs.core/nil?\x22,945071861,null),null,(1),null)),(new cljs.core.List(null,g,null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,null,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22-\x3e\x3e\x22,\x22cljs.core/-\x3e\x3e\x22,-1207871206,null),null,(1),null)),(new cljs.core.List(null,g,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,step,null,(1),null))], 0)))),null,(1),null))], 0))));\n}),forms);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,g,null,(1),null)),(new cljs.core.List(null,expr,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(g),cljs.core.butlast(steps))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,((cljs.core.empty_QMARK_(steps))?g:cljs.core.last(steps)),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.some__GT__GT__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.some__GT__GT__STAR_.cljs$lang$applyTo \x3d (function (seq60037){\nvar G__60038 \x3d cljs.core.first(seq60037);\nvar seq60037__$1 \x3d cljs.core.next(seq60037);\nvar G__60039 \x3d cljs.core.first(seq60037__$1);\nvar seq60037__$2 \x3d cljs.core.next(seq60037__$1);\nvar G__60040 \x3d cljs.core.first(seq60037__$2);\nvar seq60037__$3 \x3d cljs.core.next(seq60037__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60038,G__60039,G__60040,seq60037__$3);\n}));\n\nsci.impl.namespaces.ex_message \x3d (function (){var temp__5751__auto__ \x3d (((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.ex_message !\x3d\x3d \x27undefined\x27))?(new cljs.core.Var((function (){\nreturn cljs.core.ex_message;\n}),cljs.core.with_meta(new cljs.core.Symbol(\x22cljs.core\x22,\x22ex-message\x22,\x22cljs.core/ex-message\x22,-747602175,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.analyzer\x22,\x22no-resolve\x22,\x22cljs.analyzer/no-resolve\x22,-1872351017),true], null)),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ex-message\x22,\x22ex-message\x22,-1128293394,null),\x22cljs/core.cljs\x22,17,1,11498,11498,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ex\x22,\x22ex\x22,226760186,null)], null)),\x22Returns the message attached to the given Error / ExceptionInfo object.\\n  For non-Errors returns nil.\x22,(cljs.core.truth_(cljs.core.ex_message)?cljs.core.ex_message.cljs$lang$test:null)]))):null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreturn cljs.core.deref(v);\n} else {\nreturn (function sci$impl$namespaces$ex_message(ex){\nif((ex instanceof Error)){\nreturn ex.message;\n} else {\nreturn null;\n}\n});\n}\n})();\nsci.impl.namespaces.ex_cause \x3d (function (){var temp__5751__auto__ \x3d (((typeof cljs !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core !\x3d\x3d \x27undefined\x27) \x26\x26 (typeof cljs.core.ex_cause !\x3d\x3d \x27undefined\x27))?(new cljs.core.Var((function (){\nreturn cljs.core.ex_cause;\n}),cljs.core.with_meta(new cljs.core.Symbol(\x22cljs.core\x22,\x22ex-cause\x22,\x22cljs.core/ex-cause\x22,1843478517,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22cljs.analyzer\x22,\x22no-resolve\x22,\x22cljs.analyzer/no-resolve\x22,-1872351017),true], null)),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ex-cause\x22,\x22ex-cause\x22,95392590,null),\x22cljs/core.cljs\x22,15,1,11505,11505,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ex\x22,\x22ex\x22,226760186,null)], null)),\x22Returns exception cause (an Error / ExceptionInfo) if ex is an\\n  ExceptionInfo.\\n  Otherwise returns nil.\x22,(cljs.core.truth_(cljs.core.ex_cause)?cljs.core.ex_cause.cljs$lang$test:null)]))):null);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar v \x3d temp__5751__auto__;\nreturn cljs.core.deref(v);\n} else {\nreturn (function sci$impl$namespaces$ex_message(ex){\nif((ex instanceof cljs.core.ExceptionInfo)){\nreturn ex.cause;\n} else {\nreturn null;\n}\n});\n}\n})();\nsci.impl.namespaces.assert_STAR_ \x3d (function sci$impl$namespaces$assert_STAR_(var_args){\nvar G__60076 \x3d arguments.length;\nswitch (G__60076) {\ncase 3:\nreturn sci.impl.namespaces.assert_STAR_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn sci.impl.namespaces.assert_STAR_.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.namespaces.assert_STAR_.cljs$core$IFn$_invoke$arity$3 \x3d (function (__AMPERSAND_form,_,x){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when-not\x22,\x22cljs.core/when-not\x22,-556141047,null),null,(1),null)),(new cljs.core.List(null,x,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22js\x22,\x22Error.\x22,\x22js/Error.\x22,750655924,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,\x22Assert failed: \x22,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22pr-str\x22,\x22cljs.core/pr-str\x22,-552799478,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,x,null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))))),null,(1),null))))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.assert_STAR_.cljs$core$IFn$_invoke$arity$4 \x3d (function (__AMPERSAND_form,_,x,message){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when-not\x22,\x22cljs.core/when-not\x22,-556141047,null),null,(1),null)),(new cljs.core.List(null,x,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22js\x22,\x22Error.\x22,\x22js/Error.\x22,750655924,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,\x22Assert failed: \x22,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,message,null,(1),null)),(new cljs.core.List(null,\x22\\n\x22,null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22pr-str\x22,\x22cljs.core/pr-str\x22,-552799478,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,x,null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))))),null,(1),null))))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.assert_STAR_.cljs$lang$maxFixedArity \x3d 4);\n\nsci.impl.namespaces.with_open_STAR_ \x3d (function sci$impl$namespaces$with_open_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62518 \x3d arguments.length;\nvar i__4772__auto___62519 \x3d (0);\nwhile(true){\nif((i__4772__auto___62519 \x3c len__4771__auto___62518)){\nargs__4777__auto__.push((arguments[i__4772__auto___62519]));\n\nvar G__62520 \x3d (i__4772__auto___62519 + (1));\ni__4772__auto___62519 \x3d G__62520;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.with_open_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.with_open_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,bindings,body){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(cljs.core.count(bindings),(0))){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),body)));\n} else {\nif(((bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((0)) : bindings.call(null,(0))) instanceof cljs.core.Symbol)){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.subvec.cljs$core$IFn$_invoke$arity$3(bindings,(0),(2)),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22with-open\x22,\x22sci.impl.namespaces/with-open\x22,-1695932508,null),null,(1),null)),(new cljs.core.List(null,cljs.core.subvec.cljs$core$IFn$_invoke$arity$2(bindings,(2)),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22finally\x22,\x22finally\x22,-1065347064,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22.close\x22,\x22.close\x22,-1017758745,null),null,(1),null)),(new cljs.core.List(null,(bindings.cljs$core$IFn$_invoke$arity$1 ? bindings.cljs$core$IFn$_invoke$arity$1((0)) : bindings.call(null,(0))),null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n} else {\nreturn new cljs.core.Keyword(\x22sci.impl.namespaces\x22,\x22TODO\x22,\x22sci.impl.namespaces/TODO\x22,-1842365958);\n\n}\n}\n}));\n\n(sci.impl.namespaces.with_open_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.with_open_STAR_.cljs$lang$applyTo \x3d (function (seq60085){\nvar G__60086 \x3d cljs.core.first(seq60085);\nvar seq60085__$1 \x3d cljs.core.next(seq60085);\nvar G__60087 \x3d cljs.core.first(seq60085__$1);\nvar seq60085__$2 \x3d cljs.core.next(seq60085__$1);\nvar G__60088 \x3d cljs.core.first(seq60085__$2);\nvar seq60085__$3 \x3d cljs.core.next(seq60085__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60086,G__60087,G__60088,seq60085__$3);\n}));\n\nsci.impl.namespaces.letfn_STAR_ \x3d (function sci$impl$namespaces$letfn_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62525 \x3d arguments.length;\nvar i__4772__auto___62527 \x3d (0);\nwhile(true){\nif((i__4772__auto___62527 \x3c len__4771__auto___62525)){\nargs__4777__auto__.push((arguments[i__4772__auto___62527]));\n\nvar G__62528 \x3d (i__4772__auto___62527 + (1));\ni__4772__auto___62527 \x3d G__62528;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.letfn_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.letfn_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,fnspecs,body){\nvar syms \x3d cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,fnspecs);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(syms,cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(cljs.core.list(new cljs.core.Symbol(\x22clojure.core\x22,\x22-new-var\x22,\x22clojure.core/-new-var\x22,363339052,null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.map.cljs$core$IFn$_invoke$arity$3((function (sym,fn_spec){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22alter-var-root\x22,\x22cljs.core/alter-var-root\x22,-1342668238,null),null,(1),null)),(new cljs.core.List(null,sym,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22constantly\x22,\x22cljs.core/constantly\x22,119002258,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,sym,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.rest(fn_spec)], 0)))),null,(1),null))))),null,(1),null))], 0))));\n}),syms,fnspecs),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(syms,cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (sym){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22var-get\x22,\x22cljs.core/var-get\x22,-91823622,null),null,(1),null)),(new cljs.core.List(null,sym,null,(1),null)))));\n}),syms))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.letfn_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.letfn_STAR_.cljs$lang$applyTo \x3d (function (seq60102){\nvar G__60103 \x3d cljs.core.first(seq60102);\nvar seq60102__$1 \x3d cljs.core.next(seq60102);\nvar G__60104 \x3d cljs.core.first(seq60102__$1);\nvar seq60102__$2 \x3d cljs.core.next(seq60102__$1);\nvar G__60105 \x3d cljs.core.first(seq60102__$2);\nvar seq60102__$3 \x3d cljs.core.next(seq60102__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60103,G__60104,G__60105,seq60102__$3);\n}));\n\nsci.impl.namespaces.with_local_vars_STAR_ \x3d (function sci$impl$namespaces$with_local_vars_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62532 \x3d arguments.length;\nvar i__4772__auto___62533 \x3d (0);\nwhile(true){\nif((i__4772__auto___62533 \x3c len__4771__auto___62532)){\nargs__4777__auto__.push((arguments[i__4772__auto___62533]));\n\nvar G__62534 \x3d (i__4772__auto___62533 + (1));\ni__4772__auto___62533 \x3d G__62534;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.with_local_vars_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.with_local_vars_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (form,_,name_vals_vec,body){\nif(cljs.core.vector_QMARK_(name_vals_vec)){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22with-local-vars requires a vector for its bindings\x22,form);\n}\n\nif(cljs.core.even_QMARK_(cljs.core.count(name_vals_vec))){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22with-local-vars requires an even number of forms in binding vector\x22,form);\n}\n\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1(cljs.core.interleave.cljs$core$IFn$_invoke$arity$2(cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),name_vals_vec),cljs.core.repeat.cljs$core$IFn$_invoke$arity$1(cljs.core.list(new cljs.core.Symbol(\x22clojure.core\x22,\x22-new-dynamic-var\x22,\x22clojure.core/-new-dynamic-var\x22,-1873937019,null)))))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22push-thread-bindings\x22,\x22cljs.core/push-thread-bindings\x22,-703482450,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-map\x22,\x22cljs.core/hash-map\x22,303385767,null),null,(1),null)),name_vals_vec))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),null,(1),null)),body,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22finally\x22,\x22finally\x22,-1065347064,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22pop-thread-bindings\x22,\x22cljs.core/pop-thread-bindings\x22,-1994943347,null),null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.with_local_vars_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.with_local_vars_STAR_.cljs$lang$applyTo \x3d (function (seq60131){\nvar G__60132 \x3d cljs.core.first(seq60131);\nvar seq60131__$1 \x3d cljs.core.next(seq60131);\nvar G__60133 \x3d cljs.core.first(seq60131__$1);\nvar seq60131__$2 \x3d cljs.core.next(seq60131__$1);\nvar G__60134 \x3d cljs.core.first(seq60131__$2);\nvar seq60131__$3 \x3d cljs.core.next(seq60131__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60132,G__60133,G__60134,seq60131__$3);\n}));\n\nsci.impl.namespaces.vswap_BANG__STAR_ \x3d (function sci$impl$namespaces$vswap_BANG__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62541 \x3d arguments.length;\nvar i__4772__auto___62542 \x3d (0);\nwhile(true){\nif((i__4772__auto___62542 \x3c len__4771__auto___62541)){\nargs__4777__auto__.push((arguments[i__4772__auto___62542]));\n\nvar G__62544 \x3d (i__4772__auto___62542 + (1));\ni__4772__auto___62542 \x3d G__62544;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.vswap_BANG__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.vswap_BANG__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (vol,f,args){\nreturn cljs.core.vreset_BANG_(vol,cljs.core.apply.cljs$core$IFn$_invoke$arity$3(f,cljs.core.deref(vol),args));\n}));\n\n(sci.impl.namespaces.vswap_BANG__STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.vswap_BANG__STAR_.cljs$lang$applyTo \x3d (function (seq60145){\nvar G__60148 \x3d cljs.core.first(seq60145);\nvar seq60145__$1 \x3d cljs.core.next(seq60145);\nvar G__60149 \x3d cljs.core.first(seq60145__$1);\nvar seq60145__$2 \x3d cljs.core.next(seq60145__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60148,G__60149,seq60145__$2);\n}));\n\nsci.impl.namespaces.delay_STAR_ \x3d (function sci$impl$namespaces$delay_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62546 \x3d arguments.length;\nvar i__4772__auto___62547 \x3d (0);\nwhile(true){\nif((i__4772__auto___62547 \x3c len__4771__auto___62546)){\nargs__4777__auto__.push((arguments[i__4772__auto___62547]));\n\nvar G__62548 \x3d (i__4772__auto___62547 + (1));\ni__4772__auto___62547 \x3d G__62548;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.delay_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.delay_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,body){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22cljs.core.Delay\x22,\x22cljs.core.Delay\x22,-1917476777,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.delay_STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.delay_STAR_.cljs$lang$applyTo \x3d (function (seq60157){\nvar G__60160 \x3d cljs.core.first(seq60157);\nvar seq60157__$1 \x3d cljs.core.next(seq60157);\nvar G__60163 \x3d cljs.core.first(seq60157__$1);\nvar seq60157__$2 \x3d cljs.core.next(seq60157__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60160,G__60163,seq60157__$2);\n}));\n\nsci.impl.namespaces.defn__STAR_ \x3d (function sci$impl$namespaces$defn__STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62559 \x3d arguments.length;\nvar i__4772__auto___62560 \x3d (0);\nwhile(true){\nif((i__4772__auto___62560 \x3c len__4771__auto___62559)){\nargs__4777__auto__.push((arguments[i__4772__auto___62560]));\n\nvar G__62561 \x3d (i__4772__auto___62560 + (1));\ni__4772__auto___62560 \x3d G__62561;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.defn__STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.defn__STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,name,decls){\nreturn cljs.core.list_STAR_.cljs$core$IFn$_invoke$arity$3(new cljs.core.Symbol(\x22cljs.core\x22,\x22defn\x22,\x22cljs.core/defn\x22,-1606493717,null),cljs.core.with_meta(name,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.meta(name),new cljs.core.Keyword(null,\x22private\x22,\x22private\x22,-558947994),true)),decls);\n}));\n\n(sci.impl.namespaces.defn__STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.defn__STAR_.cljs$lang$applyTo \x3d (function (seq60171){\nvar G__60172 \x3d cljs.core.first(seq60171);\nvar seq60171__$1 \x3d cljs.core.next(seq60171);\nvar G__60173 \x3d cljs.core.first(seq60171__$1);\nvar seq60171__$2 \x3d cljs.core.next(seq60171__$1);\nvar G__60174 \x3d cljs.core.first(seq60171__$2);\nvar seq60171__$3 \x3d cljs.core.next(seq60171__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60172,G__60173,G__60174,seq60171__$3);\n}));\n\nsci.impl.namespaces.condp_STAR_ \x3d (function sci$impl$namespaces$condp_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62564 \x3d arguments.length;\nvar i__4772__auto___62565 \x3d (0);\nwhile(true){\nif((i__4772__auto___62565 \x3c len__4771__auto___62564)){\nargs__4777__auto__.push((arguments[i__4772__auto___62565]));\n\nvar G__62567 \x3d (i__4772__auto___62565 + (1));\ni__4772__auto___62565 \x3d G__62567;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.namespaces.condp_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.condp_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,pred,expr,clauses){\nvar gpred \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22pred__\x22);\nvar gexpr \x3d cljs.core.gensym.cljs$core$IFn$_invoke$arity$1(\x22expr__\x22);\nvar emit \x3d (function sci$impl$namespaces$emit(pred__$1,expr__$1,args){\nvar vec__60192 \x3d cljs.core.split_at(((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22\x3e\x3e\x22,\x22\x3e\x3e\x22,-277509267),cljs.core.second(args)))?(3):(2)),args);\nvar vec__60195 \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60192,(0),null);\nvar a \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60195,(0),null);\nvar b \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60195,(1),null);\nvar c \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60195,(2),null);\nvar clause \x3d vec__60195;\nvar more \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60192,(1),null);\nvar n \x3d cljs.core.count(clause);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((0),n)){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22throw\x22,\x22throw\x22,595905694,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22new\x22,\x22new\x22,-444906321,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(\x22js\x22,\x22Error\x22,\x22js/Error\x22,-1692659266,null),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,\x22No matching clause: \x22,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,expr__$1,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null)))));\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),n)){\nreturn a;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((2),n)){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22if\x22,\x22if\x22,1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,pred__$1,null,(1),null)),(new cljs.core.List(null,a,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,expr__$1,null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,b,null,(1),null)),(new cljs.core.List(null,sci$impl$namespaces$emit(pred__$1,expr__$1,more),null,(1),null))], 0))));\n} else {\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22if-let\x22,\x22cljs.core/if-let\x22,1346583165,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22p__60181__auto__\x22,\x22p__60181__auto__\x22,108866257,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,pred__$1,null,(1),null)),(new cljs.core.List(null,a,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,expr__$1,null,(1),null))], 0)))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,c,null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22p__60181__auto__\x22,\x22p__60181__auto__\x22,108866257,null),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,sci$impl$namespaces$emit(pred__$1,expr__$1,more),null,(1),null))], 0))));\n\n}\n}\n}\n});\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,gpred,null,(1),null)),(new cljs.core.List(null,pred,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,gexpr,null,(1),null)),(new cljs.core.List(null,expr,null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,emit(gpred,gexpr,clauses),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.condp_STAR_.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.namespaces.condp_STAR_.cljs$lang$applyTo \x3d (function (seq60182){\nvar G__60183 \x3d cljs.core.first(seq60182);\nvar seq60182__$1 \x3d cljs.core.next(seq60182);\nvar G__60184 \x3d cljs.core.first(seq60182__$1);\nvar seq60182__$2 \x3d cljs.core.next(seq60182__$1);\nvar G__60185 \x3d cljs.core.first(seq60182__$2);\nvar seq60182__$3 \x3d cljs.core.next(seq60182__$2);\nvar G__60186 \x3d cljs.core.first(seq60182__$3);\nvar seq60182__$4 \x3d cljs.core.next(seq60182__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60183,G__60184,G__60185,G__60186,seq60182__$4);\n}));\n\nsci.impl.namespaces.defonce_STAR_ \x3d (function sci$impl$namespaces$defonce_STAR_(_,___$1,name,expr){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22v__60216__auto__\x22,\x22v__60216__auto__\x22,-1824449479,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),null,(1),null)),(new cljs.core.List(null,name,null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when-not\x22,\x22cljs.core/when-not\x22,-556141047,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22has-root-impl\x22,\x22has-root-impl\x22,-288948659,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22v__60216__auto__\x22,\x22v__60216__auto__\x22,-1824449479,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22def\x22,\x22def\x22,597100991,null),null,(1),null)),(new cljs.core.List(null,name,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,expr,null,(1),null))], 0)))),null,(1),null))], 0)))),null,(1),null))], 0))));\n});\nsci.impl.namespaces.while_STAR_ \x3d (function sci$impl$namespaces$while_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62585 \x3d arguments.length;\nvar i__4772__auto___62587 \x3d (0);\nwhile(true){\nif((i__4772__auto___62587 \x3c len__4771__auto___62585)){\nargs__4777__auto__.push((arguments[i__4772__auto___62587]));\n\nvar G__62588 \x3d (i__4772__auto___62587 + (1));\ni__4772__auto___62587 \x3d G__62588;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.while_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.while_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,test,body){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22loop\x22,\x22cljs.core/loop\x22,-1829423021,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,test,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body,(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(null,\x22recur\x22,\x22recur\x22,1202958259,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.while_STAR_.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.while_STAR_.cljs$lang$applyTo \x3d (function (seq60226){\nvar G__60227 \x3d cljs.core.first(seq60226);\nvar seq60226__$1 \x3d cljs.core.next(seq60226);\nvar G__60228 \x3d cljs.core.first(seq60226__$1);\nvar seq60226__$2 \x3d cljs.core.next(seq60226__$1);\nvar G__60229 \x3d cljs.core.first(seq60226__$2);\nvar seq60226__$3 \x3d cljs.core.next(seq60226__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60227,G__60228,G__60229,seq60226__$3);\n}));\n\nsci.impl.namespaces.double_dot \x3d (function sci$impl$namespaces$double_dot(var_args){\nvar G__60251 \x3d arguments.length;\nswitch (G__60251) {\ncase 4:\nreturn sci.impl.namespaces.double_dot.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nvar args_arr__4792__auto__ \x3d [];\nvar len__4771__auto___62593 \x3d arguments.length;\nvar i__4772__auto___62594 \x3d (0);\nwhile(true){\nif((i__4772__auto___62594 \x3c len__4771__auto___62593)){\nargs_arr__4792__auto__.push((arguments[i__4772__auto___62594]));\n\nvar G__62597 \x3d (i__4772__auto___62594 + (1));\ni__4772__auto___62594 \x3d G__62597;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4793__auto__ \x3d (new cljs.core.IndexedSeq(args_arr__4792__auto__.slice((4)),(0),null));\nreturn sci.impl.namespaces.double_dot.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4793__auto__);\n\n}\n});\n\n(sci.impl.namespaces.double_dot.cljs$core$IFn$_invoke$arity$4 \x3d (function (_,___$1,x,form){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),null,(1),null)),(new cljs.core.List(null,x,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,form,null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.double_dot.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,x,form,more){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22..\x22,\x22..\x22,-300507420,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22.\x22,\x22.\x22,1975675962,null),null,(1),null)),(new cljs.core.List(null,x,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,form,null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([more], 0))));\n}));\n\n/** @this {Function} */\n(sci.impl.namespaces.double_dot.cljs$lang$applyTo \x3d (function (seq60246){\nvar G__60247 \x3d cljs.core.first(seq60246);\nvar seq60246__$1 \x3d cljs.core.next(seq60246);\nvar G__60248 \x3d cljs.core.first(seq60246__$1);\nvar seq60246__$2 \x3d cljs.core.next(seq60246__$1);\nvar G__60249 \x3d cljs.core.first(seq60246__$2);\nvar seq60246__$3 \x3d cljs.core.next(seq60246__$2);\nvar G__60250 \x3d cljs.core.first(seq60246__$3);\nvar seq60246__$4 \x3d cljs.core.next(seq60246__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60247,G__60248,G__60249,G__60250,seq60246__$4);\n}));\n\n(sci.impl.namespaces.double_dot.cljs$lang$maxFixedArity \x3d (4));\n\nsci.impl.namespaces.lazy_cat_STAR_ \x3d (function sci$impl$namespaces$lazy_cat_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62599 \x3d arguments.length;\nvar i__4772__auto___62600 \x3d (0);\nwhile(true){\nif((i__4772__auto___62600 \x3c len__4771__auto___62599)){\nargs__4777__auto__.push((arguments[i__4772__auto___62600]));\n\nvar G__62601 \x3d (i__4772__auto___62600 + (1));\ni__4772__auto___62600 \x3d G__62601;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.lazy_cat_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.lazy_cat_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,colls){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22concat\x22,\x22cljs.core/concat\x22,-1133584918,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__60261_SHARP_){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22lazy-seq\x22,\x22cljs.core/lazy-seq\x22,627681297,null),(new cljs.core.List(null,p1__60261_SHARP_,null,(1),null)),(2),null));\n}),colls))));\n}));\n\n(sci.impl.namespaces.lazy_cat_STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.lazy_cat_STAR_.cljs$lang$applyTo \x3d (function (seq60266){\nvar G__60267 \x3d cljs.core.first(seq60266);\nvar seq60266__$1 \x3d cljs.core.next(seq60266);\nvar G__60268 \x3d cljs.core.first(seq60266__$1);\nvar seq60266__$2 \x3d cljs.core.next(seq60266__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60267,G__60268,seq60266__$2);\n}));\n\nsci.impl.namespaces.has_root_impl \x3d (function sci$impl$namespaces$has_root_impl(sci_var){\nreturn sci.impl.vars.hasRoot(sci_var);\n});\nsci.impl.namespaces.sci_ns_name \x3d (function sci$impl$namespaces$sci_ns_name(ns){\nreturn ns.sci$impl$vars$HasName$getName$arity$1(null);\n});\nsci.impl.namespaces.sci_alias \x3d (function sci$impl$namespaces$sci_alias(ctx,alias_sym,ns_sym){\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),(function (env){\nvar current_ns \x3d sci.impl.vars.current_ns_name();\nreturn cljs.core.assoc_in(env,new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),current_ns,new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714),alias_sym], null),ns_sym);\n}));\n\nreturn null;\n});\nsci.impl.namespaces.sci_find_ns \x3d (function sci$impl$namespaces$sci_find_ns(ctx,ns_sym){\nif((ns_sym instanceof cljs.core.Symbol)){\n} else {\nthrow (new Error(\x22Assert failed: (symbol? ns-sym)\x22));\n}\n\nreturn sci.impl.utils.namespace_object(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),ns_sym,false,null);\n});\nsci.impl.namespaces.sci_the_ns \x3d (function sci$impl$namespaces$sci_the_ns(ctx,x){\nif((x instanceof sci.impl.vars.SciNamespace)){\nreturn x;\n} else {\nvar or__4160__auto__ \x3d sci.impl.namespaces.sci_find_ns(ctx,x);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nthrow (new Error([\x22No namespace: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(x),\x22 found\x22].join(\x27\x27)));\n}\n}\n});\nsci.impl.namespaces.sci_ns_aliases \x3d (function sci$impl$namespaces$sci_ns_aliases(ctx,sci_ns){\nvar sci_ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,sci_ns);\nvar name \x3d sci.impl.namespaces.sci_ns_name(sci_ns__$1);\nvar aliases \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),name,new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714)], null));\nreturn cljs.core.zipmap(cljs.core.keys(aliases),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (sym){\nreturn sci.impl.vars.__GT_SciNamespace(sym,null);\n}),cljs.core.vals(aliases)));\n});\nsci.impl.namespaces.clean_ns \x3d (function sci$impl$namespaces$clean_ns(m){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$variadic(m,new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),new cljs.core.Keyword(null,\x22refer\x22,\x22refer\x22,-964295553),new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809)], 0));\n});\nsci.impl.namespaces.sci_ns_interns \x3d (function sci$impl$namespaces$sci_ns_interns(ctx,sci_ns){\nvar sci_ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,sci_ns);\nvar name \x3d sci.impl.namespaces.sci_ns_name(sci_ns__$1);\nvar m \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),name], null));\nvar m__$1 \x3d sci.impl.namespaces.clean_ns(m);\nreturn m__$1;\n});\nsci.impl.namespaces.sci_ns_publics \x3d (function sci$impl$namespaces$sci_ns_publics(ctx,sci_ns){\nvar sci_ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,sci_ns);\nvar name \x3d sci.impl.namespaces.sci_ns_name(sci_ns__$1);\nvar m \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),name], null));\nvar m__$1 \x3d sci.impl.namespaces.clean_ns(m);\nreturn cljs.core.into.cljs$core$IFn$_invoke$arity$2(cljs.core.PersistentArrayMap.EMPTY,cljs.core.keep.cljs$core$IFn$_invoke$arity$2((function (p__60345){\nvar vec__60346 \x3d p__60345;\nvar k \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60346,(0),null);\nvar v \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60346,(1),null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22private\x22,\x22private\x22,-558947994).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(v)))){\nreturn null;\n} else {\nreturn new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null);\n}\n}),m__$1));\n});\nsci.impl.namespaces.sci_ns_imports \x3d (function sci$impl$namespaces$sci_ns_imports(ctx,sci_ns){\nvar sci_ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,sci_ns);\nvar name \x3d sci.impl.namespaces.sci_ns_name(sci_ns__$1);\nvar env \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar global_imports \x3d new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394).cljs$core$IFn$_invoke$arity$1(env);\nvar namespace_imports \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),name,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394)], null));\nvar class_opts \x3d new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477).cljs$core$IFn$_invoke$arity$1(ctx);\nvar all_aliased \x3d cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.keys(global_imports),cljs.core.keys(namespace_imports));\nvar all_imports \x3d cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.vals(global_imports),cljs.core.vals(namespace_imports));\nreturn cljs.core.zipmap(all_aliased,cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.comp.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996),(function (p1__60349_SHARP_){\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(class_opts,p1__60349_SHARP_);\n})),all_imports));\n});\nsci.impl.namespaces.sci_ns_refers \x3d (function sci$impl$namespaces$sci_ns_refers(ctx,sci_ns){\nvar sci_ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,sci_ns);\nvar name \x3d sci.impl.namespaces.sci_ns_name(sci_ns__$1);\nvar env \x3d cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx));\nvar refers \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),name,new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809)], null));\nvar clojure_core \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null)], null));\nvar clojure_core__$1 \x3d sci.impl.namespaces.clean_ns(clojure_core);\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([clojure_core__$1,refers], 0));\n});\nsci.impl.namespaces.sci_ns_map \x3d (function sci$impl$namespaces$sci_ns_map(ctx,sci_ns){\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.namespaces.sci_ns_interns(ctx,sci_ns),sci.impl.namespaces.sci_ns_refers(ctx,sci_ns),sci.impl.namespaces.sci_ns_imports(ctx,sci_ns)], 0));\n});\nsci.impl.namespaces.sci_ns_unmap \x3d (function sci$impl$namespaces$sci_ns_unmap(ctx,sci_ns,sym){\nif((sym instanceof cljs.core.Symbol)){\n} else {\nthrow (new Error(\x22Assert failed: (symbol? sym)\x22));\n}\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx),(function (env){\nvar sci_ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,sci_ns);\nvar name \x3d sci.impl.namespaces.sci_ns_name(sci_ns__$1);\nreturn cljs.core.update_in.cljs$core$IFn$_invoke$arity$3(env,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),name], null),(function (the_ns_map){\nif(cljs.core.contains_QMARK_(the_ns_map,sym)){\nreturn cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(the_ns_map,sym);\n} else {\nif(((cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394).cljs$core$IFn$_invoke$arity$1(env),sym)) || (cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394).cljs$core$IFn$_invoke$arity$1(the_ns_map),sym)))){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$5(the_ns_map,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),cljs.core.assoc,sym,null);\n} else {\nif(cljs.core.contains_QMARK_(new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809).cljs$core$IFn$_invoke$arity$1(the_ns_map),sym)){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(the_ns_map,new cljs.core.Keyword(null,\x22refers\x22,\x22refers\x22,158076809),cljs.core.dissoc,sym);\n} else {\nreturn the_ns_map;\n\n}\n}\n}\n}));\n}));\n\nreturn null;\n});\nsci.impl.namespaces.sci_all_ns \x3d (function sci$impl$namespaces$sci_all_ns(ctx){\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__60379_SHARP_){\nreturn sci.impl.utils.namespace_object(env,p1__60379_SHARP_,true,null);\n}),cljs.core.keys(cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(env),new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469))));\n});\nsci.impl.namespaces.sci_remove_ns \x3d (function sci$impl$namespaces$sci_remove_ns(ctx,sym){\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$variadic(env,cljs.core.update,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),cljs.core.dissoc,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sym], 0));\n\nreturn null;\n});\nsci.impl.namespaces.sci_intern \x3d (function sci$impl$namespaces$sci_intern(var_args){\nvar G__60397 \x3d arguments.length;\nswitch (G__60397) {\ncase 3:\nreturn sci.impl.namespaces.sci_intern.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn sci.impl.namespaces.sci_intern.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.namespaces.sci_intern.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,ns,var_sym){\nvar ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,ns);\nvar ns_name \x3d sci.impl.namespaces.sci_ns_name(ns__$1);\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar or__4160__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(env),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_name,var_sym], null));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar var_name \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name),cljs.core.str.cljs$core$IFn$_invoke$arity$1(var_sym));\nvar new_var \x3d sci.impl.vars.__GT_SciVar(null,var_name,cljs.core.meta(var_sym),false);\nnew_var.sci$impl$vars$IVar$unbind$arity$1(null);\n\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_name,var_sym], null),new_var);\n\nreturn new_var;\n}\n}));\n\n(sci.impl.namespaces.sci_intern.cljs$core$IFn$_invoke$arity$4 \x3d (function (ctx,ns,var_sym,val){\nvar ns__$1 \x3d sci.impl.namespaces.sci_the_ns(ctx,ns);\nvar ns_name \x3d sci.impl.namespaces.sci_ns_name(ns__$1);\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar or__4160__auto__ \x3d (function (){var temp__5753__auto__ \x3d cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(env),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_name,var_sym], null));\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nsci.impl.vars.bindRoot(v,val);\n\nreturn v;\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar var_name \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name),cljs.core.str.cljs$core$IFn$_invoke$arity$1(var_sym));\nvar new_var \x3d sci.impl.vars.__GT_SciVar(val,var_name,cljs.core.meta(var_sym),false);\ncljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(env,cljs.core.assoc_in,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),ns_name,var_sym], null),new_var);\n\nreturn new_var;\n}\n}));\n\n(sci.impl.namespaces.sci_intern.cljs$lang$maxFixedArity \x3d 4);\n\nsci.impl.namespaces.sci_bound_QMARK_ \x3d (function sci$impl$namespaces$sci_bound_QMARK_(sci_var){\nvar or__4160__auto__ \x3d sci.impl.vars.hasRoot(sci_var);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn (((!((sci.impl.vars.get_thread_binding(sci_var) \x3d\x3d null)))) || (false));\n}\n});\nsci.impl.namespaces.require \x3d (function sci$impl$namespaces$require(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62642 \x3d arguments.length;\nvar i__4772__auto___62643 \x3d (0);\nwhile(true){\nif((i__4772__auto___62643 \x3c len__4771__auto___62642)){\nargs__4777__auto__.push((arguments[i__4772__auto___62643]));\n\nvar G__62644 \x3d (i__4772__auto___62643 + (1));\ni__4772__auto___62643 \x3d G__62644;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.namespaces.require.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.require.cljs$core$IFn$_invoke$arity$variadic \x3d (function (sci_ctx,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(sci.impl.utils.eval_require_state),sci_ctx,args);\n}));\n\n(sci.impl.namespaces.require.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.namespaces.require.cljs$lang$applyTo \x3d (function (seq60416){\nvar G__60417 \x3d cljs.core.first(seq60416);\nvar seq60416__$1 \x3d cljs.core.next(seq60416);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60417,seq60416__$1);\n}));\n\nsci.impl.namespaces.use \x3d (function sci$impl$namespaces$use(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62646 \x3d arguments.length;\nvar i__4772__auto___62647 \x3d (0);\nwhile(true){\nif((i__4772__auto___62647 \x3c len__4771__auto___62646)){\nargs__4777__auto__.push((arguments[i__4772__auto___62647]));\n\nvar G__62648 \x3d (i__4772__auto___62647 + (1));\ni__4772__auto___62647 \x3d G__62648;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.namespaces.use.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.use.cljs$core$IFn$_invoke$arity$variadic \x3d (function (sci_ctx,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(sci.impl.utils.eval_use_state),sci_ctx,args);\n}));\n\n(sci.impl.namespaces.use.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.namespaces.use.cljs$lang$applyTo \x3d (function (seq60435){\nvar G__60436 \x3d cljs.core.first(seq60435);\nvar seq60435__$1 \x3d cljs.core.next(seq60435);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60436,seq60435__$1);\n}));\n\nsci.impl.namespaces.sci_resolve \x3d (function sci$impl$namespaces$sci_resolve(var_args){\nvar G__60457 \x3d arguments.length;\nswitch (G__60457) {\ncase 2:\nreturn sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$2 \x3d (function (sci_ctx,sym){\nvar fexpr__60458 \x3d cljs.core.deref(sci.impl.utils.eval_resolve_state);\nreturn (fexpr__60458.cljs$core$IFn$_invoke$arity$2 ? fexpr__60458.cljs$core$IFn$_invoke$arity$2(sci_ctx,sym) : fexpr__60458.call(null,sci_ctx,sym));\n}));\n\n(sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$3 \x3d (function (sci_ctx,env,sym){\nvar fexpr__60459 \x3d cljs.core.deref(sci.impl.utils.eval_resolve_state);\nreturn (fexpr__60459.cljs$core$IFn$_invoke$arity$3 ? fexpr__60459.cljs$core$IFn$_invoke$arity$3(sci_ctx,env,sym) : fexpr__60459.call(null,sci_ctx,env,sym));\n}));\n\n(sci.impl.namespaces.sci_resolve.cljs$lang$maxFixedArity \x3d 3);\n\nsci.impl.namespaces.sci_refer \x3d (function sci$impl$namespaces$sci_refer(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62654 \x3d arguments.length;\nvar i__4772__auto___62656 \x3d (0);\nwhile(true){\nif((i__4772__auto___62656 \x3c len__4771__auto___62654)){\nargs__4777__auto__.push((arguments[i__4772__auto___62656]));\n\nvar G__62658 \x3d (i__4772__auto___62656 + (1));\ni__4772__auto___62656 \x3d G__62658;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.namespaces.sci_refer.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_refer.cljs$core$IFn$_invoke$arity$variadic \x3d (function (sci_ctx,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$3(cljs.core.deref(sci.impl.utils.eval_refer_state),sci_ctx,args);\n}));\n\n(sci.impl.namespaces.sci_refer.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_refer.cljs$lang$applyTo \x3d (function (seq60461){\nvar G__60462 \x3d cljs.core.first(seq60461);\nvar seq60461__$1 \x3d cljs.core.next(seq60461);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60462,seq60461__$1);\n}));\n\nsci.impl.namespaces.sci_refer_clojure \x3d (function sci$impl$namespaces$sci_refer_clojure(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62662 \x3d arguments.length;\nvar i__4772__auto___62663 \x3d (0);\nwhile(true){\nif((i__4772__auto___62663 \x3c len__4771__auto___62662)){\nargs__4777__auto__.push((arguments[i__4772__auto___62663]));\n\nvar G__62664 \x3d (i__4772__auto___62663 + (1));\ni__4772__auto___62663 \x3d G__62664;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.sci_refer_clojure.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_refer_clojure.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,filters){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22refer\x22,\x22cljs.core/refer\x22,269577817,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([filters], 0))));\n}));\n\n(sci.impl.namespaces.sci_refer_clojure.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_refer_clojure.cljs$lang$applyTo \x3d (function (seq60485){\nvar G__60486 \x3d cljs.core.first(seq60485);\nvar seq60485__$1 \x3d cljs.core.next(seq60485);\nvar G__60487 \x3d cljs.core.first(seq60485__$1);\nvar seq60485__$2 \x3d cljs.core.next(seq60485__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60486,G__60487,seq60485__$2);\n}));\n\nsci.impl.namespaces.sci_ns_resolve \x3d (function sci$impl$namespaces$sci_ns_resolve(var_args){\nvar G__60498 \x3d arguments.length;\nswitch (G__60498) {\ncase 3:\nreturn sci.impl.namespaces.sci_ns_resolve.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ncase 4:\nreturn sci.impl.namespaces.sci_ns_resolve.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.namespaces.sci_ns_resolve.cljs$core$IFn$_invoke$arity$3 \x3d (function (sci_ctx,ns,sym){\nsci.impl.vars.push_thread_bindings(cljs.core.PersistentArrayMap.createAsIfByAssoc([sci.impl.vars.current_ns,sci.impl.namespaces.sci_the_ns(sci_ctx,ns)]));\n\ntry{return sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$2(sci_ctx,sym);\n}finally {sci.impl.vars.pop_thread_bindings();\n}}));\n\n(sci.impl.namespaces.sci_ns_resolve.cljs$core$IFn$_invoke$arity$4 \x3d (function (sci_ctx,ns,env,sym){\nsci.impl.vars.push_thread_bindings(cljs.core.PersistentArrayMap.createAsIfByAssoc([sci.impl.vars.current_ns,sci.impl.namespaces.sci_the_ns(sci_ctx,ns)]));\n\ntry{return sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$3(sci_ctx,env,sym);\n}finally {sci.impl.vars.pop_thread_bindings();\n}}));\n\n(sci.impl.namespaces.sci_ns_resolve.cljs$lang$maxFixedArity \x3d 4);\n\nsci.impl.namespaces.sci_requiring_resolve \x3d (function sci$impl$namespaces$sci_requiring_resolve(sci_ctx,sym){\nif(cljs.core.qualified_symbol_QMARK_(sym)){\nvar or__4160__auto__ \x3d sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$2(sci_ctx,sym);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar namespace \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.namespace(sym));\nsci.impl.namespaces.require.cljs$core$IFn$_invoke$arity$variadic(sci_ctx,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([namespace], 0));\n\nreturn sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$2(sci_ctx,sym);\n}\n} else {\nthrow (new Error([\x22Not a qualified symbol: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)].join(\x27\x27)));\n}\n});\nsci.impl.namespaces.sci_find_var \x3d (function sci$impl$namespaces$sci_find_var(sci_ctx,sym){\nif(cljs.core.qualified_symbol_QMARK_(sym)){\nvar nsname \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.namespace(sym));\nvar sym_SINGLEQUOTE_ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(sym));\nvar temp__5751__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(sci_ctx))),nsname);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar namespace \x3d temp__5751__auto__;\nreturn cljs.core.get.cljs$core$IFn$_invoke$arity$2(namespace,sym_SINGLEQUOTE_);\n} else {\nthrow (new Error([\x22No such namespace: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(nsname)].join(\x27\x27)));\n}\n} else {\nthrow (new Error([\x22Not a qualified symbol: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(sym)].join(\x27\x27)));\n}\n});\n/**\n * Takes a map of Var/value pairs. Installs for the given Vars the associated\n *   values as thread-local bindings. Then calls f with the supplied arguments.\n *   Pops the installed bindings after f returned. Returns whatever f returns.\n */\nsci.impl.namespaces.with_bindings_STAR_ \x3d (function sci$impl$namespaces$with_bindings_STAR_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62676 \x3d arguments.length;\nvar i__4772__auto___62677 \x3d (0);\nwhile(true){\nif((i__4772__auto___62677 \x3c len__4771__auto___62676)){\nargs__4777__auto__.push((arguments[i__4772__auto___62677]));\n\nvar G__62678 \x3d (i__4772__auto___62677 + (1));\ni__4772__auto___62677 \x3d G__62678;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.with_bindings_STAR_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.with_bindings_STAR_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (binding_map,f,args){\nsci.impl.vars.push_thread_bindings(binding_map);\n\ntry{return cljs.core.apply.cljs$core$IFn$_invoke$arity$2(f,args);\n}finally {sci.impl.vars.pop_thread_bindings();\n}}));\n\n(sci.impl.namespaces.with_bindings_STAR_.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.with_bindings_STAR_.cljs$lang$applyTo \x3d (function (seq60511){\nvar G__60512 \x3d cljs.core.first(seq60511);\nvar seq60511__$1 \x3d cljs.core.next(seq60511);\nvar G__60513 \x3d cljs.core.first(seq60511__$1);\nvar seq60511__$2 \x3d cljs.core.next(seq60511__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60512,G__60513,seq60511__$2);\n}));\n\nsci.impl.namespaces.sci_with_bindings \x3d (function sci$impl$namespaces$sci_with_bindings(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62682 \x3d arguments.length;\nvar i__4772__auto___62683 \x3d (0);\nwhile(true){\nif((i__4772__auto___62683 \x3c len__4771__auto___62682)){\nargs__4777__auto__.push((arguments[i__4772__auto___62683]));\n\nvar G__62684 \x3d (i__4772__auto___62683 + (1));\ni__4772__auto___62683 \x3d G__62684;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.sci_with_bindings.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_with_bindings.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,binding_map,body){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22with-bindings*\x22,\x22cljs.core/with-bindings*\x22,-768558084,null),null,(1),null)),(new cljs.core.List(null,binding_map,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.sci_with_bindings.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_with_bindings.cljs$lang$applyTo \x3d (function (seq60530){\nvar G__60531 \x3d cljs.core.first(seq60530);\nvar seq60530__$1 \x3d cljs.core.next(seq60530);\nvar G__60532 \x3d cljs.core.first(seq60530__$1);\nvar seq60530__$2 \x3d cljs.core.next(seq60530__$1);\nvar G__60533 \x3d cljs.core.first(seq60530__$2);\nvar seq60530__$3 \x3d cljs.core.next(seq60530__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60531,G__60532,G__60533,seq60530__$3);\n}));\n\nsci.impl.namespaces.sci_binding \x3d (function sci$impl$namespaces$sci_binding(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62689 \x3d arguments.length;\nvar i__4772__auto___62690 \x3d (0);\nwhile(true){\nif((i__4772__auto___62690 \x3c len__4771__auto___62689)){\nargs__4777__auto__.push((arguments[i__4772__auto___62690]));\n\nvar G__62691 \x3d (i__4772__auto___62690 + (1));\ni__4772__auto___62690 \x3d G__62691;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.sci_binding.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_binding.cljs$core$IFn$_invoke$arity$variadic \x3d (function (form,_,bindings,body){\nif(cljs.core.vector_QMARK_(bindings)){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22binding requires a vector for its bindings\x22,form);\n}\n\nif(cljs.core.even_QMARK_(cljs.core.count(bindings))){\n} else {\nsci.impl.utils.throw_error_with_location.cljs$core$IFn$_invoke$arity$2(\x22binding requires an even number of forms in binding vector\x22,form);\n}\n\nvar var_ize \x3d (function (var_vals){\nvar ret \x3d cljs.core.PersistentVector.EMPTY;\nvar vvs \x3d cljs.core.seq(var_vals);\nwhile(true){\nif(vvs){\nvar G__62694 \x3d cljs.core.conj.cljs$core$IFn$_invoke$arity$2(cljs.core.conj.cljs$core$IFn$_invoke$arity$2(ret,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),null,(1),null)),(new cljs.core.List(null,cljs.core.first(vvs),null,(1),null)))))),cljs.core.second(vvs));\nvar G__62695 \x3d cljs.core.next(cljs.core.next(vvs));\nret \x3d G__62694;\nvvs \x3d G__62695;\ncontinue;\n} else {\nreturn cljs.core.seq(ret);\n}\nbreak;\n}\n});\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22push-thread-bindings\x22,\x22cljs.core/push-thread-bindings\x22,-703482450,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-map\x22,\x22cljs.core/hash-map\x22,303385767,null),null,(1),null)),var_ize(bindings)))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22try\x22,\x22try\x22,-1273693247,null),null,(1),null)),body,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22finally\x22,\x22finally\x22,-1065347064,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22pop-thread-bindings\x22,\x22cljs.core/pop-thread-bindings\x22,-1994943347,null),null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.sci_binding.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_binding.cljs$lang$applyTo \x3d (function (seq60557){\nvar G__60558 \x3d cljs.core.first(seq60557);\nvar seq60557__$1 \x3d cljs.core.next(seq60557);\nvar G__60559 \x3d cljs.core.first(seq60557__$1);\nvar seq60557__$2 \x3d cljs.core.next(seq60557__$1);\nvar G__60560 \x3d cljs.core.first(seq60557__$2);\nvar seq60557__$3 \x3d cljs.core.next(seq60557__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60558,G__60559,G__60560,seq60557__$3);\n}));\n\n/**\n * Returns a function, which will install the same bindings in effect as in\n *   the thread at the time bound-fn* was called and then call f with any given\n *   arguments. This may be used to define a helper function which runs on a\n *   different thread, but needs the same bindings in place.\n */\nsci.impl.namespaces.bound_fn_STAR_ \x3d (function sci$impl$namespaces$bound_fn_STAR_(f){\nvar bindings \x3d sci.impl.vars.get_thread_bindings();\nreturn (function() { \nvar G__62703__delegate \x3d function (args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.namespaces.with_bindings_STAR_,bindings,f,args);\n};\nvar G__62703 \x3d function (var_args){\nvar args \x3d null;\nif (arguments.length \x3e 0) {\nvar G__62704__i \x3d 0, G__62704__a \x3d new Array(arguments.length -  0);\nwhile (G__62704__i \x3c G__62704__a.length) {G__62704__a[G__62704__i] \x3d arguments[G__62704__i + 0]; ++G__62704__i;}\n  args \x3d new cljs.core.IndexedSeq(G__62704__a,0,null);\n} \nreturn G__62703__delegate.call(this,args);};\nG__62703.cljs$lang$maxFixedArity \x3d 0;\nG__62703.cljs$lang$applyTo \x3d (function (arglist__62705){\nvar args \x3d cljs.core.seq(arglist__62705);\nreturn G__62703__delegate(args);\n});\nG__62703.cljs$core$IFn$_invoke$arity$variadic \x3d G__62703__delegate;\nreturn G__62703;\n})()\n;\n});\n/**\n * Returns a function defined by the given fntail, which will install the\n *   same bindings in effect as in the thread at the time bound-fn was called.\n *   This may be used to define a helper function which runs on a different\n *   thread, but needs the same bindings in place.\n */\nsci.impl.namespaces.sci_bound_fn \x3d (function sci$impl$namespaces$sci_bound_fn(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62709 \x3d arguments.length;\nvar i__4772__auto___62710 \x3d (0);\nwhile(true){\nif((i__4772__auto___62710 \x3c len__4771__auto___62709)){\nargs__4777__auto__.push((arguments[i__4772__auto___62710]));\n\nvar G__62712 \x3d (i__4772__auto___62710 + (1));\ni__4772__auto___62710 \x3d G__62712;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.impl.namespaces.sci_bound_fn.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_bound_fn.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,fntail){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22bound-fn*\x22,\x22cljs.core/bound-fn*\x22,-556238942,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),fntail))),null,(1),null)))));\n}));\n\n(sci.impl.namespaces.sci_bound_fn.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_bound_fn.cljs$lang$applyTo \x3d (function (seq60596){\nvar G__60608 \x3d cljs.core.first(seq60596);\nvar seq60596__$1 \x3d cljs.core.next(seq60596);\nvar G__60609 \x3d cljs.core.first(seq60596__$1);\nvar seq60596__$2 \x3d cljs.core.next(seq60596__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60608,G__60609,seq60596__$2);\n}));\n\nsci.impl.namespaces.sci_thread_bound_QMARK_ \x3d (function sci$impl$namespaces$sci_thread_bound_QMARK_(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62716 \x3d arguments.length;\nvar i__4772__auto___62717 \x3d (0);\nwhile(true){\nif((i__4772__auto___62717 \x3c len__4771__auto___62716)){\nargs__4777__auto__.push((arguments[i__4772__auto___62717]));\n\nvar G__62719 \x3d (i__4772__auto___62717 + (1));\ni__4772__auto___62717 \x3d G__62719;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((0) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((0)),(0),null)):null);\nreturn sci.impl.namespaces.sci_thread_bound_QMARK_.cljs$core$IFn$_invoke$arity$variadic(argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_thread_bound_QMARK_.cljs$core$IFn$_invoke$arity$variadic \x3d (function (vars){\nreturn cljs.core.every_QMARK_((function (p1__60624_SHARP_){\nreturn sci.impl.vars.get_thread_binding(p1__60624_SHARP_);\n}),vars);\n}));\n\n(sci.impl.namespaces.sci_thread_bound_QMARK_.cljs$lang$maxFixedArity \x3d (0));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_thread_bound_QMARK_.cljs$lang$applyTo \x3d (function (seq60625){\nvar self__4759__auto__ \x3d this;\nreturn self__4759__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq(seq60625));\n}));\n\nsci.impl.namespaces.sci_with_redefs_fn \x3d (function sci$impl$namespaces$sci_with_redefs_fn(binding_map,func){\nvar root_bind \x3d (function (m){\nvar seq__60642 \x3d cljs.core.seq(m);\nvar chunk__60643 \x3d null;\nvar count__60644 \x3d (0);\nvar i__60645 \x3d (0);\nwhile(true){\nif((i__60645 \x3c count__60644)){\nvar vec__60653 \x3d chunk__60643.cljs$core$IIndexed$_nth$arity$2(null,i__60645);\nvar a_var \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60653,(0),null);\nvar a_val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60653,(1),null);\nsci.impl.vars.bindRoot(a_var,a_val);\n\n\nvar G__62722 \x3d seq__60642;\nvar G__62723 \x3d chunk__60643;\nvar G__62724 \x3d count__60644;\nvar G__62725 \x3d (i__60645 + (1));\nseq__60642 \x3d G__62722;\nchunk__60643 \x3d G__62723;\ncount__60644 \x3d G__62724;\ni__60645 \x3d G__62725;\ncontinue;\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__60642);\nif(temp__5753__auto__){\nvar seq__60642__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__60642__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__60642__$1);\nvar G__62726 \x3d cljs.core.chunk_rest(seq__60642__$1);\nvar G__62727 \x3d c__4591__auto__;\nvar G__62728 \x3d cljs.core.count(c__4591__auto__);\nvar G__62729 \x3d (0);\nseq__60642 \x3d G__62726;\nchunk__60643 \x3d G__62727;\ncount__60644 \x3d G__62728;\ni__60645 \x3d G__62729;\ncontinue;\n} else {\nvar vec__60671 \x3d cljs.core.first(seq__60642__$1);\nvar a_var \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60671,(0),null);\nvar a_val \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__60671,(1),null);\nsci.impl.vars.bindRoot(a_var,a_val);\n\n\nvar G__62731 \x3d cljs.core.next(seq__60642__$1);\nvar G__62732 \x3d null;\nvar G__62733 \x3d (0);\nvar G__62734 \x3d (0);\nseq__60642 \x3d G__62731;\nchunk__60643 \x3d G__62732;\ncount__60644 \x3d G__62733;\ni__60645 \x3d G__62734;\ncontinue;\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\nvar old_vals \x3d cljs.core.zipmap(cljs.core.keys(binding_map),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__60627_SHARP_){\nreturn sci.impl.vars.getRawRoot(p1__60627_SHARP_);\n}),cljs.core.keys(binding_map)));\ntry{root_bind(binding_map);\n\nreturn (func.cljs$core$IFn$_invoke$arity$0 ? func.cljs$core$IFn$_invoke$arity$0() : func.call(null));\n}finally {root_bind(old_vals);\n}});\nsci.impl.namespaces.sci_with_redefs \x3d (function sci$impl$namespaces$sci_with_redefs(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62735 \x3d arguments.length;\nvar i__4772__auto___62736 \x3d (0);\nwhile(true){\nif((i__4772__auto___62736 \x3c len__4771__auto___62735)){\nargs__4777__auto__.push((arguments[i__4772__auto___62736]));\n\nvar G__62738 \x3d (i__4772__auto___62736 + (1));\ni__4772__auto___62736 \x3d G__62738;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((3) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((3)),(0),null)):null);\nreturn sci.impl.namespaces.sci_with_redefs.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.sci_with_redefs.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,bindings,body){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22with-redefs-fn\x22,\x22cljs.core/with-redefs-fn\x22,-1271194088,null),null,(1),null)),(new cljs.core.List(null,cljs.core.zipmap(cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__60674_SHARP_){\nreturn (new cljs.core.List(null,new cljs.core.Symbol(null,\x22var\x22,\x22var\x22,870848730,null),(new cljs.core.List(null,p1__60674_SHARP_,null,(1),null)),(2),null));\n}),cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),bindings)),cljs.core.take_nth.cljs$core$IFn$_invoke$arity$2((2),cljs.core.next(bindings))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22fn\x22,\x22cljs.core/fn\x22,-1065745098,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$0()))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([body], 0)))),null,(1),null))], 0))));\n}));\n\n(sci.impl.namespaces.sci_with_redefs.cljs$lang$maxFixedArity \x3d (3));\n\n/** @this {Function} */\n(sci.impl.namespaces.sci_with_redefs.cljs$lang$applyTo \x3d (function (seq60675){\nvar G__60676 \x3d cljs.core.first(seq60675);\nvar seq60675__$1 \x3d cljs.core.next(seq60675);\nvar G__60677 \x3d cljs.core.first(seq60675__$1);\nvar seq60675__$2 \x3d cljs.core.next(seq60675__$1);\nvar G__60678 \x3d cljs.core.first(seq60675__$2);\nvar seq60675__$3 \x3d cljs.core.next(seq60675__$2);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__60676,G__60677,G__60678,seq60675__$3);\n}));\n\n/**\n * Returns a Symbol with the given namespace and name. Arity-1 works\n *   on strings, keywords, and vars.\n */\nsci.impl.namespaces.symbol_STAR_ \x3d (function sci$impl$namespaces$symbol_STAR_(var_args){\nvar G__60697 \x3d arguments.length;\nswitch (G__60697) {\ncase 1:\nreturn sci.impl.namespaces.symbol_STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.impl.namespaces.symbol_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.namespaces.symbol_STAR_.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nif(sci.impl.vars.var_QMARK_(name)){\nvar m \x3d cljs.core.meta(name);\nvar ns \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(m);\nvar nm \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d ns;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn nm;\n} else {\nreturn and__4149__auto__;\n}\n})())){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.namespaces.sci_ns_name(ns)),cljs.core.name(nm));\n} else {\nreturn null;\n}\n} else {\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(name);\n}\n}));\n\n(sci.impl.namespaces.symbol_STAR_.cljs$core$IFn$_invoke$arity$2 \x3d (function (ns,name){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(ns,name);\n}));\n\n(sci.impl.namespaces.symbol_STAR_.cljs$lang$maxFixedArity \x3d 2);\n\nsci.impl.namespaces.macroexpand_STAR_ \x3d (function sci$impl$namespaces$macroexpand_STAR_(ctx,expr){\nvar fexpr__60716 \x3d cljs.core.deref(sci.impl.utils.macroexpand_STAR_);\nreturn (fexpr__60716.cljs$core$IFn$_invoke$arity$2 ? fexpr__60716.cljs$core$IFn$_invoke$arity$2(ctx,expr) : fexpr__60716.call(null,ctx,expr));\n});\nsci.impl.namespaces.macroexpand_1_STAR_ \x3d (function sci$impl$namespaces$macroexpand_1_STAR_(ctx,expr){\nvar fexpr__60717 \x3d cljs.core.deref(sci.impl.utils.macroexpand_1_STAR_);\nreturn (fexpr__60717.cljs$core$IFn$_invoke$arity$2 ? fexpr__60717.cljs$core$IFn$_invoke$arity$2(ctx,expr) : fexpr__60717.call(null,ctx,expr));\n});\nsci.impl.namespaces._STAR_1 \x3d sci.impl.vars.__GT_SciVar(null,new cljs.core.Symbol(null,\x22*1\x22,\x22*1\x22,2110258092,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.namespaces.clojure_core_ns,new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true], null),false);\nsci.impl.namespaces._STAR_2 \x3d sci.impl.vars.__GT_SciVar(null,new cljs.core.Symbol(null,\x22*2\x22,\x22*2\x22,1728229926,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.namespaces.clojure_core_ns,new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true], null),false);\nsci.impl.namespaces._STAR_3 \x3d sci.impl.vars.__GT_SciVar(null,new cljs.core.Symbol(null,\x22*3\x22,\x22*3\x22,105062009,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.namespaces.clojure_core_ns,new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true], null),false);\nsci.impl.namespaces._STAR_e \x3d sci.impl.vars.__GT_SciVar(null,new cljs.core.Symbol(null,\x22*e\x22,\x22*e\x22,329170866,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.namespaces.clojure_core_ns,new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true], null),false);\nsci.impl.namespaces.type \x3d (function sci$impl$namespaces$type(x){\nvar or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.meta(x),new cljs.core.Keyword(null,\x22type\x22,\x22type\x22,1174270348));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.type(x);\n}\n});\nsci.impl.namespaces.clojure_core \x3d cljs.core.PersistentHashMap.fromArrays([new cljs.core.Symbol(null,\x22unchecked-char\x22,\x22unchecked-char\x22,1662742943,null),new cljs.core.Symbol(null,\x22sorted-set\x22,\x22sorted-set\x22,992325424,null),new cljs.core.Symbol(null,\x22true?\x22,\x22true?\x22,-1600332395,null),new cljs.core.Symbol(null,\x22unchecked-byte\x22,\x22unchecked-byte\x22,1091664664,null),new cljs.core.Symbol(null,\x22*2\x22,\x22*2\x22,1728229926,null),new cljs.core.Symbol(null,\x22doto\x22,\x22doto\x22,1252536074,null),new cljs.core.Symbol(null,\x22reduce-kv\x22,\x22reduce-kv\x22,1856296400,null),new cljs.core.Symbol(null,\x22defmethod\x22,\x22defmethod\x22,-579171823,null),new cljs.core.Symbol(null,\x22update-in\x22,\x22update-in\x22,-1445516941,null),new cljs.core.Symbol(null,\x22prefer-method\x22,\x22prefer-method\x22,-876100205,null),new cljs.core.Symbol(null,\x22derive\x22,\x22derive\x22,1727397303,null),new cljs.core.Symbol(null,\x22nfirst\x22,\x22nfirst\x22,-554736533,null),new cljs.core.Symbol(null,\x22sort-by\x22,\x22sort-by\x22,1317932224,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null),new cljs.core.Symbol(null,\x22ancestors\x22,\x22ancestors\x22,864486103,null),new cljs.core.Symbol(null,\x22first\x22,\x22first\x22,996428481,null),new cljs.core.Symbol(null,\x22butlast\x22,\x22butlast\x22,1573039585,null),new cljs.core.Symbol(null,\x22with-out-str\x22,\x22with-out-str\x22,-140201577,null),new cljs.core.Symbol(null,\x22partition-by\x22,\x22partition-by\x22,-1329938249,null),new cljs.core.Symbol(null,\x22uri?\x22,\x22uri?\x22,2029475116,null),new cljs.core.Symbol(null,\x22map-entry?\x22,\x22map-entry?\x22,1140615277,null),new cljs.core.Symbol(null,\x22simple-keyword?\x22,\x22simple-keyword?\x22,-367134735,null),new cljs.core.Symbol(null,\x22into-array\x22,\x22into-array\x22,-1875808354,null),new cljs.core.Symbol(null,\x22ns-refers\x22,\x22ns-refers\x22,-2030918515,null),new cljs.core.Symbol(null,\x22rest\x22,\x22rest\x22,398835108,null),new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),new cljs.core.Symbol(null,\x22unchecked-inc-int\x22,\x22unchecked-inc-int\x22,1402783397,null),new cljs.core.Symbol(null,\x22odd?\x22,\x22odd?\x22,-1458588199,null),new cljs.core.Symbol(null,\x22partition\x22,\x22partition\x22,-1479695018,null),new cljs.core.Symbol(null,\x22\x3e\x3d\x22,\x22\x3e\x3d\x22,1016916022,null),new cljs.core.Symbol(null,\x22fnext\x22,\x22fnext\x22,1424835295,null),new cljs.core.Symbol(null,\x22when-first\x22,\x22when-first\x22,821699168,null),new cljs.core.Symbol(null,\x22bit-or\x22,\x22bit-or\x22,-1144943723,null),new cljs.core.Symbol(null,\x22disj\x22,\x22disj\x22,-1076545178,null),new cljs.core.Symbol(null,\x22with-redefs-fn\x22,\x22with-redefs-fn\x22,-595725379,null),new cljs.core.Symbol(null,\x22-new-var\x22,\x22-new-var\x22,1200468147,null),new cljs.core.Symbol(null,\x22unchecked-short\x22,\x22unchecked-short\x22,27848057,null),new cljs.core.Symbol(null,\x22ffirst\x22,\x22ffirst\x22,-694902000,null),new cljs.core.Symbol(null,\x22condp\x22,\x22condp\x22,1054325175,null),new cljs.core.Symbol(null,\x22munge\x22,\x22munge\x22,-174396700,null),new cljs.core.Symbol(null,\x22*file*\x22,\x22*file*\x22,624866474,null),new cljs.core.Symbol(null,\x22unchecked-negate-int\x22,\x22unchecked-negate-int\x22,-825297602,null),new cljs.core.Symbol(null,\x22print-str\x22,\x22print-str\x22,-699700354,null),new cljs.core.Symbol(null,\x22vreset!\x22,\x22vreset!\x22,1237177091,null),new cljs.core.Symbol(null,\x22uuid?\x22,\x22uuid?\x22,400077689,null),new cljs.core.Symbol(null,\x22reset!\x22,\x22reset!\x22,527275632,null),new cljs.core.Symbol(null,\x22atom\x22,\x22atom\x22,1243487874,null),new cljs.core.Symbol(null,\x22select-keys\x22,\x22select-keys\x22,-708556589,null),new cljs.core.Symbol(null,\x22reverse\x22,\x22reverse\x22,752076261,null),new cljs.core.Symbol(null,\x22ex-message\x22,\x22ex-message\x22,-1128293394,null),new cljs.core.Symbol(null,\x22special-symbol?\x22,\x22special-symbol?\x22,-731144617,null),new cljs.core.Symbol(null,\x22merge\x22,\x22merge\x22,-163787882,null),new cljs.core.Symbol(null,\x22newline\x22,\x22newline\x22,-864364446,null),new cljs.core.Symbol(null,\x22unchecked-multiply\x22,\x22unchecked-multiply\x22,-1019161490,null),new cljs.core.Symbol(null,\x22..\x22,\x22..\x22,-300507420,null),new cljs.core.Symbol(null,\x22chunked-seq?\x22,\x22chunked-seq?\x22,1044846168,null),new cljs.core.Symbol(null,\x22inst?\x22,\x22inst?\x22,1614698981,null),new cljs.core.Symbol(null,\x22random-sample\x22,\x22random-sample\x22,-914181101,null),new cljs.core.Symbol(null,\x22\x3e\x22,\x22\x3e\x22,1085014381,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),new cljs.core.Symbol(null,\x22simple-ident?\x22,\x22simple-ident?\x22,194189851,null),new cljs.core.Symbol(null,\x22ns-name\x22,\x22ns-name\x22,-436814796,null),new cljs.core.Symbol(null,\x22*1\x22,\x22*1\x22,2110258092,null),new cljs.core.Symbol(null,\x22last\x22,\x22last\x22,-1548700637,null),new cljs.core.Symbol(null,\x22bit-shift-left\x22,\x22bit-shift-left\x22,-1814765981,null),new cljs.core.Symbol(null,\x22int\x22,\x22int\x22,-100885395,null),new cljs.core.Symbol(null,\x22unchecked-negate\x22,\x22unchecked-negate\x22,-1669067451,null),new cljs.core.Symbol(null,\x22multi-fn-impl\x22,\x22multi-fn-impl\x22,187651105,null),new cljs.core.Symbol(null,\x22unchecked-remainder-int\x22,\x22unchecked-remainder-int\x22,1427188224,null),new cljs.core.Symbol(null,\x22byte\x22,\x22byte\x22,-1970660549,null),new cljs.core.Symbol(null,\x22conj!\x22,\x22conj!\x22,-841007895,null),new cljs.core.Symbol(null,\x22println\x22,\x22println\x22,-733595439,null),new cljs.core.Symbol(null,\x22defprotocol\x22,\x22defprotocol\x22,1388695348,null),new cljs.core.Symbol(null,\x22int?\x22,\x22int?\x22,1799729645,null),new cljs.core.Symbol(null,\x22long-array\x22,\x22long-array\x22,217579190,null),new cljs.core.Symbol(null,\x22find\x22,\x22find\x22,2136810983,null),new cljs.core.Symbol(null,\x22vals\x22,\x22vals\x22,-1886377036,null),new cljs.core.Symbol(null,\x22nil?\x22,\x22nil?\x22,1612038930,null),new cljs.core.Symbol(null,\x22flush\x22,\x22flush\x22,501820328,null),new cljs.core.Symbol(null,\x22hash\x22,\x22hash\x22,1626749931,null),new cljs.core.Symbol(null,\x22pr\x22,\x22pr\x22,1056937027,null),new cljs.core.Symbol(null,\x22unchecked-subtract\x22,\x22unchecked-subtract\x22,-2137458667,null),new cljs.core.Symbol(null,\x22comment\x22,\x22comment\x22,-2122229700,null),new cljs.core.Symbol(null,\x22with-redefs\x22,\x22with-redefs\x22,-1143728263,null),new cljs.core.Symbol(null,\x22float?\x22,\x22float?\x22,673884616,null),new cljs.core.Symbol(null,\x22second\x22,\x22second\x22,1195829517,null),new cljs.core.Symbol(null,\x22extend-protocol\x22,\x22extend-protocol\x22,306378578,null),new cljs.core.Symbol(null,\x22*err*\x22,\x22*err*\x22,2070937226,null),new cljs.core.Symbol(null,\x22chunk-first\x22,\x22chunk-first\x22,1379046752,null),new cljs.core.Symbol(null,\x22alias\x22,\x22alias\x22,-399220103,null),new cljs.core.Symbol(null,\x22unchecked-add-int\x22,\x22unchecked-add-int\x22,-1821763285,null),new cljs.core.Symbol(null,\x22ifn?\x22,\x22ifn?\x22,-2106461064,null),new cljs.core.Symbol(null,\x22ex-info\x22,\x22ex-info\x22,-539875240,null),new cljs.core.Symbol(null,\x22inc\x22,\x22inc\x22,324505433,null),new cljs.core.Symbol(null,\x22/\x22,\x22/\x22,-1371932971,null),new cljs.core.Symbol(null,\x22volatile!\x22,\x22volatile!\x22,919368405,null),new cljs.core.Symbol(null,\x22with-meta\x22,\x22with-meta\x22,73674707,null),new cljs.core.Symbol(null,\x22map?\x22,\x22map?\x22,-1780568534,null),new cljs.core.Symbol(null,\x22vector?\x22,\x22vector?\x22,-61367869,null),new cljs.core.Symbol(null,\x22-\x3e\x3e\x22,\x22-\x3e\x3e\x22,-1874332161,null),new cljs.core.Symbol(null,\x22quot\x22,\x22quot\x22,-1125214196,null),new cljs.core.Symbol(null,\x22any?\x22,\x22any?\x22,-318999933,null),new cljs.core.Symbol(null,\x22unchecked-add\x22,\x22unchecked-add\x22,-2030665965,null),new cljs.core.Symbol(null,\x22floats\x22,\x22floats\x22,513591110,null),new cljs.core.Symbol(null,\x22drop-while\x22,\x22drop-while\x22,719206685,null),new cljs.core.Symbol(null,\x22bounded-count\x22,\x22bounded-count\x22,1030640883,null),new cljs.core.Symbol(null,\x22take-while\x22,\x22take-while\x22,2007268328,null),new cljs.core.Symbol(null,\x22extends?\x22,\x22extends?\x22,-2012201234,null),new cljs.core.Symbol(null,\x22sort\x22,\x22sort\x22,-1700969851,null),new cljs.core.Symbol(null,\x22false?\x22,\x22false?\x22,-1522377573,null),new cljs.core.Symbol(null,\x22cat\x22,\x22cat\x22,182721320,null),new cljs.core.Symbol(null,\x22extend-type\x22,\x22extend-type\x22,1123355921,null),new cljs.core.Symbol(null,\x22*print-level*\x22,\x22*print-level*\x22,-634488505,null),new cljs.core.Symbol(null,\x22replace\x22,\x22replace\x22,853943757,null),new cljs.core.Symbol(null,\x22drop\x22,\x22drop\x22,2005013138,null),new cljs.core.Symbol(null,\x22push-thread-bindings\x22,\x22push-thread-bindings\x22,1054019843,null),new cljs.core.Symbol(null,\x22not\x22,\x22not\x22,1044554643,null),new cljs.core.Symbol(null,\x22keep\x22,\x22keep\x22,-492807003,null),new cljs.core.Symbol(null,\x22cons\x22,\x22cons\x22,755448454,null),new cljs.core.Symbol(null,\x22*e\x22,\x22*e\x22,329170866,null),new cljs.core.Symbol(null,\x22bit-shift-right\x22,\x22bit-shift-right\x22,884046498,null),new cljs.core.Symbol(null,\x22associative?\x22,\x22associative?\x22,-141666771,null),new cljs.core.Symbol(null,\x22read\x22,\x22read\x22,-1514377108,null),new cljs.core.Symbol(null,\x22unquote\x22,\x22unquote\x22,-1004694737,null),new cljs.core.Symbol(null,\x22macroexpand\x22,\x22macroexpand\x22,1509933344,null),new cljs.core.Symbol(null,\x22*print-length*\x22,\x22*print-length*\x22,-687693654,null),new cljs.core.Symbol(null,\x22if-not\x22,\x22if-not\x22,-265415609,null),new cljs.core.Symbol(null,\x22chunk-next\x22,\x22chunk-next\x22,-547810434,null),new cljs.core.Symbol(null,\x22var-set\x22,\x22var-set\x22,-1361408121,null),new cljs.core.Symbol(null,\x22bit-flip\x22,\x22bit-flip\x22,809639606,null),new cljs.core.Symbol(null,\x22aset\x22,\x22aset\x22,900773178,null),new cljs.core.Symbol(null,\x22-deref\x22,\x22-deref\x22,-283116853,null),new cljs.core.Symbol(null,\x22*ns*\x22,\x22*ns*\x22,740153818,null),new cljs.core.Symbol(null,\x22some-fn\x22,\x22some-fn\x22,-490044165,null),new cljs.core.Symbol(null,\x22var?\x22,\x22var?\x22,230455531,null),new cljs.core.Symbol(null,\x22*print-meta*\x22,\x22*print-meta*\x22,-919406644,null),new cljs.core.Symbol(null,\x22when-not\x22,\x22when-not\x22,-1223136340,null),new cljs.core.Symbol(null,\x22unchecked-multiply-int\x22,\x22unchecked-multiply-int\x22,-788546068,null),new cljs.core.Symbol(null,\x22identity\x22,\x22identity\x22,-1007039734,null),new cljs.core.Symbol(null,\x22-reset!\x22,\x22-reset!\x22,1965723739,null),new cljs.core.Symbol(null,\x22to-array\x22,\x22to-array\x22,-585705189,null),new cljs.core.Symbol(null,\x22double-array\x22,\x22double-array\x22,257035726,null),new cljs.core.Symbol(null,\x22sorted-map\x22,\x22sorted-map\x22,-521216771,null),new cljs.core.Symbol(null,\x22-reified-methods\x22,\x22-reified-methods\x22,1702712518,null),new cljs.core.Symbol(null,\x22concat\x22,\x22concat\x22,-467652465,null),new cljs.core.Symbol(null,\x22char\x22,\x22char\x22,998943941,null),new cljs.core.Symbol(null,\x22ident?\x22,\x22ident?\x22,-2061359468,null),new cljs.core.Symbol(null,\x22make-array\x22,\x22make-array\x22,-1135103906,null),new cljs.core.Symbol(null,\x22chunk-buffer\x22,\x22chunk-buffer\x22,789680287,null),new cljs.core.Symbol(null,\x22peek\x22,\x22peek\x22,1349135202,null),new cljs.core.Symbol(null,\x22hash-unordered-coll\x22,\x22hash-unordered-coll\x22,-240471618,null),new cljs.core.Symbol(null,\x22when\x22,\x22when\x22,1064114221,null),new cljs.core.Symbol(null,\x22clj-\x3ejs\x22,\x22clj-\x3ejs\x22,-1880244676,null),new cljs.core.Symbol(null,\x22sequence\x22,\x22sequence\x22,-1727628355,null),new cljs.core.Symbol(null,\x22group-by\x22,\x22group-by\x22,1261391725,null),new cljs.core.Symbol(null,\x22re-seq\x22,\x22re-seq\x22,-2105554076,null),new cljs.core.Symbol(null,\x22-swap!\x22,\x22-swap!\x22,-535359318,null),new cljs.core.Symbol(null,\x22when-some\x22,\x22when-some\x22,1700415903,null),new cljs.core.Symbol(null,\x22unchecked-subtract-int\x22,\x22unchecked-subtract-int\x22,-1899147615,null),new cljs.core.Symbol(null,\x22\x3c\x3d\x22,\x22\x3c\x3d\x22,1244895369,null),new cljs.core.Symbol(null,\x22prefers\x22,\x22prefers\x22,-374265406,null),new cljs.core.Symbol(null,\x22vary-meta\x22,\x22vary-meta\x22,-1580067831,null),new cljs.core.Symbol(null,\x22\x3d\x22,\x22\x3d\x22,-1501502141,null),new cljs.core.Symbol(null,\x22intern\x22,\x22intern\x22,1664352151,null),new cljs.core.Symbol(null,\x22keep-indexed\x22,\x22keep-indexed\x22,-2020916352,null),new cljs.core.Symbol(null,\x22js-obj\x22,\x22js-obj\x22,342383250,null),new cljs.core.Symbol(null,\x22every?\x22,\x22every?\x22,2083724064,null),new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22bit-set\x22,\x22bit-set\x22,-910710655,null),new cljs.core.Symbol(null,\x22dissoc\x22,\x22dissoc\x22,1039760994,null),new cljs.core.Symbol(null,\x22min\x22,\x22min\x22,2085523049,null),new cljs.core.Symbol(null,\x22char?\x22,\x22char?\x22,-1072221244,null),new cljs.core.Symbol(null,\x22with-open\x22,\x22with-open\x22,172119667,null),new cljs.core.Symbol(null,\x22interleave\x22,\x22interleave\x22,165488106,null),new cljs.core.Symbol(null,\x22with-local-vars\x22,\x22with-local-vars\x22,837642072,null),new cljs.core.Symbol(null,\x22bound?\x22,\x22bound?\x22,767722602,null),new cljs.core.Symbol(null,\x22all-ns\x22,\x22all-ns\x22,1571857784,null),new cljs.core.Symbol(null,\x22split-at\x22,\x22split-at\x22,-60953742,null),new cljs.core.Symbol(null,\x22neg-int?\x22,\x22neg-int?\x22,-1610409390,null),new cljs.core.Symbol(null,\x22mapv\x22,\x22mapv\x22,-241595241,null),new cljs.core.Symbol(null,\x22defonce\x22,\x22defonce\x22,-1681484013,null),new cljs.core.Symbol(null,\x22prn\x22,\x22prn\x22,1561684909,null),new cljs.core.Symbol(null,\x22drop-last\x22,\x22drop-last\x22,-1123611530,null),new cljs.core.Symbol(null,\x22with-bindings*\x22,\x22with-bindings*\x22,-93186207,null),new cljs.core.Symbol(null,\x22fnil\x22,\x22fnil\x22,-187395162,null),new cljs.core.Symbol(null,\x22cond-\x3e\x3e\x22,\x22cond-\x3e\x3e\x22,348844960,null),new cljs.core.Symbol(null,\x22pop-thread-bindings\x22,\x22pop-thread-bindings\x22,-1312224790,null),new cljs.core.Symbol(null,\x22satisfies?\x22,\x22satisfies?\x22,-433227199,null),new cljs.core.Symbol(null,\x22next\x22,\x22next\x22,1522830042,null),new cljs.core.Symbol(null,\x22+\x22,\x22+\x22,-740910886,null),new cljs.core.Symbol(null,\x22load-string\x22,\x22load-string\x22,-403739145,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null),new cljs.core.Symbol(null,\x22unchecked-double\x22,\x22unchecked-double\x22,-1593778036,null),new cljs.core.Symbol(null,\x22when-let\x22,\x22when-let\x22,-1383043480,null),new cljs.core.Symbol(null,\x22symbol?\x22,\x22symbol?\x22,1820680511,null),new cljs.core.Symbol(null,\x22chunk-cons\x22,\x22chunk-cons\x22,433801405,null),new cljs.core.Symbol(null,\x22ns-imports\x22,\x22ns-imports\x22,1111168888,null),new cljs.core.Symbol(null,\x22methods\x22,\x22methods\x22,2094462393,null),new cljs.core.Symbol(null,\x22reset-meta!\x22,\x22reset-meta!\x22,1699493291,null),new cljs.core.Symbol(null,\x22js-\x3eclj\x22,\x22js-\x3eclj\x22,1544462432,null),new cljs.core.Symbol(null,\x22dotimes\x22,\x22dotimes\x22,-818708397,null),new cljs.core.Symbol(null,\x22rand-int\x22,\x22rand-int\x22,-495012157,null),new cljs.core.Symbol(null,\x22complement\x22,\x22complement\x22,-913606051,null),new cljs.core.Symbol(null,\x22list?\x22,\x22list?\x22,-1494629,null),new cljs.core.Symbol(null,\x22aget\x22,\x22aget\x22,1491056546,null),new cljs.core.Symbol(null,\x22zipmap\x22,\x22zipmap\x22,-690049687,null),new cljs.core.Symbol(null,\x22find-var\x22,\x22find-var\x22,-497901917,null),new cljs.core.Symbol(null,\x22run!\x22,\x22run!\x22,-2055483725,null),new cljs.core.Symbol(null,\x22\x3d\x3d\x22,\x22\x3d\x3d\x22,-234118149,null),new cljs.core.Symbol(null,\x22chars\x22,\x22chars\x22,545901210,null),new cljs.core.Symbol(null,\x22iterate\x22,\x22iterate\x22,694501410,null),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),new cljs.core.Symbol(null,\x22hash-map\x22,\x22hash-map\x22,-439030950,null),new cljs.core.Symbol(null,\x22unchecked-inc\x22,\x22unchecked-inc\x22,-1170131490,null),new cljs.core.Symbol(null,\x22max-key\x22,\x22max-key\x22,-2132814732,null),new cljs.core.Symbol(null,\x22qualified-ident?\x22,\x22qualified-ident?\x22,-928894763,null),new cljs.core.Symbol(null,\x22dissoc!\x22,\x22dissoc!\x22,333592624,null),new cljs.core.Symbol(null,\x22coll?\x22,\x22coll?\x22,-1874821441,null),new cljs.core.Symbol(null,\x22reversible?\x22,\x22reversible?\x22,314107817,null),new cljs.core.Symbol(null,\x22ns-unmap\x22,\x22ns-unmap\x22,1255260993,null),new cljs.core.Symbol(null,\x22apply\x22,\x22apply\x22,-1334050276,null),new cljs.core.Symbol(null,\x22*in*\x22,\x22*in*\x22,1130010229,null),new cljs.core.Symbol(null,\x22subvec\x22,\x22subvec\x22,364611032,null),new cljs.core.Symbol(null,\x22isa?\x22,\x22isa?\x22,1358492324,null),new cljs.core.Symbol(null,\x22not-every?\x22,\x22not-every?\x22,-729672558,null),new cljs.core.Symbol(null,\x22ex-cause\x22,\x22ex-cause\x22,95392590,null),new cljs.core.Symbol(null,\x22keyword?\x22,\x22keyword?\x22,1917797069,null),new cljs.core.Symbol(null,\x22ex-data\x22,\x22ex-data\x22,1331491268,null),new cljs.core.Symbol(null,\x22*print-namespace-maps*\x22,\x22*print-namespace-maps*\x22,-1759108415,null),new cljs.core.Symbol(null,\x22compare\x22,\x22compare\x22,1109853757,null),new cljs.core.Symbol(null,\x22underive\x22,\x22underive\x22,-242982950,null),new cljs.core.Symbol(null,\x22transduce\x22,\x22transduce\x22,-2083619734,null),new cljs.core.Symbol(null,\x22range\x22,\x22range\x22,-1014743483,null),new cljs.core.Symbol(null,\x22IDeref\x22,\x22IDeref\x22,1738423197,null),new cljs.core.Symbol(null,\x22sorted?\x22,\x22sorted?\x22,892797714,null),new cljs.core.Symbol(null,\x22frequencies\x22,\x22frequencies\x22,1757430425,null),new cljs.core.Symbol(null,\x22cycle\x22,\x22cycle\x22,-1944070485,null),new cljs.core.Symbol(null,\x22max\x22,\x22max\x22,1701898075,null),new cljs.core.Symbol(null,\x22simple-symbol?\x22,\x22simple-symbol?\x22,1408454822,null),new cljs.core.Symbol(null,\x22reify\x22,\x22reify\x22,1885539699,null),new cljs.core.Symbol(null,\x22empty?\x22,\x22empty?\x22,76408555,null),new cljs.core.Symbol(null,\x22into\x22,\x22into\x22,1489695498,null),new cljs.core.Symbol(null,\x22integer?\x22,\x22integer?\x22,1303791671,null),new cljs.core.Symbol(null,\x22*\x22,\x22*\x22,345799209,null),new cljs.core.Symbol(null,\x22some-\x3e\x3e\x22,\x22some-\x3e\x3e\x22,-1499987794,null),new cljs.core.Symbol(null,\x22unsigned-bit-shift-right\x22,\x22unsigned-bit-shift-right\x22,-1953076601,null),new cljs.core.Symbol(null,\x22pr-str\x22,\x22pr-str\x22,-2066912145,null),new cljs.core.Symbol(null,\x22some-\x3e\x22,\x22some-\x3e\x22,-1011172200,null),new cljs.core.Symbol(null,\x22bound-fn\x22,\x22bound-fn\x22,125411266,null),new cljs.core.Symbol(null,\x22chunk\x22,\x22chunk\x22,449371907,null),new cljs.core.Symbol(null,\x22cond\x22,\x22cond\x22,1606708055,null),new cljs.core.Symbol(null,\x22distinct\x22,\x22distinct\x22,-148347594,null),new cljs.core.Symbol(null,\x22ensure-reduced\x22,\x22ensure-reduced\x22,-1606421005,null),new cljs.core.Symbol(null,\x22object-array\x22,\x22object-array\x22,206434647,null),new cljs.core.Symbol(null,\x22juxt\x22,\x22juxt\x22,671085604,null),new cljs.core.Symbol(null,\x22some\x22,\x22some\x22,-310548046,null),new cljs.core.Symbol(null,\x22interpose\x22,\x22interpose\x22,-2078295140,null),new cljs.core.Symbol(null,\x22the-ns\x22,\x22the-ns\x22,1016317907,null),new cljs.core.Symbol(null,\x22instance?\x22,\x22instance?\x22,1075939923,null),new cljs.core.Symbol(null,\x22descendants\x22,\x22descendants\x22,-829549738,null),new cljs.core.Symbol(null,\x22get-in\x22,\x22get-in\x22,-1965644065,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22reify*\x22,\x22reify*\x22,1646945123,null),new cljs.core.Symbol(null,\x22defrecord\x22,\x22defrecord\x22,273038109,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22read-string\x22,\x22read-string\x22,-558384455,null),new cljs.core.Symbol(null,\x22assoc-in\x22,\x22assoc-in\x22,-113585743,null),new cljs.core.Symbol(null,\x22zero?\x22,\x22zero?\x22,325758897,null),new cljs.core.Symbol(null,\x22transient\x22,\x22transient\x22,899115069,null),new cljs.core.Symbol(null,\x22letfn\x22,\x22letfn\x22,-480490827,null),new cljs.core.Symbol(null,\x22realized?\x22,\x22realized?\x22,207229341,null),new cljs.core.Symbol(null,\x22list*\x22,\x22list*\x22,765415731,null),new cljs.core.Symbol(null,\x22ns-interns\x22,\x22ns-interns\x22,535532824,null),new cljs.core.Symbol(null,\x22memoize\x22,\x22memoize\x22,2019341169,null),new cljs.core.Symbol(null,\x22subseq\x22,\x22subseq\x22,-1558995241,null),new cljs.core.Symbol(null,\x22delay?\x22,\x22delay?\x22,-1528239209,null),new cljs.core.Symbol(null,\x22completing\x22,\x22completing\x22,565832990,null),new cljs.core.Symbol(null,\x22unchecked-divide-int\x22,\x22unchecked-divide-int\x22,1613116468,null),new cljs.core.Symbol(null,\x22shuffle\x22,\x22shuffle\x22,-1393023609,null),new cljs.core.Symbol(null,\x22ns-map\x22,\x22ns-map\x22,-434605548,null),new cljs.core.Symbol(null,\x22prn-str\x22,\x22prn-str\x22,-145225943,null),new cljs.core.Symbol(null,\x22defn-\x22,\x22defn-\x22,1097765044,null),new cljs.core.Symbol(null,\x22compare-and-set!\x22,\x22compare-and-set!\x22,-1997299382,null),new cljs.core.Symbol(null,\x22use\x22,\x22use\x22,-205850897,null),new cljs.core.Symbol(null,\x22longs\x22,\x22longs\x22,-1017696020,null),new cljs.core.Symbol(null,\x22remove-ns\x22,\x22remove-ns\x22,-1915058781,null),new cljs.core.Symbol(null,\x22unchecked-int\x22,\x22unchecked-int\x22,1672898125,null),new cljs.core.Symbol(null,\x22nthrest\x22,\x22nthrest\x22,1219890118,null),new cljs.core.Symbol(null,\x22thread-bound?\x22,\x22thread-bound?\x22,2075334115,null),new cljs.core.Symbol(null,\x22doubles\x22,\x22doubles\x22,-1517872169,null),new cljs.core.Symbol(null,\x22force\x22,\x22force\x22,-1872478483,null),new cljs.core.Symbol(null,\x22remove-method\x22,\x22remove-method\x22,72923733,null),new cljs.core.Symbol(null,\x22extend\x22,\x22extend\x22,-817951763,null),new cljs.core.Symbol(null,\x22nnext\x22,\x22nnext\x22,-2065435598,null),new cljs.core.Symbol(null,\x22dec\x22,\x22dec\x22,-766002333,null),new cljs.core.Symbol(null,\x22qualified-keyword?\x22,\x22qualified-keyword?\x22,375456001,null),new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22take-last\x22,\x22take-last\x22,-41013151,null),new cljs.core.Symbol(null,\x22find-ns\x22,\x22find-ns\x22,-884829568,null),new cljs.core.Symbol(null,\x22string?\x22,\x22string?\x22,-1129175764,null),new cljs.core.Symbol(null,\x22print\x22,\x22print\x22,-1354873355,null),new cljs.core.Symbol(null,\x22bit-xor\x22,\x22bit-xor\x22,-1334295033,null),new cljs.core.Symbol(null,\x22map\x22,\x22map\x22,-1282745308,null),new cljs.core.Symbol(null,\x22float\x22,\x22float\x22,-91857841,null),new cljs.core.Symbol(null,\x22chunk-append\x22,\x22chunk-append\x22,-1447349559,null),new cljs.core.Symbol(null,\x22deref\x22,\x22deref\x22,1494944732,null),new cljs.core.Symbol(null,\x22re-pattern\x22,\x22re-pattern\x22,1047705161,null),new cljs.core.Symbol(null,\x22repeat\x22,\x22repeat\x22,-1821743682,null),new cljs.core.Symbol(null,\x22reduce\x22,\x22reduce\x22,1358839360,null),new cljs.core.Symbol(null,\x22qualified-symbol?\x22,\x22qualified-symbol?\x22,98763807,null),new cljs.core.Symbol(null,\x22eval\x22,\x22eval\x22,536963622,null),new cljs.core.Symbol(null,\x22vector\x22,\x22vector\x22,-751469611,null),new cljs.core.Symbol(null,\x22doall\x22,\x22doall\x22,988520834,null),new cljs.core.Symbol(null,\x22assoc!\x22,\x22assoc!\x22,-847603280,null),new cljs.core.Symbol(null,\x22not\x3d\x22,\x22not\x3d\x22,1466536204,null),new cljs.core.Symbol(null,\x22alter-meta!\x22,\x22alter-meta!\x22,1510444945,null),new cljs.core.Symbol(null,\x22constantly\x22,\x22constantly\x22,-271143939,null),new cljs.core.Symbol(null,\x22seq?\x22,\x22seq?\x22,-1951934719,null),new cljs.core.Symbol(null,\x22get\x22,\x22get\x22,-971253014,null),new cljs.core.Symbol(null,\x22require\x22,\x22require\x22,1172530194,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22bit-and-not\x22,\x22bit-and-not\x22,-254338837,null),new cljs.core.Symbol(null,\x22mapcat\x22,\x22mapcat\x22,-601348859,null),new cljs.core.Symbol(null,\x22cond-\x3e\x22,\x22cond-\x3e\x22,561741875,null),new cljs.core.Symbol(null,\x22nat-int?\x22,\x22nat-int?\x22,-1879663400,null),new cljs.core.Symbol(null,\x22get-method\x22,\x22get-method\x22,185754457,null),new cljs.core.Symbol(null,\x22*out*\x22,\x22*out*\x22,1277591796,null),new cljs.core.Symbol(null,\x22str\x22,\x22str\x22,-1564826950,null),new cljs.core.Symbol(null,\x22empty\x22,\x22empty\x22,-1886564811,null),new cljs.core.Symbol(null,\x22counted?\x22,\x22counted?\x22,1703071664,null),new cljs.core.Symbol(null,\x22set?\x22,\x22set?\x22,1636014792,null),new cljs.core.Symbol(null,\x22alength\x22,\x22alength\x22,-1268305401,null),new cljs.core.Symbol(null,\x22filterv\x22,\x22filterv\x22,1977739179,null),new cljs.core.Symbol(null,\x22reductions\x22,\x22reductions\x22,549963952,null),new cljs.core.Symbol(null,\x22booleans\x22,\x22booleans\x22,756846088,null),new cljs.core.Symbol(null,\x22\x3c\x22,\x22\x3c\x22,993667236,null),new cljs.core.Symbol(null,\x22reduced\x22,\x22reduced\x22,-1189224808,null),new cljs.core.Symbol(null,\x22namespace\x22,\x22namespace\x22,1263021155,null),new cljs.core.Symbol(null,\x22keyword\x22,\x22keyword\x22,-1843046022,null),new cljs.core.Symbol(null,\x22bound-fn*\x22,\x22bound-fn*\x22,102308621,null),new cljs.core.Symbol(null,\x22record?\x22,\x22record?\x22,-1305224237,null),new cljs.core.Symbol(null,\x22tagged-literal?\x22,\x22tagged-literal?\x22,1117865390,null),new cljs.core.Symbol(null,\x22-\x22,\x22-\x22,-471816912,null),new cljs.core.Symbol(null,\x22bit-and\x22,\x22bit-and\x22,-479352589,null),new cljs.core.Symbol(null,\x22unreduced\x22,\x22unreduced\x22,780976083,null),new cljs.core.Symbol(null,\x22assoc\x22,\x22assoc\x22,2071440380,null),new cljs.core.Symbol(null,\x22defmulti\x22,\x22defmulti\x22,1936112154,null),new cljs.core.Symbol(null,\x22partition-all\x22,\x22partition-all\x22,-1985005385,null),new cljs.core.Symbol(null,\x22bit-not\x22,\x22bit-not\x22,1508529851,null),new cljs.core.Symbol(null,\x22some?\x22,\x22some?\x22,234752293,null),new cljs.core.Symbol(null,\x22pos?\x22,\x22pos?\x22,-244377722,null),new cljs.core.Symbol(null,\x22trampoline\x22,\x22trampoline\x22,-71368916,null),new cljs.core.Symbol(null,\x22rand\x22,\x22rand\x22,-1745930995,null),new cljs.core.Symbol(null,\x22re-matches\x22,\x22re-matches\x22,-1865705768,null),new cljs.core.Symbol(null,\x22boolean?\x22,\x22boolean?\x22,1790940868,null),new cljs.core.Symbol(null,\x22every-pred\x22,\x22every-pred\x22,-1346958247,null),new cljs.core.Symbol(null,\x22fn?\x22,\x22fn?\x22,1820990818,null),new cljs.core.Symbol(null,\x22sequential?\x22,\x22sequential?\x22,1102351463,null),new cljs.core.Symbol(null,\x22list\x22,\x22list\x22,-1889078086,null),new cljs.core.Symbol(null,\x22sorted-set-by\x22,\x22sorted-set-by\x22,899099765,null),new cljs.core.Symbol(null,\x22nthnext\x22,\x22nthnext\x22,1677356670,null),new cljs.core.Symbol(null,\x22eduction\x22,\x22eduction\x22,1445227968,null),new cljs.core.Symbol(null,\x22rand-nth\x22,\x22rand-nth\x22,-1227719931,null),new cljs.core.Symbol(null,\x22delay\x22,\x22delay\x22,1066306308,null),new cljs.core.Symbol(null,\x22partial\x22,\x22partial\x22,1881673272,null),new cljs.core.Symbol(null,\x22with-bindings\x22,\x22with-bindings\x22,-1197589787,null),new cljs.core.Symbol(null,\x22rsubseq\x22,\x22rsubseq\x22,-710070471,null),new cljs.core.Symbol(null,\x22contains?\x22,\x22contains?\x22,-1676812576,null),new cljs.core.Symbol(null,\x22-\x3e\x22,\x22-\x3e\x22,-2139605430,null),new cljs.core.Symbol(null,\x22shorts\x22,\x22shorts\x22,107738238,null),new cljs.core.Symbol(null,\x22ISwap\x22,\x22ISwap\x22,484378193,null),new cljs.core.Symbol(null,\x22as-\x3e\x22,\x22as-\x3e\x22,1430690540,null),new cljs.core.Symbol(null,\x22hash-set\x22,\x22hash-set\x22,-1145168432,null),new cljs.core.Symbol(null,\x22take\x22,\x22take\x22,871646627,null),new cljs.core.Symbol(null,\x22if-let\x22,\x22if-let\x22,1803593690,null),new cljs.core.Symbol(null,\x22macroexpand-1\x22,\x22macroexpand-1\x22,659241329,null),new cljs.core.Symbol(null,\x22split-with\x22,\x22split-with\x22,1853047034,null),new cljs.core.Symbol(null,\x22refer\x22,\x22refer\x22,676235974,null),new cljs.core.Symbol(null,\x22binding-conveyor-fn\x22,\x22binding-conveyor-fn\x22,2076077877,null),new cljs.core.Symbol(null,\x22make-hierarchy\x22,\x22make-hierarchy\x22,-241558556,null),new cljs.core.Symbol(null,\x22tagged-literal\x22,\x22tagged-literal\x22,-896422703,null),new cljs.core.Symbol(null,\x22has-root-impl\x22,\x22has-root-impl\x22,-288948659,null),new cljs.core.Symbol(null,\x22parents\x22,\x22parents\x22,-387007364,null),new cljs.core.Symbol(null,\x22vec\x22,\x22vec\x22,982683596,null),new cljs.core.Symbol(null,\x22nth\x22,\x22nth\x22,1529209554,null),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),new cljs.core.Symbol(null,\x22lazy-cat\x22,\x22lazy-cat\x22,-89906116,null),new cljs.core.Symbol(null,\x22if-some\x22,\x22if-some\x22,1960677609,null),new cljs.core.Symbol(null,\x22subs\x22,\x22subs\x22,1453849536,null),new cljs.core.Symbol(null,\x22symbol\x22,\x22symbol\x22,601958831,null),new cljs.core.Symbol(null,\x22mod\x22,\x22mod\x22,1510044207,null),new cljs.core.Symbol(null,\x22number?\x22,\x22number?\x22,-1747282210,null),new cljs.core.Symbol(null,\x22reduced?\x22,\x22reduced?\x22,1361797384,null),new cljs.core.Symbol(null,\x22-new-dynamic-var\x22,\x22-new-dynamic-var\x22,-1029088918,null),new cljs.core.Symbol(null,\x22conj\x22,\x22conj\x22,-1127293942,null),new cljs.core.Symbol(null,\x22bytes\x22,\x22bytes\x22,-1478569089,null),new cljs.core.Symbol(null,\x22unchecked-float\x22,\x22unchecked-float\x22,1485658216,null),new cljs.core.Symbol(null,\x22bit-test\x22,\x22bit-test\x22,543456753,null),new cljs.core.Symbol(null,\x22sorted-map-by\x22,\x22sorted-map-by\x22,218894812,null),new cljs.core.Symbol(null,\x22double?\x22,\x22double?\x22,-2146564276,null),new cljs.core.Symbol(null,\x22rseq\x22,\x22rseq\x22,-1719353554,null),new cljs.core.Symbol(null,\x22unchecked-long\x22,\x22unchecked-long\x22,1306610949,null),new cljs.core.Symbol(null,\x22binding\x22,\x22binding\x22,-2114503176,null),new cljs.core.Symbol(null,\x22double\x22,\x22double\x22,-1769548886,null),new cljs.core.Symbol(null,\x22tree-seq\x22,\x22tree-seq\x22,-1800921632,null),new cljs.core.Symbol(null,\x22multi-fn-add-method-impl\x22,\x22multi-fn-add-method-impl\x22,-523930142,null),new cljs.core.Symbol(null,\x22seqable?\x22,\x22seqable?\x22,72462495,null),new cljs.core.Symbol(null,\x22swap!\x22,\x22swap!\x22,-655677516,null),new cljs.core.Symbol(null,\x22vswap!\x22,\x22vswap!\x22,-574070781,null),new cljs.core.Symbol(null,\x22array-map\x22,\x22array-map\x22,1555038968,null),new cljs.core.Symbol(null,\x22reset-thread-binding-frame-impl\x22,\x22reset-thread-binding-frame-impl\x22,-826674194,null),new cljs.core.Symbol(null,\x22dedupe\x22,\x22dedupe\x22,-461856254,null),new cljs.core.Symbol(null,\x22short\x22,\x22short\x22,-725675253,null),new cljs.core.Symbol(null,\x22update\x22,\x22update\x22,-1608859373,null),new cljs.core.Symbol(null,\x22filter\x22,\x22filter\x22,691993593,null),new cljs.core.Symbol(null,\x22unchecked-dec-int\x22,\x22unchecked-dec-int\x22,1339067442,null),new cljs.core.Symbol(null,\x22*3\x22,\x22*3\x22,105062009,null),new cljs.core.Symbol(null,\x22requiring-resolve\x22,\x22requiring-resolve\x22,-1888505231,null),new cljs.core.Symbol(null,\x22rem\x22,\x22rem\x22,664046770,null),new cljs.core.Symbol(null,\x22pop\x22,\x22pop\x22,-94247249,null),new cljs.core.Symbol(null,\x22merge-with\x22,\x22merge-with\x22,1025434534,null),new cljs.core.Symbol(null,\x22long\x22,\x22long\x22,1469079434,null),new cljs.core.Symbol(null,\x22assert\x22,\x22assert\x22,677428501,null),new cljs.core.Symbol(null,\x22refer-clojure\x22,\x22refer-clojure\x22,-1840651329,null),new cljs.core.Symbol(null,\x22flatten\x22,\x22flatten\x22,-1441633353,null),new cljs.core.Symbol(null,\x22distinct?\x22,\x22distinct?\x22,-1684357959,null),new cljs.core.Symbol(null,\x22map-indexed\x22,\x22map-indexed\x22,-1391025435,null),new cljs.core.Symbol(null,\x22ns-publics\x22,\x22ns-publics\x22,903350436,null),new cljs.core.Symbol(null,\x22protocol-type-impl\x22,\x22protocol-type-impl\x22,561934718,null),new cljs.core.Symbol(null,\x22even?\x22,\x22even?\x22,-1827825394,null),new cljs.core.Symbol(null,\x22var-get\x22,\x22var-get\x22,-767472097,null),new cljs.core.Symbol(null,\x22multi-fn?-impl\x22,\x22multi-fn?-impl\x22,1372639302,null),new cljs.core.Symbol(null,\x22alter-var-root\x22,\x22alter-var-root\x22,-1749458519,null),new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22neg?\x22,\x22neg?\x22,-1902175577,null),new cljs.core.Symbol(null,\x22gensym\x22,\x22gensym\x22,-1693147401,null),new cljs.core.Symbol(null,\x22resolve\x22,\x22resolve\x22,56086045,null),new cljs.core.Symbol(null,\x22add-watch\x22,\x22add-watch\x22,1389887634,null),new cljs.core.Symbol(null,\x22not-any?\x22,\x22not-any?\x22,-2114707554,null),new cljs.core.Symbol(null,\x22take-nth\x22,\x22take-nth\x22,1378204353,null),new cljs.core.Symbol(null,\x22dorun\x22,\x22dorun\x22,560426022,null),new cljs.core.Symbol(null,\x22remove-all-methods\x22,\x22remove-all-methods\x22,-728267092,null),new cljs.core.Symbol(null,\x22not-empty\x22,\x22not-empty\x22,2029453590,null),new cljs.core.Symbol(null,\x22ns-aliases\x22,\x22ns-aliases\x22,-1364180948,null),new cljs.core.Symbol(null,\x22ns-resolve\x22,\x22ns-resolve\x22,1788675756,null),new cljs.core.Symbol(null,\x22get-thread-binding-frame-impl\x22,\x22get-thread-binding-frame-impl\x22,-701667726,null),new cljs.core.Symbol(null,\x22chunk-rest\x22,\x22chunk-rest\x22,-1853526420,null),new cljs.core.Symbol(null,\x22remove-watch\x22,\x22remove-watch\x22,-1105301448,null),new cljs.core.Symbol(null,\x22int-array\x22,\x22int-array\x22,459176616,null),new cljs.core.Symbol(null,\x22pos-int?\x22,\x22pos-int?\x22,-1205815015,null),new cljs.core.Symbol(null,\x22ints\x22,\x22ints\x22,-1761239845,null),new cljs.core.Symbol(null,\x22identical?\x22,\x22identical?\x22,-745864205,null),new cljs.core.Symbol(null,\x22persistent!\x22,\x22persistent!\x22,1286555698,null),new cljs.core.Symbol(null,\x22IReset\x22,\x22IReset\x22,-1893729426,null),new cljs.core.Symbol(null,\x22indexed?\x22,\x22indexed?\x22,1234610384,null),new cljs.core.Symbol(null,\x22min-key\x22,\x22min-key\x22,246826648,null),new cljs.core.Symbol(null,\x22repeatedly\x22,\x22repeatedly\x22,1199964457,null),new cljs.core.Symbol(null,\x22set\x22,\x22set\x22,1945134081,null),new cljs.core.Symbol(null,\x22remove\x22,\x22remove\x22,1509103113,null),new cljs.core.Symbol(null,\x22while\x22,\x22while\x22,-1691317983,null),new cljs.core.Symbol(null,\x22re-find\x22,\x22re-find\x22,1143444147,null)],[(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_char;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-char\x22,\x22cljs.core/unchecked-char\x22,1541049860,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-char\x22,\x22unchecked-char\x22,1662742943,null),\x22cljs/core.cljs\x22,29,1,2728,2728,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_char)?cljs.core.unchecked_char.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_char;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60778 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60778,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60778;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sorted_set;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sorted-set\x22,\x22cljs.core/sorted-set\x22,-1025111155,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sorted-set\x22,\x22sorted-set\x22,992325424,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,9461,9461,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null)], null)),\x22Returns a new sorted set with supplied keys.\x22,(cljs.core.truth_(cljs.core.sorted_set)?cljs.core.sorted_set.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sorted_set;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60779 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60779,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60779;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.true_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22true?\x22,\x22cljs.core/true?\x22,-77973136,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22true?\x22,\x22true?\x22,-1600332395,null),\x22cljs/core.cljs\x22,21,1,2235,2235,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is the value true, false otherwise.\x22,((cljs.core.true_QMARK_)?cljs.core.true_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.true_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60783 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60783,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60783;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_byte;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-byte\x22,\x22cljs.core/unchecked-byte\x22,2035472319,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-byte\x22,\x22unchecked-byte\x22,1091664664,null),\x22cljs/core.cljs\x22,29,1,2727,2727,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_byte)?cljs.core.unchecked_byte.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_byte;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60789 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60789,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60789;\n}\n})(),false);\n})(),sci.impl.namespaces._STAR_2,sci.impl.namespaces.macrofy(sci.impl.namespaces.doto_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reduce_kv;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reduce-kv\x22,\x22cljs.core/reduce-kv\x22,1181053307,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reduce-kv\x22,\x22reduce-kv\x22,1856296400,null),\x22cljs/core.cljs\x22,16,1,2571,2571,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Reduces an associative collection. f should be a function of 3\\n  arguments. Returns the result of applying f to init, the first key\\n  and the first value in coll, then applying f to that result and the\\n  2nd key and value, etc. If coll contains no entries, returns init\\n  and f is not called. Note that reduce-kv is supported on vectors,\\n  where the keys will be the ordinals.\x22,(cljs.core.truth_(cljs.core.reduce_kv)?cljs.core.reduce_kv.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reduce_kv;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60793 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60793,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60793;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.multimethods.defmethod),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.update_in;},new cljs.core.Symbol(\x22cljs.core\x22,\x22update-in\x22,\x22cljs.core/update-in\x22,-2120854498,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22update-in\x22,\x22update-in\x22,-1445516941,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(6),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(6),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null)], null),new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,5322,5322,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null)], null),new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22\x27Updates\x27 a value in a nested associative structure, where ks is a\\n  sequence of keys and f is a function that will take the old value\\n  and any supplied args and return the new value, and returns a new\\n  nested structure.  If any levels do not exist, hash-maps will be\\n  created.\x22,(cljs.core.truth_(cljs.core.update_in)?cljs.core.update_in.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.update_in;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60798 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60798,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60798;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.prefer_method;},new cljs.core.Symbol(\x22cljs.core\x22,\x22prefer-method\x22,\x22cljs.core/prefer-method\x22,-1283360456,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22prefer-method\x22,\x22prefer-method\x22,-876100205,null),\x22cljs/core.cljs\x22,20,1,11364,11364,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22multifn\x22,\x22multifn\x22,-1904313150,null),new cljs.core.Symbol(null,\x22dispatch-val-x\x22,\x22dispatch-val-x\x22,-1545100153,null),new cljs.core.Symbol(null,\x22dispatch-val-y\x22,\x22dispatch-val-y\x22,1016388320,null)], null)),\x22Causes the multimethod to prefer matches of dispatch-val-x over dispatch-val-y\\n   when there is a conflict\x22,(cljs.core.truth_(cljs.core.prefer_method)?cljs.core.prefer_method.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.prefer_method;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60803 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60803,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60803;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.hierarchies.derive_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nfirst;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nfirst\x22,\x22cljs.core/nfirst\x22,-2035427088,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nfirst\x22,\x22nfirst\x22,-554736533,null),\x22cljs/core.cljs\x22,13,1,1769,1769,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Same as (next (first x))\x22,(cljs.core.truth_(cljs.core.nfirst)?cljs.core.nfirst.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nfirst;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60806 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60806,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60806;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sort_by;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sort-by\x22,\x22cljs.core/sort-by\x22,424472669,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sort-by\x22,\x22sort-by\x22,1317932224,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyfn\x22,\x22keyfn\x22,-1874375437,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyfn\x22,\x22keyfn\x22,-1874375437,null),new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyfn\x22,\x22keyfn\x22,-1874375437,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyfn\x22,\x22keyfn\x22,-1874375437,null),new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2465,2465,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyfn\x22,\x22keyfn\x22,-1874375437,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyfn\x22,\x22keyfn\x22,-1874375437,null),new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a sorted sequence of the items in coll, where the sort\\n   order is determined by comparing (keyfn item).  Comp can be\\n   boolean-valued comparison function, or a -/0/+ valued comparator.\\n   Comp defaults to compare.\x22,(cljs.core.truth_(cljs.core.sort_by)?cljs.core.sort_by.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sort_by;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60809 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60809,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60809;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.keys;},new cljs.core.Symbol(\x22cljs.core\x22,\x22keys\x22,\x22cljs.core/keys\x22,-927561820,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null),\x22cljs/core.cljs\x22,11,1,9026,9026,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22map\x22,\x22map\x22,-1282745308,null)], null)),\x22Returns a sequence of the map\x27s keys, in the same order as (seq map).\x22,(cljs.core.truth_(cljs.core.keys)?cljs.core.keys.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.keys;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60812 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60812,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60812;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.hierarchies.ancestors_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.first;},new cljs.core.Symbol(\x22cljs.core\x22,\x22first\x22,\x22cljs.core/first\x22,-752535972,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22first\x22,\x22first\x22,996428481,null),\x22cljs/core.cljs\x22,12,1,1255,1255,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns the first item in the collection. Calls seq on its\\n  argument. If coll is nil, returns nil.\x22,(cljs.core.truth_(cljs.core.first)?cljs.core.first.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.first;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60815 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60815,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60815;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.butlast;},new cljs.core.Symbol(\x22cljs.core\x22,\x22butlast\x22,\x22cljs.core/butlast\x22,1778584188,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22butlast\x22,\x22butlast\x22,1573039585,null),\x22cljs/core.cljs\x22,14,1,9516,9516,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Return a seq of all but the last item in coll, in linear time\x22,(cljs.core.truth_(cljs.core.butlast)?cljs.core.butlast.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.butlast;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60818 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60818,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60818;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.io.with_out_str,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.partition_by;},new cljs.core.Symbol(\x22cljs.core\x22,\x22partition-by\x22,\x22cljs.core/partition-by\x22,-545560814,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22partition-by\x22,\x22partition-by\x22,-1329938249,null),\x22cljs/core.cljs\x22,19,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9969,9969,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Applies f to each value in coll, splitting it each time f returns a\\n   new value.  Returns a lazy seq of partitions.  Returns a stateful\\n   transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.partition_by)?cljs.core.partition_by.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.partition_by;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60819 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60819,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60819;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.uri_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22uri?\x22,\x22cljs.core/uri?\x22,1085729367,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.9\x22,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22uri?\x22,\x22uri?\x22,2029475116,null),\x22cljs/core.cljs\x22,11,1,11827,11827,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true x is a goog.Uri instance.\x22,(cljs.core.truth_(cljs.core.uri_QMARK_)?cljs.core.uri_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.uri_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60822 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60822,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60822;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.map_entry_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22map-entry?\x22,\x22cljs.core/map-entry?\x22,465406728,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22map-entry?\x22,\x22map-entry?\x22,1140615277,null),\x22cljs/core.cljs\x22,17,1,6751,6751,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x satisfies IMapEntry\x22,(cljs.core.truth_(cljs.core.map_entry_QMARK_)?cljs.core.map_entry_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.map_entry_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60825 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60825,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60825;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.simple_keyword_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22simple-keyword?\x22,\x22cljs.core/simple-keyword?\x22,39474330,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22simple-keyword?\x22,\x22simple-keyword?\x22,-367134735,null),\x22cljs/core.cljs\x22,22,1,3398,3398,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a keyword without a namespace\x22,(cljs.core.truth_(cljs.core.simple_keyword_QMARK_)?cljs.core.simple_keyword_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.simple_keyword_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60826 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60826,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60826;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.into_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22into-array\x22,\x22cljs.core/into-array\x22,1215545861,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22into-array\x22,\x22into-array\x22,-1875808354,null),\x22cljs/core.cljs\x22,24,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22aseq\x22,\x22aseq\x22,-1865515628,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22aseq\x22,\x22aseq\x22,-1865515628,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22aseq\x22,\x22aseq\x22,-1865515628,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22aseq\x22,\x22aseq\x22,-1865515628,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,526,526,new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22aseq\x22,\x22aseq\x22,-1865515628,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22aseq\x22,\x22aseq\x22,-1865515628,null)], null)),\x22Returns an array with components set to the values in aseq. Optional type\\n  argument accepted for compatibility with Clojure.\x22,(cljs.core.truth_(cljs.core.into_array)?cljs.core.into_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.into_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60829 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60829,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60829;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_refers,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rest;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rest\x22,\x22cljs.core/rest\x22,-285075455,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rest\x22,\x22rest\x22,398835108,null),\x22cljs/core.cljs\x22,16,1,1266,1266,new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a possibly empty seq of the items after the first. Calls seq on its\\n  argument.\x22,((cljs.core.rest)?cljs.core.rest.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rest;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60830 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60830,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60830;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.seq;},new cljs.core.Symbol(\x22cljs.core\x22,\x22seq\x22,\x22cljs.core/seq\x22,-1649497689,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),\x22cljs/core.cljs\x22,15,1,1228,1228,new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a seq on the collection. If the collection is\\n  empty, returns nil.  (seq nil) returns nil. seq also works on\\n  Strings.\x22,((cljs.core.seq)?cljs.core.seq.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.seq;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60833 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60833,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60833;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_inc_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-inc-int\x22,\x22cljs.core/unchecked-inc-int\x22,-2007014592,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-inc-int\x22,\x22unchecked-inc-int\x22,1402783397,null),\x22cljs/core.cljs\x22,24,1,2767,2767,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_inc_int)?cljs.core.unchecked_inc_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_inc_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60834 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60834,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60834;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.odd_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22odd?\x22,\x22cljs.core/odd?\x22,-1051832030,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22odd?\x22,\x22odd?\x22,-1458588199,null),\x22cljs/core.cljs\x22,11,1,4275,4275,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns true if n is odd, throws an exception if n is not an integer\x22,(cljs.core.truth_(cljs.core.odd_QMARK_)?cljs.core.odd_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.odd_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60837 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60837,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60837;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.partition;},new cljs.core.Symbol(\x22cljs.core\x22,\x22partition\x22,\x22cljs.core/partition\x22,1334624307,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22partition\x22,\x22partition\x22,-1479695018,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),4,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),4,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22pad\x22,\x22pad\x22,1603796986,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22pad\x22,\x22pad\x22,1603796986,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,5272,5272,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22pad\x22,\x22pad\x22,1603796986,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of lists of n items each, at offsets step\\n  apart. If step is not supplied, defaults to n, i.e. the partitions\\n  do not overlap. If a pad collection is supplied, use its elements as\\n  necessary to complete last partition up to n items. In case there are\\n  not enough padding elements, return a partition with less than n items.\x22,(cljs.core.truth_(cljs.core.partition)?cljs.core.partition.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.partition;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60838 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60838,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60838;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._GT__EQ_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3e\x3d\x22,\x22cljs.core/\x3e\x3d\x22,350096541,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22\x3e\x3d\x22,\x22\x3e\x3d\x22,1016916022,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2683,2683,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns non-nil if nums are in monotonically non-increasing order,\\n  otherwise false.\x22,((cljs.core._GT__EQ_)?cljs.core._GT__EQ_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._GT__EQ_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60843 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60843,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60843;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.fnext;},new cljs.core.Symbol(\x22cljs.core\x22,\x22fnext\x22,\x22cljs.core/fnext\x22,2133598532,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22fnext\x22,\x22fnext\x22,1424835295,null),\x22cljs/core.cljs\x22,12,1,1774,1774,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Same as (first (next x))\x22,(cljs.core.truth_(cljs.core.fnext)?cljs.core.fnext.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.fnext;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60845 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60845,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60845;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.when_first_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_or;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-or\x22,\x22cljs.core/bit-or\x22,1134521392,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-or\x22,\x22bit-or\x22,-1144943723,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2877,2877,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Bitwise or\x22,(cljs.core.truth_(cljs.core.bit_or)?cljs.core.bit_or.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_or;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60849 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60849,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60849;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.disj;},new cljs.core.Symbol(\x22cljs.core\x22,\x22disj\x22,\x22cljs.core/disj\x22,1679005177,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22disj\x22,\x22disj\x22,-1076545178,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2115,2115,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),\x22disj[oin]. Returns a new set of the same (hashed/sorted) type, that\\n  does not contain key(s).\x22,(cljs.core.truth_(cljs.core.disj)?cljs.core.disj.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.disj;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60855 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60855,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60855;\n}\n})(),false);\n})(),sci.impl.namespaces.sci_with_redefs_fn,(function (){\nreturn sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$2(cljs.core.gensym.cljs$core$IFn$_invoke$arity$0(),null);\n}),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_short;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-short\x22,\x22cljs.core/unchecked-short\x22,-160544318,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-short\x22,\x22unchecked-short\x22,27848057,null),\x22cljs/core.cljs\x22,30,1,2729,2729,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_short)?cljs.core.unchecked_short.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_short;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60865 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60865,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60865;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ffirst;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ffirst\x22,\x22cljs.core/ffirst\x22,-288110857,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ffirst\x22,\x22ffirst\x22,-694902000,null),\x22cljs/core.cljs\x22,13,1,1764,1764,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Same as (first (first x))\x22,(cljs.core.truth_(cljs.core.ffirst)?cljs.core.ffirst.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ffirst;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60872 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60872,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60872;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.condp_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.munge;},new cljs.core.Symbol(\x22cljs.core\x22,\x22munge\x22,\x22cljs.core/munge\x22,232476539,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22munge\x22,\x22munge\x22,-174396700,null),\x22cljs/core.cljs\x22,12,1,11636,11636,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)),null,(cljs.core.truth_(cljs.core.munge)?cljs.core.munge.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.munge;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60873 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60873,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60873;\n}\n})(),false);\n})(),sci.impl.vars.current_file,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_negate_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-negate-int\x22,\x22cljs.core/unchecked-negate-int\x22,-435316571,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-negate-int\x22,\x22unchecked-negate-int\x22,-825297602,null),\x22cljs/core.cljs\x22,27,1,2787,2787,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_negate_int)?cljs.core.unchecked_negate_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_negate_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60875 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60875,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60875;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.io.print_str;},new cljs.core.Symbol(\x22sci.impl.io\x22,\x22print-str\x22,\x22sci.impl.io/print-str\x22,-1913212321,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.io\x22,\x22sci.impl.io\x22,560476654,null),new cljs.core.Symbol(null,\x22print-str\x22,\x22print-str\x22,-699700354,null),\x22sci/impl/io.cljc\x22,19,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),4,159,159,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),\x22pr to a string, returning it\x22,(cljs.core.truth_(sci.impl.io.print_str)?sci.impl.io.print_str.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.io.print_str;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60883 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60883,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60883;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.vreset_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22vreset!\x22,\x22cljs.core/vreset!\x22,-1308835928,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22vreset!\x22,\x22vreset!\x22,1237177091,null),\x22cljs/core.cljs\x22,14,1,4598,4598,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22vol\x22,\x22vol\x22,1137570949,null),new cljs.core.Symbol(null,\x22newval\x22,\x22newval\x22,717803975,null)], null)),\x22Sets the value of volatile to newval without regard for the\\n   current value. Returns newval.\x22,(cljs.core.truth_(cljs.core.vreset_BANG_)?cljs.core.vreset_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.vreset_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60889 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60889,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60889;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.uuid_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22uuid?\x22,\x22cljs.core/uuid?\x22,-15131116,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22uuid?\x22,\x22uuid?\x22,400077689,null),\x22cljs/core.cljs\x22,12,1,11439,11439,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.uuid_QMARK_)?cljs.core.uuid_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.uuid_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60890 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60890,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60890;\n}\n})(),false);\n})(),sci.impl.core_protocols.reset_BANG__STAR_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.atom;},new cljs.core.Symbol(\x22cljs.core\x22,\x22atom\x22,\x22cljs.core/atom\x22,1943839529,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22atom\x22,\x22atom\x22,1243487874,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22validator\x22,\x22validator\x22,-325659154,null)], null)], null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4467,4467,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),new cljs.core.Symbol(null,\x22validator\x22,\x22validator\x22,-325659154,null)], null)], null)], null)),\x22Creates and returns an Atom with an initial value of x and zero or\\n  more options (in any order):\\n\\n  :meta metadata-map\\n\\n  :validator validate-fn\\n\\n  If metadata-map is supplied, it will become the metadata on the\\n  atom. validate-fn must be nil or a side-effect-free fn of one\\n  argument, which will be passed the intended new state on any state\\n  change. If the new state is unacceptable, the validate-fn should\\n  return false or throw an Error.  If either of these error conditions\\n  occur, then the value of the atom will not change.\x22,(cljs.core.truth_(cljs.core.atom)?cljs.core.atom.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.atom;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60905 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60905,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60905;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.select_keys;},new cljs.core.Symbol(\x22cljs.core\x22,\x22select-keys\x22,\x22cljs.core/select-keys\x22,1032580216,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22select-keys\x22,\x22select-keys\x22,-708556589,null),\x22cljs/core.cljs\x22,18,1,9140,9140,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22map\x22,\x22map\x22,-1282745308,null),new cljs.core.Symbol(null,\x22keyseq\x22,\x22keyseq\x22,-1822150828,null)], null)),\x22Returns a map containing only those entries in map whose key is in keys\x22,(cljs.core.truth_(cljs.core.select_keys)?cljs.core.select_keys.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.select_keys;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60909 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60909,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60909;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reverse;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reverse\x22,\x22cljs.core/reverse\x22,1527953530,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reverse\x22,\x22reverse\x22,752076261,null),\x22cljs/core.cljs\x22,14,1,3213,3213,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a seq of the items in coll in reverse order. Not lazy.\x22,(cljs.core.truth_(cljs.core.reverse)?cljs.core.reverse.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reverse;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60914 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60914,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60914;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.ex_message;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22ex-message\x22,\x22sci.impl.namespaces/ex-message\x22,721899679,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22ex-message\x22,\x22ex-message\x22,-1128293394,null),\x22sci/impl/namespaces.cljc\x22,16,1,249,249,cljs.core.List.EMPTY,null,(cljs.core.truth_(sci.impl.namespaces.ex_message)?sci.impl.namespaces.ex_message.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.ex_message;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60920 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60920,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60920;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.special_symbol_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22special-symbol?\x22,\x22cljs.core/special-symbol?\x22,-64343128,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22special-symbol?\x22,\x22special-symbol?\x22,-731144617,null),\x22cljs/core.cljs\x22,31,1,11519,11519,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x names a special form\x22,((cljs.core.special_symbol_QMARK_)?cljs.core.special_symbol_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.special_symbol_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60923 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60923,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60923;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.merge;},new cljs.core.Symbol(\x22cljs.core\x22,\x22merge\x22,\x22cljs.core/merge\x22,-822184067,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22merge\x22,\x22merge\x22,-163787882,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22maps\x22,\x22maps\x22,-71029607,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22maps\x22,\x22maps\x22,-71029607,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,9116,9116,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22maps\x22,\x22maps\x22,-71029607,null)], null)),\x22Returns a map that consists of the rest of the maps conj-ed onto\\n  the first.  If a key occurs in more than one map, the mapping from\\n  the latter (left-to-right) will be the mapping in the result.\x22,(cljs.core.truth_(cljs.core.merge)?cljs.core.merge.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.merge;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60928 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60928,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60928;\n}\n})(),false);\n})(),sci.impl.io.newline,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_multiply;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-multiply\x22,\x22cljs.core/unchecked-multiply\x22,-1425837163,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-multiply\x22,\x22unchecked-multiply\x22,-1019161490,null),\x22cljs/core.cljs\x22,33,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,2770,2770,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the product of nums. (*) returns 1.\x22,(cljs.core.truth_(cljs.core.unchecked_multiply)?cljs.core.unchecked_multiply.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_multiply;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60938 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60938,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60938;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.double_dot),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunked_seq_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunked-seq?\x22,\x22cljs.core/chunked-seq?\x22,-712922369,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunked-seq?\x22,\x22chunked-seq?\x22,1044846168,null),\x22cljs/core.cljs\x22,19,1,2187,2187,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies IChunkedSeq.\x22,(cljs.core.truth_(cljs.core.chunked_seq_QMARK_)?cljs.core.chunked_seq_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunked_seq_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60939 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60939,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60939;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.inst_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22inst?\x22,\x22cljs.core/inst?\x22,1216133710,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22inst?\x22,\x22inst?\x22,1614698981,null),\x22cljs/core.cljs\x22,12,1,1417,1417,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies Inst\x22,(cljs.core.truth_(cljs.core.inst_QMARK_)?cljs.core.inst_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.inst_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60946 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60946,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60946;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.random_sample;},new cljs.core.Symbol(\x22cljs.core\x22,\x22random-sample\x22,\x22cljs.core/random-sample\x22,298064312,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22random-sample\x22,\x22random-sample\x22,-914181101,null),\x22cljs/core.cljs\x22,20,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prob\x22,\x22prob\x22,1133230269,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prob\x22,\x22prob\x22,1133230269,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prob\x22,\x22prob\x22,1133230269,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prob\x22,\x22prob\x22,1133230269,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10785,10785,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prob\x22,\x22prob\x22,1133230269,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prob\x22,\x22prob\x22,1133230269,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns items from coll with random probability of prob (0.0 -\\n  1.0).  Returns a transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.random_sample)?cljs.core.random_sample.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.random_sample;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60948 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60948,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60948;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._GT_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3e\x22,\x22cljs.core/\x3e\x22,2020535938,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22\x3e\x22,\x22\x3e\x22,1085014381,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2671,2671,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns non-nil if nums are in monotonically decreasing order,\\n  otherwise false.\x22,((cljs.core._GT_)?cljs.core._GT_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._GT_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60952 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60952,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60952;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.count;},new cljs.core.Symbol(\x22cljs.core\x22,\x22count\x22,\x22cljs.core/count\x22,-921270233,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22count\x22,\x22count\x22,-514511684,null),\x22cljs/core.cljs\x22,12,1,1830,1830,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns the number of items in the collection. (count nil) returns\\n  0.  Also works on strings, arrays, and Maps\x22,(cljs.core.truth_(cljs.core.count)?cljs.core.count.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.count;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60956 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60956,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60956;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.simple_ident_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22simple-ident?\x22,\x22cljs.core/simple-ident?\x22,1674885558,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22simple-ident?\x22,\x22simple-ident?\x22,194189851,null),\x22cljs/core.cljs\x22,20,1,3382,3382,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a symbol or keyword without a namespace\x22,(cljs.core.truth_(cljs.core.simple_ident_QMARK_)?cljs.core.simple_ident_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.simple_ident_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60957 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60957,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60957;\n}\n})(),false);\n})(),sci.impl.namespaces.sci_ns_name,sci.impl.namespaces._STAR_1,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.last;},new cljs.core.Symbol(\x22cljs.core\x22,\x22last\x22,\x22cljs.core/last\x22,1273893704,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22last\x22,\x22last\x22,-1548700637,null),\x22cljs/core.cljs\x22,11,1,1784,1784,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Return the last item in coll, in linear time\x22,(cljs.core.truth_(cljs.core.last)?cljs.core.last.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.last;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60967 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60967,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60967;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_shift_left;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-shift-left\x22,\x22cljs.core/bit-shift-left\x22,-342508802,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-shift-left\x22,\x22bit-shift-left\x22,-1814765981,null),\x22cljs/core.cljs\x22,21,1,2913,2913,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Bitwise shift left\x22,(cljs.core.truth_(cljs.core.bit_shift_left)?cljs.core.bit_shift_left.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_shift_left;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60969 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60969,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60969;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.int$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22int\x22,\x22cljs.core/int\x22,20935062,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22int\x22,\x22int\x22,-100885395,null),\x22cljs/core.cljs\x22,10,1,2814,2814,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Coerce to int by stripping decimal places.\x22,(cljs.core.truth_(cljs.core.int$)?cljs.core.int$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.int$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60980 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60980,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60980;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_negate;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-negate\x22,\x22cljs.core/unchecked-negate\x22,-1262131040,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-negate\x22,\x22unchecked-negate\x22,-1669067451,null),\x22cljs/core.cljs\x22,23,1,2784,2784,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_negate)?cljs.core.unchecked_negate.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_negate;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60988 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60988,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60988;\n}\n})(),false);\n})(),sci.impl.multimethods.multi_fn_impl,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_remainder_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-remainder-int\x22,\x22cljs.core/unchecked-remainder-int\x22,-1923905875,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-remainder-int\x22,\x22unchecked-remainder-int\x22,1427188224,null),\x22cljs/core.cljs\x22,30,1,2792,2792,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_remainder_int)?cljs.core.unchecked_remainder_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_remainder_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60991 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60991,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60991;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.byte$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22byte\x22,\x22cljs.core/byte\x22,1388930944,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22byte\x22,\x22byte\x22,-1970660549,null),\x22cljs/core.cljs\x22,19,1,2713,2713,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.byte$)?cljs.core.byte$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.byte$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__60998 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__60998,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__60998;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.conj_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22conj!\x22,\x22cljs.core/conj!\x22,-1516742284,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22conj!\x22,\x22conj!\x22,-841007895,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22vals\x22,\x22vals\x22,-1886377036,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,3840,3840,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22vals\x22,\x22vals\x22,-1886377036,null)], null)),\x22Adds val to the transient collection, and return tcoll. The \x27addition\x27\\n  may happen at different \x27places\x27 depending on the concrete type.\x22,(cljs.core.truth_(cljs.core.conj_BANG_)?cljs.core.conj_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.conj_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61005 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61005,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61005;\n}\n})(),false);\n})(),sci.impl.io.println,cljs.core.with_meta(sci.impl.protocols.defprotocol,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.int_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22int?\x22,\x22cljs.core/int?\x22,50730120,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22int?\x22,\x22int?\x22,1799729645,null),\x22cljs/core.cljs\x22,11,1,2285,2285,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies integer? or is an instance of goog.math.Integer\\n   or goog.math.Long.\x22,(cljs.core.truth_(cljs.core.int_QMARK_)?cljs.core.int_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.int_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61010 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61010,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61010;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.long_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22long-array\x22,\x22cljs.core/long-array\x22,1421171997,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22long-array\x22,\x22long-array\x22,217579190,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3703,3703,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),\x22Creates an array of longs. Does not coerce array, provided for compatibility\\n  with Clojure.\x22,(cljs.core.truth_(cljs.core.long_array)?cljs.core.long_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.long_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61019 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61019,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61019;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.find;},new cljs.core.Symbol(\x22cljs.core\x22,\x22find\x22,\x22cljs.core/find\x22,656179788,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22find\x22,\x22find\x22,2136810983,null),\x22cljs/core.cljs\x22,11,1,2365,2365,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null)),\x22Returns the map entry for key, or nil if key not present.\x22,(cljs.core.truth_(cljs.core.find)?cljs.core.find.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.find;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61024 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61024,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61024;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.vals;},new cljs.core.Symbol(\x22cljs.core\x22,\x22vals\x22,\x22cljs.core/vals\x22,1473678353,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22vals\x22,\x22vals\x22,-1886377036,null),\x22cljs/core.cljs\x22,11,1,9105,9105,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22map\x22,\x22map\x22,-1282745308,null)], null)),\x22Returns a sequence of the map\x27s values, in the same order as (seq map).\x22,(cljs.core.truth_(cljs.core.vals)?cljs.core.vals.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.vals;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61026 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61026,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61026;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nil_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nil?\x22,\x22cljs.core/nil?\x22,945071861,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nil?\x22,\x22nil?\x22,1612038930,null),\x22cljs/core.cljs\x22,20,1,237,237,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is nil, false otherwise.\x22,((cljs.core.nil_QMARK_)?cljs.core.nil_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nil_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61031 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61031,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61031;\n}\n})(),false);\n})(),sci.impl.io.flush,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.hash;},new cljs.core.Symbol(\x22cljs.core\x22,\x22hash\x22,\x22cljs.core/hash\x22,1219845894,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22hash\x22,\x22hash\x22,1626749931,null),\x22cljs/core.cljs\x22,11,1,1002,1002,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null)], null)),\x22Returns the hash code of its argument. Note this is the hash code\\n   consistent with \x3d.\x22,(cljs.core.truth_(cljs.core.hash)?cljs.core.hash.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.hash;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61033 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61033,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61033;\n}\n})(),false);\n})(),sci.impl.io.pr,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_subtract;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-subtract\x22,\x22cljs.core/unchecked-subtract\x22,1482268158,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-subtract\x22,\x22unchecked-subtract\x22,-2137458667,null),\x22cljs/core.cljs\x22,33,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2795,2795,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22If no ys are supplied, returns the negation of x, else subtracts\\n  the ys from x and returns the result.\x22,(cljs.core.truth_(cljs.core.unchecked_subtract)?cljs.core.unchecked_subtract.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_subtract;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61042 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61042,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61042;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.comment_STAR_),sci.impl.namespaces.macrofy(sci.impl.namespaces.sci_with_redefs),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.float_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22float?\x22,\x22cljs.core/float?\x22,-941017745,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22float?\x22,\x22float?\x22,673884616,null),\x22cljs/core.cljs\x22,13,1,2338,2338,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true for JavaScript numbers, false otherwise.\x22,(cljs.core.truth_(cljs.core.float_QMARK_)?cljs.core.float_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.float_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61044 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61044,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61044;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.second;},new cljs.core.Symbol(\x22cljs.core\x22,\x22second\x22,\x22cljs.core/second\x22,520555958,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22second\x22,\x22second\x22,1195829517,null),\x22cljs/core.cljs\x22,13,1,1759,1759,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Same as (first (next x))\x22,(cljs.core.truth_(cljs.core.second)?cljs.core.second.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.second;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61049 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61049,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61049;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.protocols.extend_protocol,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.io.err,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk_first;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-first\x22,\x22cljs.core/chunk-first\x22,-1157877305,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk-first\x22,\x22chunk-first\x22,1379046752,null),\x22cljs/core.cljs\x22,18,1,3647,3647,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),null,(cljs.core.truth_(cljs.core.chunk_first)?cljs.core.chunk_first.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk_first;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61060 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61060,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61060;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_alias,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_add_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-add-int\x22,\x22cljs.core/unchecked-add-int\x22,-1532265040,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-add-int\x22,\x22unchecked-add-int\x22,-1821763285,null),\x22cljs/core.cljs\x22,32,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,2740,2740,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the sum of nums. (+) returns 0.\x22,(cljs.core.truth_(cljs.core.unchecked_add_int)?cljs.core.unchecked_add_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_add_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61065 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61065,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61065;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ifn_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ifn?\x22,\x22cljs.core/ifn?\x22,1573873861,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ifn?\x22,\x22ifn?\x22,-2106461064,null),\x22cljs/core.cljs\x22,11,1,2272,2272,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Returns true if f returns true for fn? or satisfies IFn.\x22,(cljs.core.truth_(cljs.core.ifn_QMARK_)?cljs.core.ifn_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ifn_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61069 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61069,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61069;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ex_info;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ex-info\x22,\x22cljs.core/ex-info\x22,-409744395,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ex-info\x22,\x22ex-info\x22,-539875240,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22msg\x22,\x22msg\x22,254428083,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22msg\x22,\x22msg\x22,254428083,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null),new cljs.core.Symbol(null,\x22cause\x22,\x22cause\x22,1872432779,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22msg\x22,\x22msg\x22,254428083,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22msg\x22,\x22msg\x22,254428083,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null),new cljs.core.Symbol(null,\x22cause\x22,\x22cause\x22,1872432779,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,11484,11484,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22msg\x22,\x22msg\x22,254428083,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22msg\x22,\x22msg\x22,254428083,null),new cljs.core.Symbol(null,\x22data\x22,\x22data\x22,1407862150,null),new cljs.core.Symbol(null,\x22cause\x22,\x22cause\x22,1872432779,null)], null)),\x22Create an instance of ExceptionInfo, an Error type that carries a\\n  map of additional data.\x22,(cljs.core.truth_(cljs.core.ex_info)?cljs.core.ex_info.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ex_info;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61070 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61070,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61070;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.inc;},new cljs.core.Symbol(\x22cljs.core\x22,\x22inc\x22,\x22cljs.core/inc\x22,-879172610,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22inc\x22,\x22inc\x22,324505433,null),\x22cljs/core.cljs\x22,10,1,1439,1439,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns a number one greater than num.\x22,(cljs.core.truth_(cljs.core.inc)?cljs.core.inc.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.inc;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61076 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61076,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61076;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._SLASH_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22/\x22,\x22cljs.core//\x22,-696756880,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22/\x22,\x22/\x22,-1371932971,null),\x22cljs/core.cljs\x22,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2640,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22If no denominators are supplied, returns 1/numerator,\\n  else returns numerator divided by all of the denominators.\x22,(cljs.core.truth_(cljs.core._SLASH_)?cljs.core._SLASH_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._SLASH_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61082 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61082,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61082;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.volatile_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22volatile!\x22,\x22cljs.core/volatile!\x22,-829435536,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22volatile!\x22,\x22volatile!\x22,919368405,null),\x22cljs/core.cljs\x22,16,1,4589,4589,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null)),\x22Creates and returns a Volatile with an initial value of val.\x22,(cljs.core.truth_(cljs.core.volatile_BANG_)?cljs.core.volatile_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.volatile_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61092 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61092,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61092;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.with_meta;},new cljs.core.Symbol(\x22cljs.core\x22,\x22with-meta\x22,\x22cljs.core/with-meta\x22,749126446,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22with-meta\x22,\x22with-meta\x22,73674707,null),\x22cljs/core.cljs\x22,16,1,2084,2084,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null)], null)),\x22Returns an object of the same type and value as obj, with\\n  map m as its metadata.\x22,(cljs.core.truth_(cljs.core.with_meta)?cljs.core.with_meta.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.with_meta;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61097 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61097,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61097;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.map_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22map?\x22,\x22cljs.core/map?\x22,-1390345523,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22map?\x22,\x22map?\x22,-1780568534,null),\x22cljs/core.cljs\x22,11,1,2169,2169,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies IMap\x22,(cljs.core.truth_(cljs.core.map_QMARK_)?cljs.core.map_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.map_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61102 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61102,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61102;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.vector_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22vector?\x22,\x22cljs.core/vector?\x22,-1550392028,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22vector?\x22,\x22vector?\x22,-61367869,null),\x22cljs/core.cljs\x22,14,1,2181,2181,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies IVector\x22,(cljs.core.truth_(cljs.core.vector_QMARK_)?cljs.core.vector_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.vector_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61103 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61103,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61103;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.__GT__GT__STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.quot;},new cljs.core.Symbol(\x22cljs.core\x22,\x22quot\x22,\x22cljs.core/quot\x22,-458656343,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22quot\x22,\x22quot\x22,-1125214196,null),\x22cljs/core.cljs\x22,11,1,2853,2853,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null)], null)),\x22quot[ient] of dividing numerator by denominator.\x22,(cljs.core.truth_(cljs.core.quot)?cljs.core.quot.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.quot;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61108 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61108,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61108;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.any_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22any?\x22,\x22cljs.core/any?\x22,-2068111842,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22any?\x22,\x22any?\x22,-318999933,null),\x22cljs/core.cljs\x22,11,1,283,283,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if given any argument.\x22,(cljs.core.truth_(cljs.core.any_QMARK_)?cljs.core.any_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.any_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61113 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61113,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61113;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_add;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-add\x22,\x22cljs.core/unchecked-add\x22,1865931960,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-add\x22,\x22unchecked-add\x22,-2030665965,null),\x22cljs/core.cljs\x22,28,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,2733,2733,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the sum of nums. (+) returns 0.\x22,(cljs.core.truth_(cljs.core.unchecked_add)?cljs.core.unchecked_add.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_add;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61119 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61119,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61119;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.floats;},new cljs.core.Symbol(\x22cljs.core\x22,\x22floats\x22,\x22cljs.core/floats\x22,912155865,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22floats\x22,\x22floats\x22,513591110,null),\x22cljs/core.cljs\x22,13,1,2839,2839,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.floats)?cljs.core.floats.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.floats;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61122 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61122,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61122;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.drop_while;},new cljs.core.Symbol(\x22cljs.core\x22,\x22drop-while\x22,\x22cljs.core/drop-while\x22,-762276474,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22drop-while\x22,\x22drop-while\x22,719206685,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4830,4830,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the items in coll starting from the\\n  first item for which (pred item) returns logical false.  Returns a\\n  stateful transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.drop_while)?cljs.core.drop_while.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.drop_while;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61126 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61126,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61126;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bounded_count;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bounded-count\x22,\x22cljs.core/bounded-count\x22,355256728,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.9\x22,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bounded-count\x22,\x22bounded-count\x22,1030640883,null),\x22cljs/core.cljs\x22,20,1,3769,3769,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22If coll is counted? returns its count, else will count at most the first n\\n   elements of coll using its seq\x22,(cljs.core.truth_(cljs.core.bounded_count)?cljs.core.bounded_count.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bounded_count;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61130 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61130,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61130;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.take_while;},new cljs.core.Symbol(\x22cljs.core\x22,\x22take-while\x22,\x22cljs.core/take-while\x22,1340415749,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22take-while\x22,\x22take-while\x22,2007268328,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9605,9605,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of successive items from coll while\\n  (pred item) returns logical true. pred must be free of side-effects.\\n  Returns a transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.take_while)?cljs.core.take_while.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.take_while;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61132 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61132,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61132;\n}\n})(),false);\n})(),sci.impl.protocols.extends_QMARK_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sort;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sort\x22,\x22cljs.core/sort\x22,1126425070,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sort\x22,\x22sort\x22,-1700969851,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2451,2451,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a sorted sequence of the items in coll. Comp can be\\n   boolean-valued comparison function, or a -/0/+ valued comparator.\\n   Comp defaults to compare.\x22,(cljs.core.truth_(cljs.core.sort)?cljs.core.sort.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sort;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61135 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61135,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61135;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.false_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22false?\x22,\x22cljs.core/false?\x22,-1660815306,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22false?\x22,\x22false?\x22,-1522377573,null),\x22cljs/core.cljs\x22,22,1,2231,2231,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is the value false, false otherwise.\x22,((cljs.core.false_QMARK_)?cljs.core.false_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.false_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61137 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61137,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61137;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.cat;},new cljs.core.Symbol(\x22cljs.core\x22,\x22cat\x22,\x22cljs.core/cat\x22,849575859,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.7\x22,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22cat\x22,\x22cat\x22,182721320,null),\x22cljs/core.cljs\x22,10,1,10730,10730,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rf\x22,\x22rf\x22,-651557526,null)], null)),\x22A transducer which concatenates the contents of each input, which must be a\\n  collection, into the reduction.\x22,(cljs.core.truth_(cljs.core.cat)?cljs.core.cat.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.cat;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61140 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61140,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61140;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.protocols.extend_type,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.io.print_level,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.replace;},new cljs.core.Symbol(\x22cljs.core\x22,\x22replace\x22,\x22cljs.core/replace\x22,-358316426,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22replace\x22,\x22replace\x22,853943757,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9473,9473,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Given a map of replacement pairs and a vector/collection, returns a\\n  vector/seq with any elements \x3d a key in smap replaced with the\\n  corresponding val in smap.  Returns a transducer when no collection\\n  is provided.\x22,(cljs.core.truth_(cljs.core.replace)?cljs.core.replace.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.replace;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61142 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61142,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61142;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.drop;},new cljs.core.Symbol(\x22cljs.core\x22,\x22drop\x22,\x22cljs.core/drop\x22,1598881343,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22drop\x22,\x22drop\x22,2005013138,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4791,4791,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of all but the first n items in coll.\\n  Returns a stateful transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.drop)?cljs.core.drop.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.drop;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61144 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61144,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61144;\n}\n})(),false);\n})(),sci.impl.vars.push_thread_bindings,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.not;},new cljs.core.Symbol(\x22cljs.core\x22,\x22not\x22,\x22cljs.core/not\x22,100665144,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22not\x22,\x22not\x22,1044554643,null),\x22cljs/core.cljs\x22,10,1,254,254,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is logical false, false otherwise.\x22,(cljs.core.truth_(cljs.core.not)?cljs.core.not.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.not;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61147 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61147,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61147;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.keep;},new cljs.core.Symbol(\x22cljs.core\x22,\x22keep\x22,\x22cljs.core/keep\x22,451059968,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22keep\x22,\x22keep\x22,-492807003,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4404,4404,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the non-nil results of (f item). Note,\\n  this means false return values will be included.  f must be free of\\n  side-effects.  Returns a transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.keep)?cljs.core.keep.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.keep;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61148 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61148,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61148;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.cons;},new cljs.core.Symbol(\x22cljs.core\x22,\x22cons\x22,\x22cljs.core/cons\x22,96507417,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22cons\x22,\x22cons\x22,755448454,null),\x22cljs/core.cljs\x22,11,1,3297,3297,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a new seq where x is the first element and coll is the rest.\x22,(cljs.core.truth_(cljs.core.cons)?cljs.core.cons.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.cons;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61151 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61151,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61151;\n}\n})(),false);\n})(),sci.impl.namespaces._STAR_e,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_shift_right;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-shift-right\x22,\x22cljs.core/bit-shift-right\x22,1827903237,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-shift-right\x22,\x22bit-shift-right\x22,884046498,null),\x22cljs/core.cljs\x22,22,1,2917,2917,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Bitwise shift right\x22,(cljs.core.truth_(cljs.core.bit_shift_right)?cljs.core.bit_shift_right.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_shift_right;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61152 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61152,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61152;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.associative_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22associative?\x22,\x22cljs.core/associative?\x22,-540020088,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22associative?\x22,\x22associative?\x22,-141666771,null),\x22cljs/core.cljs\x22,19,1,2149,2149,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if coll implements IAssociative\x22,(cljs.core.truth_(cljs.core.associative_QMARK_)?cljs.core.associative_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.associative_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61155 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61155,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61155;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.read.read,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var G__61156 \x3d sci.impl.vars.__GT_SciVar(null,new cljs.core.Symbol(\x22clojure.core\x22,\x22unquote\x22,\x22clojure.core/unquote\x22,843087510,null),null,false);\nG__61156.sci$impl$vars$IVar$unbind$arity$1(null);\n\nreturn G__61156;\n})(),cljs.core.with_meta(sci.impl.namespaces.macroexpand_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.io.print_length,sci.impl.namespaces.macrofy(sci.impl.namespaces.if_not_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk_next;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-next\x22,\x22cljs.core/chunk-next\x22,119043601,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk-next\x22,\x22chunk-next\x22,-547810434,null),\x22cljs/core.cljs\x22,17,1,3653,3653,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),null,(cljs.core.truth_(cljs.core.chunk_next)?cljs.core.chunk_next.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk_next;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61159 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61159,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61159;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.vars.var_set;},new cljs.core.Symbol(\x22sci.impl.vars\x22,\x22var-set\x22,\x22sci.impl.vars/var-set\x22,-1385801246,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.vars\x22,\x22sci.impl.vars\x22,-1077610315,null),new cljs.core.Symbol(null,\x22var-set\x22,\x22var-set\x22,-1361408121,null),\x22sci/impl/vars.cljc\x22,14,1,375,375,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null)),null,(cljs.core.truth_(sci.impl.vars.var_set)?sci.impl.vars.var_set.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.vars.var_set;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61160 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61160,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61160;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_flip;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-flip\x22,\x22cljs.core/bit-flip\x22,1754103069,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-flip\x22,\x22bit-flip\x22,809639606,null),\x22cljs/core.cljs\x22,15,1,2894,2894,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Flip bit at index n\x22,(cljs.core.truth_(cljs.core.bit_flip)?cljs.core.bit_flip.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_flip;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61162 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61162,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61162;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.aset;},new cljs.core.Symbol(\x22cljs.core\x22,\x22aset\x22,\x22cljs.core/aset\x22,-898215545,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22aset\x22,\x22aset\x22,900773178,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22idx2\x22,\x22idx2\x22,195459820,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22idxv\x22,\x22idxv\x22,-1163260636,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,511,511,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22idx2\x22,\x22idx2\x22,195459820,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22idxv\x22,\x22idxv\x22,-1163260636,null)], null)),\x22Sets the value at the index/indices. Works on JavaScript arrays.\\n  Returns val.\x22,(cljs.core.truth_(cljs.core.aset)?cljs.core.aset.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.aset;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61164 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61164,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61164;\n}\n})(),false);\n})(),sci.impl.core_protocols._deref,sci.impl.vars.current_ns,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.some_fn;},new cljs.core.Symbol(\x22cljs.core\x22,\x22some-fn\x22,\x22cljs.core/some-fn\x22,-905373668,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22some-fn\x22,\x22some-fn\x22,-490044165,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ps\x22,\x22ps\x22,1932889573,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,4678,4678,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ps\x22,\x22ps\x22,1932889573,null)], null)),\x22Takes a set of predicates and returns a function f that returns the first logical true value\\n  returned by one of its composing predicates against any of its arguments, else it returns\\n  logical false. Note that f is short-circuiting in that it will stop execution on the first\\n  argument that triggers a logical true result against the original predicates.\x22,(cljs.core.truth_(cljs.core.some_fn)?cljs.core.some_fn.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.some_fn;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61165 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61165,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61165;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.vars.var_QMARK_;},new cljs.core.Symbol(\x22sci.impl.vars\x22,\x22var?\x22,\x22sci.impl.vars/var?\x22,225921804,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.vars\x22,\x22sci.impl.vars\x22,-1077610315,null),new cljs.core.Symbol(null,\x22var?\x22,\x22var?\x22,230455531,null),\x22sci/impl/vars.cljc\x22,11,1,378,378,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(sci.impl.vars.var_QMARK_)?sci.impl.vars.var_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.vars.var_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61170 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61170,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61170;\n}\n})(),false);\n})(),sci.impl.io.print_meta,sci.impl.namespaces.macrofy(sci.impl.namespaces.when_not_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_multiply_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-multiply-int\x22,\x22cljs.core/unchecked-multiply-int\x22,-12705513,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-multiply-int\x22,\x22unchecked-multiply-int\x22,-788546068,null),\x22cljs/core.cljs\x22,37,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,2777,2777,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the product of nums. (*) returns 1.\x22,(cljs.core.truth_(cljs.core.unchecked_multiply_int)?cljs.core.unchecked_multiply_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_multiply_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61172 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61172,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61172;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.identity;},new cljs.core.Symbol(\x22cljs.core\x22,\x22identity\x22,\x22cljs.core/identity\x22,725118887,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22identity\x22,\x22identity\x22,-1007039734,null),\x22cljs/core.cljs\x22,15,1,2583,2583,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns its argument.\x22,(cljs.core.truth_(cljs.core.identity)?cljs.core.identity.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.identity;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61174 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61174,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61174;\n}\n})(),false);\n})(),sci.impl.core_protocols._reset_BANG_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.to_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22to-array\x22,\x22cljs.core/to-array\x22,-1520976800,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22to-array\x22,\x22to-array\x22,-585705189,null),\x22cljs/core.cljs\x22,15,1,3660,3660,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns an array containing the contents of coll.\x22,(cljs.core.truth_(cljs.core.to_array)?cljs.core.to_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.to_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61183 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61183,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61183;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.double_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22double-array\x22,\x22cljs.core/double-array\x22,655716469,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22double-array\x22,\x22double-array\x22,257035726,null),\x22cljs/core.cljs\x22,19,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3725,3725,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),\x22Creates an array of doubles. Does not coerce array, provided for compatibility\\n  with Clojure.\x22,(cljs.core.truth_(cljs.core.double_array)?cljs.core.double_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.double_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61188 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61188,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61188;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sorted_map;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sorted-map\x22,\x22cljs.core/sorted-map\x22,-1196662760,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sorted-map\x22,\x22sorted-map\x22,-521216771,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,8939,8939,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),\x22keyval \x3d\x3e key val\\n  Returns a new sorted map with supplied mappings.\x22,(cljs.core.truth_(cljs.core.sorted_map)?cljs.core.sorted_map.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sorted_map;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61193 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61193,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61193;\n}\n})(),false);\n})(),(function (p1__60737_SHARP_){\nreturn sci.impl.types.getMethods(p1__60737_SHARP_);\n}),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.concat;},new cljs.core.Symbol(\x22cljs.core\x22,\x22concat\x22,\x22cljs.core/concat\x22,-1133584918,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22concat\x22,\x22concat\x22,-467652465,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22zs\x22,\x22zs\x22,-257004521,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,3790,3790,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22zs\x22,\x22zs\x22,-257004521,null)], null)),\x22Returns a lazy seq representing the concatenation of the elements in the supplied colls.\x22,(cljs.core.truth_(cljs.core.concat)?cljs.core.concat.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.concat;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61194 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61194,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61194;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.char$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22char\x22,\x22cljs.core/char\x22,-1068683232,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22char\x22,\x22char\x22,998943941,null),\x22cljs/core.cljs\x22,11,1,2715,2715,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Coerce to char\x22,(cljs.core.truth_(cljs.core.char$)?cljs.core.char$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.char$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61200 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61200,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61200;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ident_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ident?\x22,\x22cljs.core/ident?\x22,1567441535,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ident?\x22,\x22ident?\x22,-2061359468,null),\x22cljs/core.cljs\x22,13,1,3378,3378,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a symbol or keyword\x22,(cljs.core.truth_(cljs.core.ident_QMARK_)?cljs.core.ident_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ident_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61205 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61205,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61205;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.make_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22make-array\x22,\x22cljs.core/make-array\x22,-1802166799,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22make-array\x22,\x22make-array\x22,-1135103906,null),\x22cljs/core.cljs\x22,24,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more-sizes\x22,\x22more-sizes\x22,-763736162,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,418,418,new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more-sizes\x22,\x22more-sizes\x22,-763736162,null)], null)),\x22Construct a JavaScript array of the specified dimensions. Accepts ignored\\n  type argument for compatibility with Clojure. Note that there is no efficient\\n  way to allocate multi-dimensional arrays in JavaScript; as such, this function\\n  will run in polynomial time when called with 3 or more arguments.\x22,(cljs.core.truth_(cljs.core.make_array)?cljs.core.make_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.make_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61210 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61210,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61210;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk_buffer;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-buffer\x22,\x22cljs.core/chunk-buffer\x22,14093626,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk-buffer\x22,\x22chunk-buffer\x22,789680287,null),\x22cljs/core.cljs\x22,19,1,3528,3528,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22capacity\x22,\x22capacity\x22,1713221261,null)], null)),null,(cljs.core.truth_(cljs.core.chunk_buffer)?cljs.core.chunk_buffer.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk_buffer;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61215 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61215,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61215;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.peek;},new cljs.core.Symbol(\x22cljs.core\x22,\x22peek\x22,\x22cljs.core/peek\x22,942197903,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22peek\x22,\x22peek\x22,1349135202,null),\x22cljs/core.cljs\x22,11,1,2100,2100,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22For a list or queue, same as first, for a vector, same as, but much\\n  more efficient than, last. If the collection is empty, returns nil.\x22,(cljs.core.truth_(cljs.core.peek)?cljs.core.peek.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.peek;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61218 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61218,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61218;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.hash_unordered_coll;},new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-unordered-coll\x22,\x22cljs.core/hash-unordered-coll\x22,-639086053,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22hash-unordered-coll\x22,\x22hash-unordered-coll\x22,-240471618,null),\x22cljs/core.cljs\x22,34,1,1367,1367,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns the hash code, consistent with \x3d, for an external unordered\\n   collection implementing Iterable. For maps, the iterator should\\n   return map entries whose hash is computed as\\n     (hash-ordered-coll [k v]).\\n   See http://clojure.org/data_structures#hash for full algorithms.\x22,(cljs.core.truth_(cljs.core.hash_unordered_coll)?cljs.core.hash_unordered_coll.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.hash_unordered_coll;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61221 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61221,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61221;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.when_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.clj__GT_js;},new cljs.core.Symbol(\x22cljs.core\x22,\x22clj-\x3ejs\x22,\x22cljs.core/clj-\x3ejs\x22,-1490083117,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22clj-\x3ejs\x22,\x22clj-\x3ejs\x22,-1880244676,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyword-fn\x22,\x22keyword-fn\x22,1575964852,null)], null),new cljs.core.Keyword(null,\x22or\x22,\x22or\x22,235744169),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22keyword-fn\x22,\x22keyword-fn\x22,1575964852,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),new cljs.core.Symbol(null,\x22options\x22,\x22options\x22,1740170016,null)], null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyword-fn\x22,\x22keyword-fn\x22,1575964852,null)], null),new cljs.core.Keyword(null,\x22or\x22,\x22or\x22,235744169),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22keyword-fn\x22,\x22keyword-fn\x22,1575964852,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),new cljs.core.Symbol(null,\x22options\x22,\x22options\x22,1740170016,null)], null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,10857,10857,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keyword-fn\x22,\x22keyword-fn\x22,1575964852,null)], null),new cljs.core.Keyword(null,\x22or\x22,\x22or\x22,235744169),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22keyword-fn\x22,\x22keyword-fn\x22,1575964852,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),new cljs.core.Symbol(null,\x22options\x22,\x22options\x22,1740170016,null)], null)], null)),\x22Recursively transforms ClojureScript values to JavaScript.\\n  sets/vectors/lists become Arrays, Keywords and Symbol become Strings,\\n  Maps become Objects. Arbitrary keys are encoded to by `key-\x3ejs`.\\n  Options is a key-value pair, where the only valid key is\\n  :keyword-fn, which should point to a single-argument function to be\\n  called on keyword keys. Default to `name`.\x22,(cljs.core.truth_(cljs.core.clj__GT_js)?cljs.core.clj__GT_js.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.clj__GT_js;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61224 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61224,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61224;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sequence;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sequence\x22,\x22cljs.core/sequence\x22,1908459032,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sequence\x22,\x22sequence\x22,-1727628355,null),\x22cljs/core.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,4219,4219,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),\x22Coerces coll to a (possibly empty) sequence, if it is not already\\n  one. Will not force a lazy seq. (sequence nil) yields (), When a\\n  transducer is supplied, returns a lazy sequence of applications of\\n  the transform to the items in coll(s), i.e. to the set of first\\n  items of each coll, followed by the set of second\\n  items in each coll, until any one of the colls is exhausted.  Any\\n  remaining items in other colls are ignored. The transform should accept\\n  number-of-colls arguments\x22,(cljs.core.truth_(cljs.core.sequence)?cljs.core.sequence.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sequence;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61227 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61227,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61227;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.group_by;},new cljs.core.Symbol(\x22cljs.core\x22,\x22group-by\x22,\x22cljs.core/group-by\x22,593619464,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22group-by\x22,\x22group-by\x22,1261391725,null),\x22cljs/core.cljs\x22,15,1,10971,10971,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a map of the elements of coll keyed by the result of\\n  f on each element. The value at each key will be a vector of the\\n  corresponding elements, in the order they appeared in coll.\x22,(cljs.core.truth_(cljs.core.group_by)?cljs.core.group_by.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.group_by;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61230 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61230,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61230;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.re_seq;},new cljs.core.Symbol(\x22cljs.core\x22,\x22re-seq\x22,\x22cljs.core/re-seq\x22,-1438765119,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22re-seq\x22,\x22re-seq\x22,-2105554076,null),\x22cljs/core.cljs\x22,13,1,10145,10145,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Returns a lazy sequence of successive matches of re in s.\x22,(cljs.core.truth_(cljs.core.re_seq)?cljs.core.re_seq.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.re_seq;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61233 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61233,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61233;\n}\n})(),false);\n})(),sci.impl.core_protocols._swap_BANG_,sci.impl.namespaces.macrofy(sci.impl.namespaces.when_some_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_subtract_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-subtract-int\x22,\x22cljs.core/unchecked-subtract-int\x22,-695292980,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-subtract-int\x22,\x22unchecked-subtract-int\x22,-1899147615,null),\x22cljs/core.cljs\x22,37,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2802,2802,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22If no ys are supplied, returns the negation of x, else subtracts\\n  the ys from x and returns the result.\x22,(cljs.core.truth_(cljs.core.unchecked_subtract_int)?cljs.core.unchecked_subtract_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_subtract_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61236 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61236,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61236;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._LT__EQ_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3c\x3d\x22,\x22cljs.core/\x3c\x3d\x22,1677001748,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22\x3c\x3d\x22,\x22\x3c\x3d\x22,1244895369,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2659,2659,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns non-nil if nums are in monotonically non-decreasing order,\\n  otherwise false.\x22,((cljs.core._LT__EQ_)?cljs.core._LT__EQ_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._LT__EQ_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61237 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61237,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61237;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.prefers;},new cljs.core.Symbol(\x22cljs.core\x22,\x22prefers\x22,\x22cljs.core/prefers\x22,-764228503,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22prefers\x22,\x22prefers\x22,-374265406,null),\x22cljs/core.cljs\x22,14,1,11379,11379,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22multifn\x22,\x22multifn\x22,-1904313150,null)], null)),\x22Given a multimethod, returns a map of preferred value -\x3e set of other values\x22,(cljs.core.truth_(cljs.core.prefers)?cljs.core.prefers.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.prefers;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61240 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61240,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61240;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.vary_meta;},new cljs.core.Symbol(\x22cljs.core\x22,\x22vary-meta\x22,\x22cljs.core/vary-meta\x22,-938366546,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22vary-meta\x22,\x22vary-meta\x22,-1580067831,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(6),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(6),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null)], null),new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null,null)], null),1,3996,3996,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null)], null),new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22obj\x22,\x22obj\x22,-1672671807,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22Returns an object of the same type and value as obj, with\\n  (apply f (meta obj) args) as its metadata.\x22,(cljs.core.truth_(cljs.core.vary_meta)?cljs.core.vary_meta.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.vary_meta;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61243 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61243,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61243;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._EQ_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3d\x22,\x22cljs.core/\x3d\x22,-1891498332,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22\x3d\x22,\x22\x3d\x22,-1501502141,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,1288,1288,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Equality. Returns true if x equals y, false if not. Compares\\n  numbers and collections in a type-independent manner.  Clojure\x27s immutable data\\n  structures define -equiv (and thus \x3d) as a value, not an identity,\\n  comparison.\x22,((cljs.core._EQ_)?cljs.core._EQ_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._EQ_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61244 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61244,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61244;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_intern,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.keep_indexed;},new cljs.core.Symbol(\x22cljs.core\x22,\x22keep-indexed\x22,\x22cljs.core/keep-indexed\x22,1480892647,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22keep-indexed\x22,\x22keep-indexed\x22,-2020916352,null),\x22cljs/core.cljs\x22,19,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4603,4603,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the non-nil results of (f index item). Note,\\n  this means false return values will be included.  f must be free of\\n  side-effects.  Returns a stateful transducer when no collection is\\n  provided.\x22,(cljs.core.truth_(cljs.core.keep_indexed)?cljs.core.keep_indexed.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.keep_indexed;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61247 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61247,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61247;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.js_obj;},new cljs.core.Symbol(\x22cljs.core\x22,\x22js-obj\x22,\x22cljs.core/js-obj\x22,1009370607,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22js-obj\x22,\x22js-obj\x22,342383250,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2192,2192,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),\x22Create JavaSript object from an even number arguments representing\\n  interleaved keys and values.\x22,(cljs.core.truth_(cljs.core.js_obj)?cljs.core.js_obj.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.js_obj;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61248 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61248,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61248;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.every_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22every?\x22,\x22cljs.core/every?\x22,1416822717,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22every?\x22,\x22every?\x22,2083724064,null),\x22cljs/core.cljs\x22,13,1,4241,4241,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns true if (pred x) is logical true for every x in coll, else\\n  false.\x22,(cljs.core.truth_(cljs.core.every_QMARK_)?cljs.core.every_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.every_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61251 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61251,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61251;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.comp;},new cljs.core.Symbol(\x22cljs.core\x22,\x22comp\x22,\x22cljs.core/comp\x22,-2137591872,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22comp\x22,\x22comp\x22,-1462482139,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f1\x22,\x22f1\x22,-939903380,null),new cljs.core.Symbol(null,\x22f2\x22,\x22f2\x22,2036700123,null),new cljs.core.Symbol(null,\x22f3\x22,\x22f3\x22,-699606726,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22fs\x22,\x22fs\x22,-482394717,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,4293,4293,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f1\x22,\x22f1\x22,-939903380,null),new cljs.core.Symbol(null,\x22f2\x22,\x22f2\x22,2036700123,null),new cljs.core.Symbol(null,\x22f3\x22,\x22f3\x22,-699606726,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22fs\x22,\x22fs\x22,-482394717,null)], null)),\x22Takes a set of functions and returns a fn that is the composition\\n  of those fns.  The returned fn takes a variable number of args,\\n  applies the rightmost of fns to the args, the next\\n  fn (right-to-left) to the result, etc.\x22,(cljs.core.truth_(cljs.core.comp)?cljs.core.comp.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.comp;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61252 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61252,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61252;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_set;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-set\x22,\x22cljs.core/bit-set\x22,-512404180,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-set\x22,\x22bit-set\x22,-910710655,null),\x22cljs/core.cljs\x22,14,1,2903,2903,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Set bit at index n\x22,(cljs.core.truth_(cljs.core.bit_set)?cljs.core.bit_set.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_set;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61257 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61257,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61257;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.dissoc;},new cljs.core.Symbol(\x22cljs.core\x22,\x22dissoc\x22,\x22cljs.core/dissoc\x22,-432349815,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22dissoc\x22,\x22dissoc\x22,1039760994,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2012,2012,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),\x22dissoc[iate]. Returns a new map of the same (hashed/sorted) type,\\n  that does not contain a mapping for key(s).\x22,(cljs.core.truth_(cljs.core.dissoc)?cljs.core.dissoc.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.dissoc;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61259 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61259,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61259;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.min;},new cljs.core.Symbol(\x22cljs.core\x22,\x22min\x22,\x22cljs.core/min\x22,1166879476,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22min\x22,\x22min\x22,2085523049,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2706,2706,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the least of the nums.\x22,(cljs.core.truth_(cljs.core.min)?cljs.core.min.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.min;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61260 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61260,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61260;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.char_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22char?\x22,\x22cljs.core/char?\x22,416405281,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22char?\x22,\x22char?\x22,-1072221244,null),\x22cljs/core.cljs\x22,12,1,278,278,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is a JavaScript string of length one.\x22,(cljs.core.truth_(cljs.core.char_QMARK_)?cljs.core.char_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.char_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61270 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61270,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61270;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.with_open_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.interleave;},new cljs.core.Symbol(\x22cljs.core\x22,\x22interleave\x22,\x22cljs.core/interleave\x22,1629454455,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22interleave\x22,\x22interleave\x22,165488106,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,5109,5109,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),\x22Returns a lazy seq of the first item in each coll, then the second etc.\x22,(cljs.core.truth_(cljs.core.interleave)?cljs.core.interleave.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.interleave;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61275 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61275,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61275;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.with_local_vars_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.sci_bound_QMARK_;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22sci-bound?\x22,\x22sci.impl.namespaces/sci-bound?\x22,-877198147,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22sci-bound?\x22,\x22sci-bound?\x22,2065661932,null),\x22sci/impl/namespaces.cljc\x22,17,1,499,499,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sci-var\x22,\x22sci-var\x22,831114872,null)], null)),null,(cljs.core.truth_(sci.impl.namespaces.sci_bound_QMARK_)?sci.impl.namespaces.sci_bound_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.sci_bound_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61280 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61280,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61280;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_all_ns,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.split_at;},new cljs.core.Symbol(\x22cljs.core\x22,\x22split-at\x22,\x22cljs.core/split-at\x22,-736135211,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22split-at\x22,\x22split-at\x22,-60953742,null),\x22cljs/core.cljs\x22,15,1,4922,4922,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a vector of [(take n coll) (drop n coll)]\x22,(cljs.core.truth_(cljs.core.split_at)?cljs.core.split_at.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.split_at;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61281 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61281,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61281;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.neg_int_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22neg-int?\x22,\x22cljs.core/neg-int?\x22,-933447883,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22neg-int?\x22,\x22neg-int?\x22,-1610409390,null),\x22cljs/core.cljs\x22,24,1,2309,2309,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies int? and is negative.\x22,((cljs.core.neg_int_QMARK_)?cljs.core.neg_int_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.neg_int_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61287 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61287,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61287;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.mapv;},new cljs.core.Symbol(\x22cljs.core\x22,\x22mapv\x22,\x22cljs.core/mapv\x22,433728488,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22mapv\x22,\x22mapv\x22,-241595241,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(4),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(4),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,5247,5247,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),\x22Returns a vector consisting of the result of applying f to the\\n  set of first items of each coll, followed by applying f to the set\\n  of second items in each coll, until any one of the colls is\\n  exhausted.  Any remaining items in other colls are ignored. Function\\n  f should accept number-of-colls arguments.\x22,(cljs.core.truth_(cljs.core.mapv)?cljs.core.mapv.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.mapv;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61293 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61293,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61293;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.defonce_STAR_),sci.impl.io.prn,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.drop_last;},new cljs.core.Symbol(\x22cljs.core\x22,\x22drop-last\x22,\x22cljs.core/drop-last\x22,1430579411,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22drop-last\x22,\x22drop-last\x22,-1123611530,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4816,4816,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Return a lazy sequence of all but the last n (default 1) items in coll\x22,(cljs.core.truth_(cljs.core.drop_last)?cljs.core.drop_last.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.drop_last;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61299 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61299,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61299;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.with_bindings_STAR_;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22with-bindings*\x22,\x22sci.impl.namespaces/with-bindings*\x22,1770638930,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22with-bindings*\x22,\x22with-bindings*\x22,-93186207,null),\x22sci/impl/namespaces.cljc\x22,21,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22binding-map\x22,\x22binding-map\x22,-70991329,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22binding-map\x22,\x22binding-map\x22,-70991329,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,564,564,cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22binding-map\x22,\x22binding-map\x22,-70991329,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22Takes a map of Var/value pairs. Installs for the given Vars the associated\\n  values as thread-local bindings. Then calls f with the supplied arguments.\\n  Pops the installed bindings after f returned. Returns whatever f returns.\x22,(cljs.core.truth_(sci.impl.namespaces.with_bindings_STAR_)?sci.impl.namespaces.with_bindings_STAR_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.with_bindings_STAR_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61302 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61302,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61302;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.fnil;},new cljs.core.Symbol(\x22cljs.core\x22,\x22fnil\x22,\x22cljs.core/fnil\x22,479587341,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22fnil\x22,\x22fnil\x22,-187395162,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),4,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),4,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,4351,4351,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null)], null)),\x22Takes a function f, and returns a function that calls f, replacing\\n  a nil first argument to f with the supplied value x. Higher arity\\n  versions can replace arguments in the second and third\\n  positions (y, z). Note that the function f can take any number of\\n  arguments, not just the one(s) being nil-patched.\x22,(cljs.core.truth_(cljs.core.fnil)?cljs.core.fnil.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.fnil;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61307 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61307,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61307;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.cond__GT__GT__STAR_),sci.impl.vars.pop_thread_bindings,sci.impl.protocols.satisfies_QMARK_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.next;},new cljs.core.Symbol(\x22cljs.core\x22,\x22next\x22,\x22cljs.core/next\x22,-1291438473,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22next\x22,\x22next\x22,1522830042,null),\x22cljs/core.cljs\x22,16,1,1279,1279,new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a seq of the items after the first. Calls seq on its\\n  argument.  If there are no more items, returns nil\x22,((cljs.core.next)?cljs.core.next.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.next;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61310 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61310,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61310;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._PLUS_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22+\x22,\x22cljs.core/+\x22,-342754435,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22+\x22,\x22+\x22,-740910886,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,2616,2616,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the sum of nums. (+) returns 0.\x22,(cljs.core.truth_(cljs.core._PLUS_)?cljs.core._PLUS_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._PLUS_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61314 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61314,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61314;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.read.load_string,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.name;},new cljs.core.Symbol(\x22cljs.core\x22,\x22name\x22,\x22cljs.core/name\x22,-260873443,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null),\x22cljs/core.cljs\x22,11,1,9524,9524,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns the name String of a string, symbol or keyword.\x22,(cljs.core.truth_(cljs.core.name)?cljs.core.name.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.name;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61316 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61316,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61316;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_double;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-double\x22,\x22cljs.core/unchecked-double\x22,2034337059,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-double\x22,\x22unchecked-double\x22,-1593778036,null),\x22cljs/core.cljs\x22,31,1,2731,2731,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_double)?cljs.core.unchecked_double.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_double;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61319 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61319,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61319;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.when_let_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.symbol_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22symbol?\x22,\x22cljs.core/symbol?\x22,1422196122,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22symbol?\x22,\x22symbol?\x22,1820680511,null),\x22cljs/core.cljs\x22,23,1,1051,1051,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a Symbol\x22,((cljs.core.symbol_QMARK_)?cljs.core.symbol_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.symbol_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61322 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61322,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61322;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk_cons;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-cons\x22,\x22cljs.core/chunk-cons\x22,-250075688,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk-cons\x22,\x22chunk-cons\x22,433801405,null),\x22cljs/core.cljs\x22,17,1,3636,3636,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22chunk\x22,\x22chunk\x22,449371907,null),new cljs.core.Symbol(null,\x22rest\x22,\x22rest\x22,398835108,null)], null)),null,(cljs.core.truth_(cljs.core.chunk_cons)?cljs.core.chunk_cons.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk_cons;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61325 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61325,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61325;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_imports,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.methods$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22methods\x22,\x22cljs.core/methods\x22,-1793562622,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22methods\x22,\x22methods\x22,2094462393,null),\x22cljs/core.cljs\x22,14,1,11370,11370,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22multifn\x22,\x22multifn\x22,-1904313150,null)], null)),\x22Given a multimethod, returns a map of dispatch values -\x3e dispatch fns\x22,(cljs.core.truth_(cljs.core.methods$)?cljs.core.methods$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.methods$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61327 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61327,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61327;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reset_meta_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reset-meta!\x22,\x22cljs.core/reset-meta!\x22,1561154096,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reset-meta!\x22,\x22reset-meta!\x22,1699493291,null),\x22cljs/core.cljs\x22,18,1,10637,10637,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iref\x22,\x22iref\x22,-647796531,null),new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null)], null)),\x22Atomically resets the metadata for an atom\x22,(cljs.core.truth_(cljs.core.reset_meta_BANG_)?cljs.core.reset_meta_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reset_meta_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61329 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61329,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61329;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.js__GT_clj;},new cljs.core.Symbol(\x22cljs.core\x22,\x22js-\x3eclj\x22,\x22cljs.core/js-\x3eclj\x22,79692683,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22js-\x3eclj\x22,\x22js-\x3eclj\x22,1544462432,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10888,10888,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null)),\x22Recursively transforms JavaScript arrays into ClojureScript\\n  vectors, and JavaScript objects into ClojureScript maps.  With\\n  option \x27:keywordize-keys true\x27 will convert object fields from\\n  strings to keywords.\x22,(cljs.core.truth_(cljs.core.js__GT_clj)?cljs.core.js__GT_clj.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.js__GT_clj;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61331 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61331,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61331;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.dotimes_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rand_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rand-int\x22,\x22cljs.core/rand-int\x22,901720936,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rand-int\x22,\x22rand-int\x22,-495012157,null),\x22cljs/core.cljs\x22,15,1,10960,10960,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns a random integer between 0 (inclusive) and n (exclusive).\x22,(cljs.core.truth_(cljs.core.rand_int)?cljs.core.rand_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rand_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61333 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61333,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61333;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.complement;},new cljs.core.Symbol(\x22cljs.core\x22,\x22complement\x22,\x22cljs.core/complement\x22,-498493640,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22complement\x22,\x22complement\x22,-913606051,null),\x22cljs/core.cljs\x22,17,1,4279,4279,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Takes a fn f and returns a fn that takes the same arguments as f,\\n  has the same effects, if any, and returns the opposite truth value.\x22,(cljs.core.truth_(cljs.core.complement)?cljs.core.complement.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.complement;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61336 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61336,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61336;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.list_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22list?\x22,\x22cljs.core/list?\x22,-684796618,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22list?\x22,\x22list?\x22,-1494629,null),\x22cljs/core.cljs\x22,12,1,3124,3124,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x implements IList\x22,(cljs.core.truth_(cljs.core.list_QMARK_)?cljs.core.list_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.list_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61337 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61337,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61337;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.aget;},new cljs.core.Symbol(\x22cljs.core\x22,\x22aget\x22,\x22cljs.core/aget\x22,6345791,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22aget\x22,\x22aget\x22,1491056546,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22idxs\x22,\x22idxs\x22,-2145941206,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,504,504,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null),new cljs.core.Symbol(null,\x22idx\x22,\x22idx\x22,-1600747296,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22idxs\x22,\x22idxs\x22,-2145941206,null)], null)),\x22Returns the value at the index/indices. Works on JavaScript arrays.\x22,(cljs.core.truth_(cljs.core.aget)?cljs.core.aget.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.aget;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61340 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61340,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61340;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.zipmap;},new cljs.core.Symbol(\x22cljs.core\x22,\x22zipmap\x22,\x22cljs.core/zipmap\x22,-1902130674,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22zipmap\x22,\x22zipmap\x22,-690049687,null),\x22cljs/core.cljs\x22,13,1,9533,9533,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null),new cljs.core.Symbol(null,\x22vals\x22,\x22vals\x22,-1886377036,null)], null)),\x22Returns a map with the keys mapped to the corresponding vals.\x22,(cljs.core.truth_(cljs.core.zipmap)?cljs.core.zipmap.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.zipmap;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61344 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61344,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61344;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_find_var,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.run_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22run!\x22,\x22cljs.core/run!\x22,-591566066,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22run!\x22,\x22run!\x22,-2055483725,null),\x22cljs/core.cljs\x22,11,1,10832,10832,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22proc\x22,\x22proc\x22,-643106804,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Runs the supplied procedure (via reduce), for purposes of side\\n  effects, on successive items in the collection. Returns nil\x22,(cljs.core.truth_(cljs.core.run_BANG_)?cljs.core.run_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.run_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61345 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61345,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61345;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._EQ__EQ_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3d\x3d\x22,\x22cljs.core/\x3d\x3d\x22,-632471488,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22\x3d\x3d\x22,\x22\x3d\x3d\x22,-234118149,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2936,2936,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns non-nil if nums all have the equivalent\\n  value, otherwise false. Behavior on non nums is\\n  undefined.\x22,((cljs.core._EQ__EQ_)?cljs.core._EQ__EQ_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._EQ__EQ_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61347 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61347,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61347;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chars;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chars\x22,\x22cljs.core/chars\x22,2018158397,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chars\x22,\x22chars\x22,545901210,null),\x22cljs/core.cljs\x22,12,1,2836,2836,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.chars)?cljs.core.chars.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chars;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61348 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61348,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61348;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.iterate;},new cljs.core.Symbol(\x22cljs.core\x22,\x22iterate\x22,\x22cljs.core/iterate\x22,19572041,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.0\x22,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22iterate\x22,\x22iterate\x22,694501410,null),\x22cljs/core.cljs\x22,14,1,5104,5104,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns a lazy sequence of x, (f x), (f (f x)) etc. f must be free of side-effects\x22,(cljs.core.truth_(cljs.core.iterate)?cljs.core.iterate.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.iterate;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61349 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61349,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61349;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.boolean$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22boolean\x22,\x22cljs.core/boolean\x22,-1222483266,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),\x22cljs/core.cljs\x22,14,1,2264,2264,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Coerce to boolean\x22,(cljs.core.truth_(cljs.core.boolean$)?cljs.core.boolean$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.boolean$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61350 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61350,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61350;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.hash_map;},new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-map\x22,\x22cljs.core/hash-map\x22,303385767,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22hash-map\x22,\x22hash-map\x22,-439030950,null),\x22cljs/core.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,8908,8908,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),\x22keyval \x3d\x3e key val\\n  Returns a new hash map with supplied mappings.\x22,(cljs.core.truth_(cljs.core.hash_map)?cljs.core.hash_map.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.hash_map;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61351 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61351,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61351;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_inc;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-inc\x22,\x22cljs.core/unchecked-inc\x22,-501313167,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-inc\x22,\x22unchecked-inc\x22,-1170131490,null),\x22cljs/core.cljs\x22,20,1,2764,2764,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_inc)?cljs.core.unchecked_inc.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_inc;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61353 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61353,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61353;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.max_key;},new cljs.core.Symbol(\x22cljs.core\x22,\x22max-key\x22,\x22cljs.core/max-key\x22,-1198425909,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22max-key\x22,\x22max-key\x22,-2132814732,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,9545,9545,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the x for which (k x), a number, is greatest.\\n\\n  If there are multiple such xs, the last one is returned.\x22,(cljs.core.truth_(cljs.core.max_key)?cljs.core.max_key.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.max_key;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61369 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61369,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61369;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.qualified_ident_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22qualified-ident?\x22,\x22cljs.core/qualified-ident?\x22,-1863492566,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22qualified-ident?\x22,\x22qualified-ident?\x22,-928894763,null),\x22cljs/core.cljs\x22,23,1,3386,3386,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a symbol or keyword with a namespace\x22,(cljs.core.truth_(cljs.core.qualified_ident_QMARK_)?cljs.core.qualified_ident_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.qualified_ident_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61370 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61370,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61370;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.dissoc_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22dissoc!\x22,\x22cljs.core/dissoc!\x22,1269015773,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22dissoc!\x22,\x22dissoc!\x22,333592624,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3865,3865,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),\x22Returns a transient map that doesn\x27t contain a mapping for key(s).\x22,(cljs.core.truth_(cljs.core.dissoc_BANG_)?cljs.core.dissoc_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.dissoc_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61371 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61371,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61371;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.coll_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22coll?\x22,\x22cljs.core/coll?\x22,1208130522,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22coll?\x22,\x22coll?\x22,-1874821441,null),\x22cljs/core.cljs\x22,12,1,2135,2135,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x satisfies ICollection\x22,(cljs.core.truth_(cljs.core.coll_QMARK_)?cljs.core.coll_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.coll_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61373 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61373,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61373;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reversible_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reversible?\x22,\x22cljs.core/reversible?\x22,1786661060,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reversible?\x22,\x22reversible?\x22,314107817,null),\x22cljs/core.cljs\x22,18,1,3202,3202,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns true if coll satisfies? IReversible.\x22,(cljs.core.truth_(cljs.core.reversible_QMARK_)?cljs.core.reversible_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reversible_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61380 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61380,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61380;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_unmap,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.apply;},new cljs.core.Symbol(\x22cljs.core\x22,\x22apply\x22,\x22cljs.core/apply\x22,1757277831,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22apply\x22,\x22apply\x22,-1334050276,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(5),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(5),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,3941,3941,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 7, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22Applies fn f to the argument list formed by prepending intervening arguments to args.\x22,(cljs.core.truth_(cljs.core.apply)?cljs.core.apply.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.apply;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61383 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61383,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61383;\n}\n})(),false);\n})(),sci.impl.io.in$,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.subvec;},new cljs.core.Symbol(\x22cljs.core\x22,\x22subvec\x22,\x22cljs.core/subvec\x22,1039737205,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22subvec\x22,\x22subvec\x22,364611032,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5996,5996,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null)),\x22Returns a persistent vector of the items in vector from\\n  start (inclusive) to end (exclusive).  If end is not supplied,\\n  defaults to (count vector). This operation is O(1) and very fast, as\\n  the resulting vector shares structure with the original and no\\n  trimming is done.\x22,(cljs.core.truth_(cljs.core.subvec)?cljs.core.subvec.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.subvec;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61387 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61387,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61387;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.hierarchies.isa_QMARK__STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.not_every_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22not-every?\x22,\x22cljs.core/not-every?\x22,-1135759243,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22not-every?\x22,\x22not-every?\x22,-729672558,null),\x22cljs/core.cljs\x22,17,1,4250,4250,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns false if (pred x) is logical true for every x in\\n  coll, else true.\x22,(cljs.core.truth_(cljs.core.not_every_QMARK_)?cljs.core.not_every_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.not_every_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61389 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61389,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61389;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.ex_cause;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22ex-cause\x22,\x22sci.impl.namespaces/ex-cause\x22,-178793441,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22ex-cause\x22,\x22ex-cause\x22,95392590,null),\x22sci/impl/namespaces.cljc\x22,14,1,257,257,cljs.core.List.EMPTY,null,(cljs.core.truth_(sci.impl.namespaces.ex_cause)?sci.impl.namespaces.ex_cause.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.ex_cause;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61390 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61390,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61390;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.keyword_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22keyword?\x22,\x22cljs.core/keyword?\x22,713156450,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22keyword?\x22,\x22keyword?\x22,1917797069,null),\x22cljs/core.cljs\x22,15,1,3348,3348,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a Keyword\x22,(cljs.core.truth_(cljs.core.keyword_QMARK_)?cljs.core.keyword_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.keyword_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61391 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61391,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61391;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ex_data;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ex-data\x22,\x22cljs.core/ex-data\x22,-1491231397,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ex-data\x22,\x22ex-data\x22,1331491268,null),\x22cljs/core.cljs\x22,14,1,11491,11491,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ex\x22,\x22ex\x22,226760186,null)], null)),\x22Returns exception data (a map) if ex is an ExceptionInfo.\\n  Otherwise returns nil.\x22,(cljs.core.truth_(cljs.core.ex_data)?cljs.core.ex_data.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ex_data;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61392 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61392,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61392;\n}\n})(),false);\n})(),sci.impl.io.print_namespace_maps,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.compare;},new cljs.core.Symbol(\x22cljs.core\x22,\x22compare\x22,\x22cljs.core/compare\x22,2062072664,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22compare\x22,\x22compare\x22,1109853757,null),\x22cljs/core.cljs\x22,22,1,2393,2393,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)),\x22Comparator. Returns a negative number, zero, or a positive number\\n  when x is logically \x27less than\x27, \x27equal to\x27, or \x27greater than\x27\\n  y. Uses IComparable if available and google.array.defaultCompare for objects\\n of the same type and special-cases nil to be less than any other object.\x22,(cljs.core.truth_(cljs.core.compare)?cljs.core.compare.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.compare;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61396 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61396,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61396;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.hierarchies.underive_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.transduce;},new cljs.core.Symbol(\x22cljs.core\x22,\x22transduce\x22,\x22cljs.core/transduce\x22,1804458375,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22transduce\x22,\x22transduce\x22,-2083619734,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),4,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),4,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2598,2598,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22reduce with a transformation of f (xf). If init is not\\n  supplied, (f) will be called to produce it. f should be a reducing\\n  step function that accepts both 1 and 2 arguments, if it accepts\\n  only 2 you can add the arity-1 with \x27completing\x27. Returns the result\\n  of applying (the transformed) xf to init and the first item in coll,\\n  then applying xf to that result and the 2nd item, etc. If coll\\n  contains no items, returns init and f is not called. Note that\\n  certain transforms may inject or skip items.\x22,(cljs.core.truth_(cljs.core.transduce)?cljs.core.transduce.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.transduce;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61398 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61398,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61398;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.range;},new cljs.core.Symbol(\x22cljs.core\x22,\x22range\x22,\x22cljs.core/range\x22,-1421369894,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22range\x22,\x22range\x22,-1014743483,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,9915,9915,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null)], null)),\x22Returns a lazy seq of nums from start (inclusive) to end\\n   (exclusive), by step, where start defaults to 0, step to 1,\\n   and end to infinity.\x22,(cljs.core.truth_(cljs.core.range)?cljs.core.range.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.range;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61399 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61399,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61399;\n}\n})(),false);\n})(),sci.impl.core_protocols.deref_protocol,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sorted_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sorted?\x22,\x22cljs.core/sorted?\x22,1576134389,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sorted?\x22,\x22sorted?\x22,892797714,null),\x22cljs/core.cljs\x22,14,1,2161,2161,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if coll satisfies ISorted\x22,(cljs.core.truth_(cljs.core.sorted_QMARK_)?cljs.core.sorted_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sorted_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61401 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61401,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61401;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.frequencies;},new cljs.core.Symbol(\x22cljs.core\x22,\x22frequencies\x22,\x22cljs.core/frequencies\x22,1344185908,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22frequencies\x22,\x22frequencies\x22,1757430425,null),\x22cljs/core.cljs\x22,18,1,10010,10010,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a map from distinct items in coll to the number of times\\n  they appear.\x22,(cljs.core.truth_(cljs.core.frequencies)?cljs.core.frequencies.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.frequencies;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61402 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61402,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61402;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.cycle;},new cljs.core.Symbol(\x22cljs.core\x22,\x22cycle\x22,\x22cljs.core/cycle\x22,-455167668,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22cycle\x22,\x22cycle\x22,-1944070485,null),\x22cljs/core.cljs\x22,12,1,4916,4916,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy (infinite!) sequence of repetitions of the items in coll.\x22,(cljs.core.truth_(cljs.core.cycle)?cljs.core.cycle.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.cycle;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61404 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61404,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61404;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.max;},new cljs.core.Symbol(\x22cljs.core\x22,\x22max\x22,\x22cljs.core/max\x22,1303529718,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22max\x22,\x22max\x22,1701898075,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2699,2699,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the greatest of the nums.\x22,(cljs.core.truth_(cljs.core.max)?cljs.core.max.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.max;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61405 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61405,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61405;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.simple_symbol_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22simple-symbol?\x22,\x22cljs.core/simple-symbol?\x22,-1951205629,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22simple-symbol?\x22,\x22simple-symbol?\x22,1408454822,null),\x22cljs/core.cljs\x22,21,1,3390,3390,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a symbol without a namespace\x22,(cljs.core.truth_(cljs.core.simple_symbol_QMARK_)?cljs.core.simple_symbol_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.simple_symbol_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61406 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61406,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61406;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.reify.reify,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.empty_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22empty?\x22,\x22cljs.core/empty?\x22,1866613644,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22empty?\x22,\x22empty?\x22,76408555,null),\x22cljs/core.cljs\x22,13,1,2129,2129,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns true if coll has no items - same as (not (seq coll)).\\n  Please use the idiom (seq x) rather than (not (empty? x))\x22,(cljs.core.truth_(cljs.core.empty_QMARK_)?cljs.core.empty_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.empty_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61407 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61407,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61407;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.into;},new cljs.core.Symbol(\x22cljs.core\x22,\x22into\x22,\x22cljs.core/into\x22,1879938733,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22into\x22,\x22into\x22,1489695498,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,5231,5231,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22to\x22,\x22to\x22,1832630534,null),new cljs.core.Symbol(null,\x22xform\x22,\x22xform\x22,-85179481,null),new cljs.core.Symbol(null,\x22from\x22,\x22from\x22,-839142725,null)], null)),\x22Returns a new coll consisting of to-coll with all of the items of\\n  from-coll conjoined. A transducer may be supplied.\x22,(cljs.core.truth_(cljs.core.into)?cljs.core.into.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.into;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61408 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61408,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61408;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.integer_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22integer?\x22,\x22cljs.core/integer?\x22,1710697810,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22integer?\x22,\x22integer?\x22,1303791671,null),\x22cljs/core.cljs\x22,15,1,2277,2277,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns true if n is a JavaScript number with no decimal part.\x22,(cljs.core.truth_(cljs.core.integer_QMARK_)?cljs.core.integer_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.integer_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61409 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61409,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61409;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._STAR_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22*\x22,\x22cljs.core/*\x22,-857794892,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22*\x22,\x22*\x22,345799209,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,2631,2631,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the product of nums. (*) returns 1.\x22,(cljs.core.truth_(cljs.core._STAR_)?cljs.core._STAR_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._STAR_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61410 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61410,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61410;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.some__GT__GT__STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unsigned_bit_shift_right;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unsigned-bit-shift-right\x22,\x22cljs.core/unsigned-bit-shift-right\x22,-1545024020,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unsigned-bit-shift-right\x22,\x22unsigned-bit-shift-right\x22,-1953076601,null),\x22cljs/core.cljs\x22,31,1,2925,2925,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Bitwise shift right with zero fill\x22,(cljs.core.truth_(cljs.core.unsigned_bit_shift_right)?cljs.core.unsigned_bit_shift_right.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unsigned_bit_shift_right;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61411 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61411,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61411;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.io.pr_str;},new cljs.core.Symbol(\x22sci.impl.io\x22,\x22pr-str\x22,\x22sci.impl.io/pr-str\x22,1281074510,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.io\x22,\x22sci.impl.io\x22,560476654,null),new cljs.core.Symbol(null,\x22pr-str\x22,\x22pr-str\x22,-2066912145,null),\x22sci/impl/io.cljc\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),4,92,92,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),\x22pr to a string, returning it\x22,(cljs.core.truth_(sci.impl.io.pr_str)?sci.impl.io.pr_str.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.io.pr_str;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61412 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61412,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61412;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.some__GT__STAR_),sci.impl.namespaces.macrofy(sci.impl.namespaces.sci_bound_fn),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk\x22,\x22cljs.core/chunk\x22,847936424,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk\x22,\x22chunk\x22,449371907,null),\x22cljs/core.cljs\x22,12,1,3644,3644,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null)], null)),null,(cljs.core.truth_(cljs.core.chunk)?cljs.core.chunk.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61413 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61413,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61413;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.cond_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.distinct;},new cljs.core.Symbol(\x22cljs.core\x22,\x22distinct\x22,\x22cljs.core/distinct\x22,803799433,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22distinct\x22,\x22distinct\x22,-148347594,null),\x22cljs/core.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),1,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),1,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9490,9490,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the elements of coll with duplicates removed.\\n  Returns a stateful transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.distinct)?cljs.core.distinct.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.distinct;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61414 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61414,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61414;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ensure_reduced;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ensure-reduced\x22,\x22cljs.core/ensure-reduced\x22,-1728485218,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ensure-reduced\x22,\x22ensure-reduced\x22,-1606421005,null),\x22cljs/core.cljs\x22,21,1,1459,1459,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22If x is already reduced?, returns it, else returns (reduced x)\x22,(cljs.core.truth_(cljs.core.ensure_reduced)?cljs.core.ensure_reduced.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ensure_reduced;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61415 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61415,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61415;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.object_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22object-array\x22,\x22cljs.core/object-array\x22,613323432,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22object-array\x22,\x22object-array\x22,206434647,null),\x22cljs/core.cljs\x22,19,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3747,3747,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),\x22Creates an array of objects. Does not coerce array, provided for compatibility\\n  with Clojure.\x22,(cljs.core.truth_(cljs.core.object_array)?cljs.core.object_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.object_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61416 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61416,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61416;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.juxt;},new cljs.core.Symbol(\x22cljs.core\x22,\x22juxt\x22,\x22cljs.core/juxt\x22,263800975,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22juxt\x22,\x22juxt\x22,671085604,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22fs\x22,\x22fs\x22,-482394717,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,10035,10035,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22g\x22,\x22g\x22,-916345864,null),new cljs.core.Symbol(null,\x22h\x22,\x22h\x22,-1544777029,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22fs\x22,\x22fs\x22,-482394717,null)], null)),\x22Takes a set of functions and returns a fn that is the juxtaposition\\n  of those fns.  The returned fn takes a variable number of args, and\\n  returns a vector containing the result of applying each fn to the\\n  args (left-to-right).\\n  ((juxt a b c) x) \x3d\x3e [(a x) (b x) (c x)]\x22,(cljs.core.truth_(cljs.core.juxt)?cljs.core.juxt.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.juxt;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61417 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61417,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61417;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.some;},new cljs.core.Symbol(\x22cljs.core\x22,\x22some\x22,\x22cljs.core/some\x22,-977628065,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22some\x22,\x22some\x22,-310548046,null),\x22cljs/core.cljs\x22,11,1,4255,4255,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns the first logical true value of (pred x) for any x in coll,\\n  else nil.  One common idiom is to use a set as pred, for example\\n  this will return :fred if :fred is in the sequence, otherwise nil:\\n  (some #{:fred} coll)\x22,(cljs.core.truth_(cljs.core.some)?cljs.core.some.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.some;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61418 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61418,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61418;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.interpose;},new cljs.core.Symbol(\x22cljs.core\x22,\x22interpose\x22,\x22cljs.core/interpose\x22,-1277634695,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22interpose\x22,\x22interpose\x22,-2078295140,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sep\x22,\x22sep\x22,-684005239,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sep\x22,\x22sep\x22,-684005239,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sep\x22,\x22sep\x22,-684005239,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sep\x22,\x22sep\x22,-684005239,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5125,5125,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sep\x22,\x22sep\x22,-684005239,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sep\x22,\x22sep\x22,-684005239,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy seq of the elements of coll separated by sep.\\n  Returns a stateful transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.interpose)?cljs.core.interpose.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.interpose;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61419 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61419,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61419;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_the_ns,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.protocols.instance_impl,cljs.core.with_meta(sci.impl.hierarchies.descendants_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.get_in;},new cljs.core.Symbol(\x22cljs.core\x22,\x22get-in\x22,\x22cljs.core/get-in\x22,-1307311504,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22static\x22,\x22static\x22,1214358571),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.2\x22,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22get-in\x22,\x22get-in\x22,-1965644065,null),\x22cljs/core.cljs\x22,13,true,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5294,5294,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)),\x22Returns the value in a nested associative structure,\\n  where ks is a sequence of keys. Returns nil if the key is not present,\\n  or the not-found value if supplied.\x22,(cljs.core.truth_(cljs.core.get_in)?cljs.core.get_in.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.get_in;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61420 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61420,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61420;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.meta;},new cljs.core.Symbol(\x22cljs.core\x22,\x22meta\x22,\x22cljs.core/meta\x22,-748218346,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22meta\x22,\x22meta\x22,-1154898805,null),\x22cljs/core.cljs\x22,11,1,2093,2093,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null)], null)),\x22Returns the metadata of obj, returns nil if there is no metadata.\x22,(cljs.core.truth_(cljs.core.meta)?cljs.core.meta.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.meta;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61421 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61421,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61421;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.reify.reify_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),cljs.core.with_meta(sci.impl.records.defrecord,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.val;},new cljs.core.Symbol(\x22cljs.core\x22,\x22val\x22,\x22cljs.core/val\x22,833354142,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),\x22cljs/core.cljs\x22,10,1,9111,9111,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22map-entry\x22,\x22map-entry\x22,329617471,null)], null)),\x22Returns the value in the map entry.\x22,(cljs.core.truth_(cljs.core.val)?cljs.core.val.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.val;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61422 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61422,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61422;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.read.read_string,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.assoc_in;},new cljs.core.Symbol(\x22cljs.core\x22,\x22assoc-in\x22,\x22cljs.core/assoc-in\x22,-1057213350,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22assoc-in\x22,\x22assoc-in\x22,-113585743,null),\x22cljs/core.cljs\x22,15,1,5313,5313,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)),\x22Associates a value in a nested associative structure, where ks is a\\n  sequence of keys and v is the new value and returns a new nested structure.\\n  If any levels do not exist, hash-maps will be created.\x22,(cljs.core.truth_(cljs.core.assoc_in)?cljs.core.assoc_in.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.assoc_in;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61423 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61423,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61423;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.zero_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22zero?\x22,\x22cljs.core/zero?\x22,-341242858,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22zero?\x22,\x22zero?\x22,325758897,null),\x22cljs/core.cljs\x22,21,1,2953,2953,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if num is zero, else false\x22,((cljs.core.zero_QMARK_)?cljs.core.zero_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.zero_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61424 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61424,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61424;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.transient$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22transient\x22,\x22cljs.core/transient\x22,1549202584,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22transient\x22,\x22transient\x22,899115069,null),\x22cljs/core.cljs\x22,16,1,3828,3828,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a new, transient version of the collection, in constant time.\x22,(cljs.core.truth_(cljs.core.transient$)?cljs.core.transient$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.transient$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61425 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61425,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61425;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.letfn_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.realized_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22realized?\x22,\x22cljs.core/realized?\x22,-199651784,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22realized?\x22,\x22realized?\x22,207229341,null),\x22cljs/core.cljs\x22,25,1,10718,10718,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if a value has been produced for a delay or lazy sequence.\x22,((cljs.core.realized_QMARK_)?cljs.core.realized_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.realized_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61426 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61426,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61426;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.list_STAR_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22list*\x22,\x22cljs.core/list*\x22,357627358,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22list*\x22,\x22list*\x22,765415731,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(4),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(4),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,3815,3815,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22c\x22,\x22c\x22,-122660552,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Creates a new list containing the items prepended to the rest, the\\n  last of which will be treated as a sequence.\x22,(cljs.core.truth_(cljs.core.list_STAR_)?cljs.core.list_STAR_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.list_STAR_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61427 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61427,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61427;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_interns,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.memoize;},new cljs.core.Symbol(\x22cljs.core\x22,\x22memoize\x22,\x22cljs.core/memoize\x22,538070988,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22memoize\x22,\x22memoize\x22,2019341169,null),\x22cljs/core.cljs\x22,14,1,10923,10923,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Returns a memoized version of a referentially transparent function. The\\n  memoized version of the function keeps a cache of the mapping from arguments\\n  to results and, when calls with the same arguments are repeated often, has\\n  higher performance at the expense of higher memory use.\x22,(cljs.core.truth_(cljs.core.memoize)?cljs.core.memoize.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.memoize;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61428 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61428,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61428;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.subseq;},new cljs.core.Symbol(\x22cljs.core\x22,\x22subseq\x22,\x22cljs.core/subseq\x22,1263598514,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22subseq\x22,\x22subseq\x22,-1558995241,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),5,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),5,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22test\x22,\x22test\x22,-2076896892,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22start-test\x22,\x22start-test\x22,687547962,null),new cljs.core.Symbol(null,\x22start-key\x22,\x22start-key\x22,790225477,null),new cljs.core.Symbol(null,\x22end-test\x22,\x22end-test\x22,2122505254,null),new cljs.core.Symbol(null,\x22end-key\x22,\x22end-key\x22,-1592097336,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22test\x22,\x22test\x22,-2076896892,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22start-test\x22,\x22start-test\x22,687547962,null),new cljs.core.Symbol(null,\x22start-key\x22,\x22start-key\x22,790225477,null),new cljs.core.Symbol(null,\x22end-test\x22,\x22end-test\x22,2122505254,null),new cljs.core.Symbol(null,\x22end-key\x22,\x22end-key\x22,-1592097336,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9630,9630,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22test\x22,\x22test\x22,-2076896892,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22start-test\x22,\x22start-test\x22,687547962,null),new cljs.core.Symbol(null,\x22start-key\x22,\x22start-key\x22,790225477,null),new cljs.core.Symbol(null,\x22end-test\x22,\x22end-test\x22,2122505254,null),new cljs.core.Symbol(null,\x22end-key\x22,\x22end-key\x22,-1592097336,null)], null)),\x22sc must be a sorted collection, test(s) one of \x3c, \x3c\x3d, \x3e or\\n  \x3e\x3d. Returns a seq of those entries with keys ek for\\n  which (test (.. sc comparator (compare ek key)) 0) is true\x22,(cljs.core.truth_(cljs.core.subseq)?cljs.core.subseq.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.subseq;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61429 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61429,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61429;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.delay_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22delay?\x22,\x22cljs.core/delay?\x22,2099859324,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22delay?\x22,\x22delay?\x22,-1528239209,null),\x22cljs/core.cljs\x22,13,1,10707,10707,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22returns true if x is a Delay created with delay\x22,(cljs.core.truth_(cljs.core.delay_QMARK_)?cljs.core.delay_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.delay_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61430 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61430,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61430;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.completing;},new cljs.core.Symbol(\x22cljs.core\x22,\x22completing\x22,\x22cljs.core/completing\x22,167645361,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22completing\x22,\x22completing\x22,565832990,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22cf\x22,\x22cf\x22,-1173699459,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22cf\x22,\x22cf\x22,-1173699459,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2587,2587,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22cf\x22,\x22cf\x22,-1173699459,null)], null)),\x22Takes a reducing function f of 2 args and returns a fn suitable for\\n  transduce by adding an arity-1 signature that calls cf (default -\\n  identity) on the result argument.\x22,(cljs.core.truth_(cljs.core.completing)?cljs.core.completing.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.completing;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61431 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61431,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61431;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_divide_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-divide-int\x22,\x22cljs.core/unchecked-divide-int\x22,1483182239,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-divide-int\x22,\x22unchecked-divide-int\x22,1613116468,null),\x22cljs/core.cljs\x22,35,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2757,2757,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22If no denominators are supplied, returns 1/numerator,\\n  else returns numerator divided by all of the denominators.\x22,(cljs.core.truth_(cljs.core.unchecked_divide_int)?cljs.core.unchecked_divide_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_divide_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61432 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61432,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61432;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.shuffle;},new cljs.core.Symbol(\x22cljs.core\x22,\x22shuffle\x22,\x22cljs.core/shuffle\x22,-2029565214,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22shuffle\x22,\x22shuffle\x22,-1393023609,null),\x22cljs/core.cljs\x22,14,1,2492,2492,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Return a random permutation of coll\x22,(cljs.core.truth_(cljs.core.shuffle)?cljs.core.shuffle.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.shuffle;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61433 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61433,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61433;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_map,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.io.prn_str;},new cljs.core.Symbol(\x22sci.impl.io\x22,\x22prn-str\x22,\x22sci.impl.io/prn-str\x22,750993864,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.io\x22,\x22sci.impl.io\x22,560476654,null),new cljs.core.Symbol(null,\x22prn-str\x22,\x22prn-str\x22,-145225943,null),\x22sci/impl/io.cljc\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),4,127,127,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),\x22pr to a string, returning it\x22,(cljs.core.truth_(sci.impl.io.prn_str)?sci.impl.io.prn_str.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.io.prn_str;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61434 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61434,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61434;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.defn__STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.compare_and_set_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22compare-and-set!\x22,\x22cljs.core/compare-and-set!\x22,-265208345,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22compare-and-set!\x22,\x22compare-and-set!\x22,-1997299382,null),\x22cljs/core.cljs\x22,23,1,4554,4554,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.with_meta(new cljs.core.Symbol(null,\x22a\x22,\x22a\x22,-482876059,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Symbol(null,\x22not-native\x22,\x22not-native\x22,-236392494,null)], null)),new cljs.core.Symbol(null,\x22oldval\x22,\x22oldval\x22,-221475803,null),new cljs.core.Symbol(null,\x22newval\x22,\x22newval\x22,717803975,null)], null)),\x22Atomically sets the value of atom to newval if and only if the\\n  current value of the atom is equal to oldval. Returns true if\\n  set happened, else false.\x22,(cljs.core.truth_(cljs.core.compare_and_set_BANG_)?cljs.core.compare_and_set_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.compare_and_set_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61435 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61435,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61435;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.use,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.longs;},new cljs.core.Symbol(\x22cljs.core\x22,\x22longs\x22,\x22cljs.core/longs\x22,-1667869693,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22longs\x22,\x22longs\x22,-1017696020,null),\x22cljs/core.cljs\x22,12,1,2841,2841,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.longs)?cljs.core.longs.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.longs;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61436 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61436,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61436;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_remove_ns,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-int\x22,\x22cljs.core/unchecked-int\x22,1271498152,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-int\x22,\x22unchecked-int\x22,1672898125,null),\x22cljs/core.cljs\x22,20,1,2819,2819,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Coerce to int by stripping decimal places.\x22,(cljs.core.truth_(cljs.core.unchecked_int)?cljs.core.unchecked_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61437 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61437,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61437;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nthrest;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nthrest\x22,\x22cljs.core/nthrest\x22,1634834275,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nthrest\x22,\x22nthrest\x22,1219890118,null),\x22cljs/core.cljs\x22,14,1,1943,1943,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns the nth rest of coll, coll when n is 0.\x22,(cljs.core.truth_(cljs.core.nthrest)?cljs.core.nthrest.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nthrest;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61438 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61438,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61438;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.sci_thread_bound_QMARK_;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22sci-thread-bound?\x22,\x22sci.impl.namespaces/sci-thread-bound?\x22,-699781027,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22sci-thread-bound?\x22,\x22sci-thread-bound?\x22,1723201964,null),\x22sci/impl/namespaces.cljc\x22,24,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22vars\x22,\x22vars\x22,-406425690,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22vars\x22,\x22vars\x22,-406425690,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,620,620,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22vars\x22,\x22vars\x22,-406425690,null)], null)),null,(cljs.core.truth_(sci.impl.namespaces.sci_thread_bound_QMARK_)?sci.impl.namespaces.sci_thread_bound_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.sci_thread_bound_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61439 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61439,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61439;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.doubles;},new cljs.core.Symbol(\x22cljs.core\x22,\x22doubles\x22,\x22cljs.core/doubles\x22,-63338820,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22doubles\x22,\x22doubles\x22,-1517872169,null),\x22cljs/core.cljs\x22,14,1,2840,2840,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.doubles)?cljs.core.doubles.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.doubles;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61440 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61440,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61440;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.force;},new cljs.core.Symbol(\x22cljs.core\x22,\x22force\x22,\x22cljs.core/force\x22,1218810390,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22force\x22,\x22force\x22,-1872478483,null),\x22cljs/core.cljs\x22,12,1,10711,10711,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22If x is a Delay, returns the (possibly cached) value of its expression, else returns x\x22,(cljs.core.truth_(cljs.core.force)?cljs.core.force.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.force;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61441 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61441,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61441;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.remove_method;},new cljs.core.Symbol(\x22cljs.core\x22,\x22remove-method\x22,\x22cljs.core/remove-method\x22,-333900048,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22remove-method\x22,\x22remove-method\x22,72923733,null),\x22cljs/core.cljs\x22,20,1,11359,11359,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22multifn\x22,\x22multifn\x22,-1904313150,null),new cljs.core.Symbol(null,\x22dispatch-val\x22,\x22dispatch-val\x22,69061000,null)], null)),\x22Removes the method of multimethod associated with dispatch-value.\x22,(cljs.core.truth_(cljs.core.remove_method)?cljs.core.remove_method.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.remove_method;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61443 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61443,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61443;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.protocols.extend,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nnext;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nnext\x22,\x22cljs.core/nnext\x22,-1423798123,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nnext\x22,\x22nnext\x22,-2065435598,null),\x22cljs/core.cljs\x22,12,1,1779,1779,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Same as (next (next x))\x22,(cljs.core.truth_(cljs.core.nnext)?cljs.core.nnext.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nnext;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61444 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61444,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61444;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.dec;},new cljs.core.Symbol(\x22cljs.core\x22,\x22dec\x22,\x22cljs.core/dec\x22,-443230268,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22dec\x22,\x22dec\x22,-766002333,null),\x22cljs/core.cljs\x22,10,1,2695,2695,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns a number one less than num.\x22,(cljs.core.truth_(cljs.core.dec)?cljs.core.dec.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.dec;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61445 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61445,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61445;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.qualified_keyword_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22qualified-keyword?\x22,\x22cljs.core/qualified-keyword?\x22,-308091478,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22qualified-keyword?\x22,\x22qualified-keyword?\x22,375456001,null),\x22cljs/core.cljs\x22,25,1,3402,3402,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a keyword with a namespace\x22,(cljs.core.truth_(cljs.core.qualified_keyword_QMARK_)?cljs.core.qualified_keyword_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.qualified_keyword_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61446 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61446,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61446;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.comparator;},new cljs.core.Symbol(\x22cljs.core\x22,\x22comparator\x22,\x22cljs.core/comparator\x22,-916017038,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),\x22cljs/core.cljs\x22,17,1,11513,11513,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null)),\x22Returns an JavaScript compatible comparator based upon pred.\x22,(cljs.core.truth_(cljs.core.comparator)?cljs.core.comparator.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.comparator;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61447 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61447,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61447;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.take_last;},new cljs.core.Symbol(\x22cljs.core\x22,\x22take-last\x22,\x22cljs.core/take-last\x22,374295804,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22take-last\x22,\x22take-last\x22,-41013151,null),\x22cljs/core.cljs\x22,16,1,4821,4821,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a seq of the last n items in coll.  Depending on the type\\n  of coll may be no better than linear time.  For vectors, see also subvec.\x22,(cljs.core.truth_(cljs.core.take_last)?cljs.core.take_last.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.take_last;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61448 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61448,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61448;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_find_ns,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.string_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22string?\x22,\x22cljs.core/string?\x22,-2072921719,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22string?\x22,\x22string?\x22,-1129175764,null),\x22cljs/core.cljs\x22,23,1,273,273,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is a JavaScript string.\x22,((cljs.core.string_QMARK_)?cljs.core.string_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.string_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61449 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61449,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61449;\n}\n})(),false);\n})(),sci.impl.io.print,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_xor;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-xor\x22,\x22cljs.core/bit-xor\x22,1480189292,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-xor\x22,\x22bit-xor\x22,-1334295033,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2865,2865,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Bitwise exclusive or\x22,(cljs.core.truth_(cljs.core.bit_xor)?cljs.core.bit_xor.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_xor;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61450 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61450,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61450;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.map;},new cljs.core.Symbol(\x22cljs.core\x22,\x22map\x22,\x22cljs.core/map\x22,-338988913,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22map\x22,\x22map\x22,-1282745308,null),\x22cljs/core.cljs\x22,10,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(4),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(4),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,4717,4717,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22c1\x22,\x22c1\x22,-1521904966,null),new cljs.core.Symbol(null,\x22c2\x22,\x22c2\x22,78651156,null),new cljs.core.Symbol(null,\x22c3\x22,\x22c3\x22,468715789,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),\x22Returns a lazy sequence consisting of the result of applying f to\\n  the set of first items of each coll, followed by applying f to the\\n  set of second items in each coll, until any one of the colls is\\n  exhausted.  Any remaining items in other colls are ignored. Function\\n  f should accept number-of-colls arguments. Returns a transducer when\\n  no collection is provided.\x22,(cljs.core.truth_(cljs.core.map)?cljs.core.map.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.map;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61451 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61451,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61451;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.float$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22float\x22,\x22cljs.core/float\x22,-1027278358,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22float\x22,\x22float\x22,-91857841,null),\x22cljs/core.cljs\x22,20,1,2724,2724,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.float$)?cljs.core.float$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.float$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61452 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61452,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61452;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk_append;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-append\x22,\x22cljs.core/chunk-append\x22,-243671470,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk-append\x22,\x22chunk-append\x22,-1447349559,null),\x22cljs/core.cljs\x22,19,1,3641,3641,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22b\x22,\x22b\x22,-1172211299,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.chunk_append)?cljs.core.chunk_append.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk_append;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61453 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61453,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61453;\n}\n})(),false);\n})(),sci.impl.core_protocols.deref_STAR_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.re_pattern;},new cljs.core.Symbol(\x22cljs.core\x22,\x22re-pattern\x22,\x22cljs.core/re-pattern\x22,-676325906,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22re-pattern\x22,\x22re-pattern\x22,1047705161,null),\x22cljs/core.cljs\x22,17,1,10152,10152,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Returns an instance of RegExp which has compiled the provided string.\x22,(cljs.core.truth_(cljs.core.re_pattern)?cljs.core.re_pattern.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.re_pattern;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61454 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61454,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61454;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.repeat;},new cljs.core.Symbol(\x22cljs.core\x22,\x22repeat\x22,\x22cljs.core/repeat\x22,-89455077,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22repeat\x22,\x22repeat\x22,-1821743682,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5024,5024,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns a lazy (infinite!, or length n if supplied) sequence of xs.\x22,(cljs.core.truth_(cljs.core.repeat)?cljs.core.repeat.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.repeat;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61455 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61455,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61455;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reduce;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reduce\x22,\x22cljs.core/reduce\x22,2025430439,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reduce\x22,\x22reduce\x22,1358839360,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2522,2522,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22f should be a function of 2 arguments. If val is not supplied,\\n  returns the result of applying f to the first 2 items in coll, then\\n  applying f to that result and the 3rd item, etc. If coll contains no\\n  items, f must accept no arguments as well, and reduce returns the\\n  result of calling f with no arguments.  If coll has only 1 item, it\\n  is returned and f is not called.  If val is supplied, returns the\\n  result of applying f to val and the first item in coll, then\\n  applying f to that result and the 2nd item, etc. If coll contains no\\n  items, returns val and f is not called.\x22,(cljs.core.truth_(cljs.core.reduce)?cljs.core.reduce.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reduce;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61456 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61456,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61456;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.qualified_symbol_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22qualified-symbol?\x22,\x22cljs.core/qualified-symbol?\x22,1570873476,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22qualified-symbol?\x22,\x22qualified-symbol?\x22,98763807,null),\x22cljs/core.cljs\x22,24,1,3394,3394,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a symbol with a namespace\x22,(cljs.core.truth_(cljs.core.qualified_symbol_QMARK_)?cljs.core.qualified_symbol_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.qualified_symbol_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61457 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61457,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61457;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.read.eval,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.vector;},new cljs.core.Symbol(\x22cljs.core\x22,\x22vector\x22,\x22cljs.core/vector\x22,720641726,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22vector\x22,\x22vector\x22,-751469611,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,5744,5744,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22Creates a new vector containing the args.\x22,(cljs.core.truth_(cljs.core.vector)?cljs.core.vector.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.vector;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61458 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61458,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61458;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.doall;},new cljs.core.Symbol(\x22cljs.core\x22,\x22doall\x22,\x22cljs.core/doall\x22,1093272293,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22doall\x22,\x22doall\x22,988520834,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10084,10084,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22When lazy sequences are produced via functions that have side\\n  effects, any effects other than those needed to produce the first\\n  element in the seq do not occur until the seq is consumed. doall can\\n  be used to force any effects. Walks through the successive nexts of\\n  the seq, retains the head and returns it, thus causing the entire\\n  seq to reside in memory at one time.\x22,(cljs.core.truth_(cljs.core.doall)?cljs.core.doall.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.doall;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61459 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61459,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61459;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.assoc_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22assoc!\x22,\x22cljs.core/assoc!\x22,-457673635,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22assoc!\x22,\x22assoc!\x22,-847603280,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22kvs\x22,\x22kvs\x22,-1695980277,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3853,3853,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22val\x22,\x22val\x22,1769233139,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22kvs\x22,\x22kvs\x22,-1695980277,null)], null)),\x22When applied to a transient map, adds mapping of key(s) to\\n  val(s). When applied to a transient vector, sets the val at index.\\n  Note - index must be \x3c\x3d (count vector). Returns coll.\x22,(cljs.core.truth_(cljs.core.assoc_BANG_)?cljs.core.assoc_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.assoc_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61460 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61460,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61460;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.not_EQ_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22not\x3d\x22,\x22cljs.core/not\x3d\x22,1017572457,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22not\x3d\x22,\x22not\x3d\x22,1466536204,null),\x22cljs/core.cljs\x22,20,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,4012,4012,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Same as (not (\x3d obj1 obj2))\x22,((cljs.core.not_EQ_)?cljs.core.not_EQ_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.not_EQ_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61461 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61461,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61461;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.alter_meta_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22alter-meta!\x22,\x22cljs.core/alter-meta!\x22,574694262,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22alter-meta!\x22,\x22alter-meta!\x22,1510444945,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22iref\x22,\x22iref\x22,-647796531,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iref\x22,\x22iref\x22,-647796531,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,10628,10628,cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iref\x22,\x22iref\x22,-647796531,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22Atomically sets the metadata for a namespace/var/ref/agent/atom to be:\\n\\n  (apply f its-current-meta args)\\n\\n  f must be free of side-effects\x22,(cljs.core.truth_(cljs.core.alter_meta_BANG_)?cljs.core.alter_meta_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.alter_meta_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61462 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61462,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61462;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.constantly;},new cljs.core.Symbol(\x22cljs.core\x22,\x22constantly\x22,\x22cljs.core/constantly\x22,119002258,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22constantly\x22,\x22constantly\x22,-271143939,null),\x22cljs/core.cljs\x22,17,1,4289,4289,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns a function that takes any number of arguments and returns x.\x22,(cljs.core.truth_(cljs.core.constantly)?cljs.core.constantly.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.constantly;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61463 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61463,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61463;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.seq_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22seq?\x22,\x22cljs.core/seq?\x22,-1302056292,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22seq?\x22,\x22seq?\x22,-1951934719,null),\x22cljs/core.cljs\x22,11,1,2248,2248,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Return true if s satisfies ISeq\x22,(cljs.core.truth_(cljs.core.seq_QMARK_)?cljs.core.seq_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.seq_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61464 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61464,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61464;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.get;},new cljs.core.Symbol(\x22cljs.core\x22,\x22get\x22,\x22cljs.core/get\x22,-296075407,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22get\x22,\x22get\x22,-971253014,null),\x22cljs/core.cljs\x22,10,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,1951,1951,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22o\x22,\x22o\x22,290524299,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)),\x22Returns the value mapped to key, not-found or nil if key not present.\x22,(cljs.core.truth_(cljs.core.get)?cljs.core.get.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.get;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61465 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61465,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61465;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.require,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.key;},new cljs.core.Symbol(\x22cljs.core\x22,\x22key\x22,\x22cljs.core/key\x22,799303703,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),\x22cljs/core.cljs\x22,10,1,9032,9032,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22map-entry\x22,\x22map-entry\x22,329617471,null)], null)),\x22Returns the key of the map entry.\x22,(cljs.core.truth_(cljs.core.key)?cljs.core.key.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.key;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61466 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61466,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61466;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_and_not;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-and-not\x22,\x22cljs.core/bit-and-not\x22,-929778682,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-and-not\x22,\x22bit-and-not\x22,-254338837,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2883,2883,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Bitwise and with complement\x22,(cljs.core.truth_(cljs.core.bit_and_not)?cljs.core.bit_and_not.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_and_not;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61467 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61467,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61467;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.mapcat;},new cljs.core.Symbol(\x22cljs.core\x22,\x22mapcat\x22,\x22cljs.core/mapcat\x22,619397280,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22static\x22,\x22static\x22,1214358571),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.0\x22,new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22mapcat\x22,\x22mapcat\x22,-601348859,null),\x22cljs/core.cljs\x22,13,true,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5161,5161,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22colls\x22,\x22colls\x22,-397642425,null)], null)),\x22Returns the result of applying concat to the result of applying map\\n  to f and colls.  Thus function f should return a collection. Returns\\n  a transducer when no collections are provided\x22,(cljs.core.truth_(cljs.core.mapcat)?cljs.core.mapcat.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.mapcat;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61468 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61468,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61468;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.cond__GT__STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nat_int_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nat-int?\x22,\x22cljs.core/nat-int?\x22,-164364171,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nat-int?\x22,\x22nat-int?\x22,-1879663400,null),\x22cljs/core.cljs\x22,15,1,2323,2323,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies int? and is a natural integer value.\x22,(cljs.core.truth_(cljs.core.nat_int_QMARK_)?cljs.core.nat_int_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nat_int_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61469 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61469,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61469;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.get_method;},new cljs.core.Symbol(\x22cljs.core\x22,\x22get-method\x22,\x22cljs.core/get-method\x22,-487793502,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22get-method\x22,\x22get-method\x22,185754457,null),\x22cljs/core.cljs\x22,17,1,11374,11374,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22multifn\x22,\x22multifn\x22,-1904313150,null),new cljs.core.Symbol(null,\x22dispatch-val\x22,\x22dispatch-val\x22,69061000,null)], null)),\x22Given a multimethod and a dispatch value, returns the dispatch fn\\n  that would apply to that value, or nil if none apply and no default\x22,(cljs.core.truth_(cljs.core.get_method)?cljs.core.get_method.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.get_method;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61470 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61470,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61470;\n}\n})(),false);\n})(),sci.impl.io.out,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.str;},new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22str\x22,\x22str\x22,-1564826950,null),\x22cljs/core.cljs\x22,10,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ys\x22,\x22ys\x22,1606115702,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2974,2974,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ys\x22,\x22ys\x22,1606115702,null)], null)),\x22With no args, returns the empty string. With one arg x, returns\\n  x.toString().  (str nil) returns the empty string. With more than\\n  one arg, returns the concatenation of the str values of the args.\x22,(cljs.core.truth_(cljs.core.str)?cljs.core.str.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.str;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61471 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61471,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61471;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.empty;},new cljs.core.Symbol(\x22cljs.core\x22,\x22empty\x22,\x22cljs.core/empty\x22,-1236653232,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22empty\x22,\x22empty\x22,-1886564811,null),\x22cljs/core.cljs\x22,12,1,1811,1811,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns an empty collection of the same category as coll, or nil\x22,(cljs.core.truth_(cljs.core.empty)?cljs.core.empty.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.empty;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61472 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61472,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61472;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.counted_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22counted?\x22,\x22cljs.core/counted?\x22,1305324125,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22counted?\x22,\x22counted?\x22,1703071664,null),\x22cljs/core.cljs\x22,15,1,1536,1536,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if coll implements count in constant time\x22,(cljs.core.truth_(cljs.core.counted_QMARK_)?cljs.core.counted_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.counted_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61473 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61473,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61473;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.set_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22set?\x22,\x22cljs.core/set?\x22,-1176684971,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22set?\x22,\x22set?\x22,1636014792,null),\x22cljs/core.cljs\x22,11,1,2142,2142,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x satisfies ISet\x22,(cljs.core.truth_(cljs.core.set_QMARK_)?cljs.core.set_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.set_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61474 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61474,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61474;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.alength;},new cljs.core.Symbol(\x22cljs.core\x22,\x22alength\x22,\x22cljs.core/alength\x22,-1012804190,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22alength\x22,\x22alength\x22,-1268305401,null),\x22cljs/core.cljs\x22,22,1,519,519,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22array\x22,\x22array\x22,-440182315,null)], null)),\x22Returns the length of the array. Works on arrays of all types.\x22,(cljs.core.truth_(cljs.core.alength)?cljs.core.alength.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.alength;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61475 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61475,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61475;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.filterv;},new cljs.core.Symbol(\x22cljs.core\x22,\x22filterv\x22,\x22cljs.core/filterv\x22,-1650047952,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22filterv\x22,\x22filterv\x22,1977739179,null),\x22cljs/core.cljs\x22,14,1,5263,5263,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a vector of the items in coll for which\\n  (pred item) returns logical true. pred must be free of side-effects.\x22,(cljs.core.truth_(cljs.core.filterv)?cljs.core.filterv.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.filterv;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61476 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61476,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61476;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reductions;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reductions\x22,\x22cljs.core/reductions\x22,1476417303,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reductions\x22,\x22reductions\x22,549963952,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10019,10019,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22init\x22,\x22init\x22,-234949907,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy seq of the intermediate values of the reduction (as\\n  per reduce) of coll by f, starting with init.\x22,(cljs.core.truth_(cljs.core.reductions)?cljs.core.reductions.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reductions;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61477 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61477,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61477;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.booleans;},new cljs.core.Symbol(\x22cljs.core\x22,\x22booleans\x22,\x22cljs.core/booleans\x22,357707183,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22booleans\x22,\x22booleans\x22,756846088,null),\x22cljs/core.cljs\x22,15,1,2834,2834,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.booleans)?cljs.core.booleans.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.booleans;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61478 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61478,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61478;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._LT_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22\x3c\x22,\x22cljs.core/\x3c\x22,1677496129,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22\x3c\x22,\x22\x3c\x22,993667236,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2647,2647,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns non-nil if nums are in monotonically increasing order,\\n  otherwise false.\x22,((cljs.core._LT_)?cljs.core._LT_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._LT_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61479 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61479,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61479;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reduced;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reduced\x22,\x22cljs.core/reduced\x22,-514098635,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reduced\x22,\x22reduced\x22,-1189224808,null),\x22cljs/core.cljs\x22,14,1,1449,1449,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Wraps x in a way such that a reduce will terminate with the value x\x22,(cljs.core.truth_(cljs.core.reduced)?cljs.core.reduced.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reduced;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61480 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61480,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61480;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.namespace;},new cljs.core.Symbol(\x22cljs.core\x22,\x22namespace\x22,\x22cljs.core/namespace\x22,1653264270,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22namespace\x22,\x22namespace\x22,1263021155,null),\x22cljs/core.cljs\x22,16,1,3371,3371,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns the namespace String of a symbol or keyword, or nil if not present.\x22,(cljs.core.truth_(cljs.core.namespace)?cljs.core.namespace.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.namespace;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61481 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61481,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61481;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.keyword;},new cljs.core.Symbol(\x22cljs.core\x22,\x22keyword\x22,\x22cljs.core/keyword\x22,-337316415,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22keyword\x22,\x22keyword\x22,-1843046022,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3406,3406,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)),\x22Returns a Keyword with the given namespace and name.  Do not use :\\n  in the keyword strings, it will be added automatically.\x22,(cljs.core.truth_(cljs.core.keyword)?cljs.core.keyword.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.keyword;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61482 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61482,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61482;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.bound_fn_STAR_;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22bound-fn*\x22,\x22sci.impl.namespaces/bound-fn*\x22,1988189244,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22bound-fn*\x22,\x22bound-fn*\x22,102308621,null),\x22sci/impl/namespaces.cljc\x22,16,1,602,602,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Returns a function, which will install the same bindings in effect as in\\n  the thread at the time bound-fn* was called and then call f with any given\\n  arguments. This may be used to define a helper function which runs on a\\n  different thread, but needs the same bindings in place.\x22,(cljs.core.truth_(sci.impl.namespaces.bound_fn_STAR_)?sci.impl.namespaces.bound_fn_STAR_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.bound_fn_STAR_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61483 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61483,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61483;\n}\n})(),false);\n})(),sci.impl.records.sci_record_QMARK_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.tagged_literal_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22tagged-literal?\x22,\x22cljs.core/tagged-literal?\x22,-1159666987,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22tagged-literal?\x22,\x22tagged-literal?\x22,1117865390,null),\x22cljs/core.cljs\x22,22,1,11567,11567,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null)),\x22Return true if the value is the data representation of a tagged literal\x22,(cljs.core.truth_(cljs.core.tagged_literal_QMARK_)?cljs.core.tagged_literal_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.tagged_literal_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61484 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61484,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61484;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core._;},new cljs.core.Symbol(\x22cljs.core\x22,\x22-\x22,\x22cljs.core/-\x22,187040141,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22-\x22,\x22-\x22,-471816912,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2624,2624,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22If no ys are supplied, returns the negation of x, else subtracts\\n  the ys from x and returns the result.\x22,(cljs.core.truth_(cljs.core._)?cljs.core._.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core._;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61485 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61485,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61485;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_and;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-and\x22,\x22cljs.core/bit-and\x22,-617818210,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-and\x22,\x22bit-and\x22,-479352589,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2871,2871,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Bitwise and\x22,(cljs.core.truth_(cljs.core.bit_and)?cljs.core.bit_and.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_and;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61487 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61487,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61487;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unreduced;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unreduced\x22,\x22cljs.core/unreduced\x22,-968008840,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unreduced\x22,\x22unreduced\x22,780976083,null),\x22cljs/core.cljs\x22,16,1,1464,1464,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22If x is reduced?, returns (deref x), else returns x\x22,(cljs.core.truth_(cljs.core.unreduced)?cljs.core.unreduced.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unreduced;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61488 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61488,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61488;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.assoc;},new cljs.core.Symbol(\x22cljs.core\x22,\x22assoc\x22,\x22cljs.core/assoc\x22,322326297,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22assoc\x22,\x22assoc\x22,2071440380,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22kvs\x22,\x22kvs\x22,-1695980277,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,1995,1995,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22kvs\x22,\x22kvs\x22,-1695980277,null)], null)),\x22assoc[iate]. When applied to a map, returns a new map of the\\n   same (hashed/sorted) type, that contains the mapping of key(s) to\\n   val(s). When applied to a vector, returns a new vector that\\n   contains val at index. Note - index must be \x3c\x3d (count vector).\x22,(cljs.core.truth_(cljs.core.assoc)?cljs.core.assoc.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.assoc;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61489 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61489,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61489;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.multimethods.defmulti,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true,new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.partition_all;},new cljs.core.Symbol(\x22cljs.core\x22,\x22partition-all\x22,\x22cljs.core/partition-all\x22,1634835208,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22partition-all\x22,\x22partition-all\x22,-1985005385,null),\x22cljs/core.cljs\x22,20,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,9574,9574,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22step\x22,\x22step\x22,-1365547645,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of lists like partition, but may include\\n  partitions with fewer than n items at the end.  Returns a stateful\\n  transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.partition_all)?cljs.core.partition_all.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.partition_all;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61490 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61490,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61490;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_not;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-not\x22,\x22cljs.core/bit-not\x22,-2119879204,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-not\x22,\x22bit-not\x22,1508529851,null),\x22cljs/core.cljs\x22,14,1,2899,2899,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Bitwise complement\x22,(cljs.core.truth_(cljs.core.bit_not)?cljs.core.bit_not.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_not;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61491 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61491,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61491;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.some_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22some?\x22,\x22cljs.core/some?\x22,-440439360,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22some?\x22,\x22some?\x22,234752293,null),\x22cljs/core.cljs\x22,21,1,262,262,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is not nil, false otherwise.\x22,((cljs.core.some_QMARK_)?cljs.core.some_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.some_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61492 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61492,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61492;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.pos_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22pos?\x22,\x22cljs.core/pos?\x22,-652182749,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22pos?\x22,\x22pos?\x22,-244377722,null),\x22cljs/core.cljs\x22,20,1,2949,2949,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if num is greater than zero, else false\x22,((cljs.core.pos_QMARK_)?cljs.core.pos_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.pos_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61493 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61493,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61493;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.trampoline;},new cljs.core.Symbol(\x22cljs.core\x22,\x22trampoline\x22,\x22cljs.core/trampoline\x22,-1551917993,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22trampoline\x22,\x22trampoline\x22,-71368916,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10938,10938,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),\x22trampoline can be used to convert algorithms requiring mutual\\n  recursion without stack consumption. Calls f with supplied args, if\\n  any. If f returns a fn, calls that fn with no arguments, and\\n  continues to repeat, until the return value is not a fn, then\\n  returns that non-fn value. Note that if you want to return a fn as a\\n  final value, you must wrap it in some data structure and unpack it\\n  after trampoline returns.\x22,(cljs.core.truth_(cljs.core.trampoline)?cljs.core.trampoline.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.trampoline;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61494 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61494,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61494;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rand;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rand\x22,\x22cljs.core/rand\x22,-1079209816,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rand\x22,\x22rand\x22,-1745930995,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),1,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),1,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10954,10954,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns a random floating point number between 0 (inclusive) and\\n  n (default 1) (exclusive).\x22,(cljs.core.truth_(cljs.core.rand)?cljs.core.rand.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rand;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61495 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61495,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61495;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.re_matches;},new cljs.core.Symbol(\x22cljs.core\x22,\x22re-matches\x22,\x22cljs.core/re-matches\x22,2013608485,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22re-matches\x22,\x22re-matches\x22,-1865705768,null),\x22cljs/core.cljs\x22,17,1,10105,10105,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Returns the result of (re-find re s) if re fully matches s.\x22,(cljs.core.truth_(cljs.core.re_matches)?cljs.core.re_matches.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.re_matches;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61496 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61496,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61496;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.boolean_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22boolean?\x22,\x22cljs.core/boolean?\x22,1400713761,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22boolean?\x22,\x22boolean?\x22,1790940868,null),\x22cljs/core.cljs\x22,15,1,2239,2239,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x is a Boolean\x22,(cljs.core.truth_(cljs.core.boolean_QMARK_)?cljs.core.boolean_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.boolean_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61497 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61497,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61497;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.every_pred;},new cljs.core.Symbol(\x22cljs.core\x22,\x22every-pred\x22,\x22cljs.core/every-pred\x22,1081452798,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22every-pred\x22,\x22every-pred\x22,-1346958247,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ps\x22,\x22ps\x22,1932889573,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,4639,4639,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p\x22,\x22p\x22,1791580836,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22p1\x22,\x22p1\x22,703771573,null),new cljs.core.Symbol(null,\x22p2\x22,\x22p2\x22,-1748935128,null),new cljs.core.Symbol(null,\x22p3\x22,\x22p3\x22,-923395030,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22ps\x22,\x22ps\x22,1932889573,null)], null)),\x22Takes a set of predicates and returns a function f that returns true if all of its\\n  composing predicates return a logical true value against all of its arguments, else it returns\\n  false. Note that f is short-circuiting in that it will stop execution on the first\\n  argument that triggers a logical false result against the original predicates.\x22,(cljs.core.truth_(cljs.core.every_pred)?cljs.core.every_pred.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.every_pred;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61498 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61498,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61498;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.fn_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22fn?\x22,\x22cljs.core/fn?\x22,71876239,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22fn?\x22,\x22fn?\x22,1820990818,null),\x22cljs/core.cljs\x22,10,1,2026,2026,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Return true if f is a JavaScript function or satisfies the Fn protocol.\x22,(cljs.core.truth_(cljs.core.fn_QMARK_)?cljs.core.fn_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.fn_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61499 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61499,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61499;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sequential_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sequential?\x22,\x22cljs.core/sequential?\x22,1777854658,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sequential?\x22,\x22sequential?\x22,1102351463,null),\x22cljs/core.cljs\x22,18,1,2157,2157,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if coll satisfies ISequential\x22,(cljs.core.truth_(cljs.core.sequential_QMARK_)?cljs.core.sequential_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sequential_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61500 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61500,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61500;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.list;},new cljs.core.Symbol(\x22cljs.core\x22,\x22list\x22,\x22cljs.core/list\x22,-1331406371,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22list\x22,\x22list\x22,-1889078086,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22xs\x22,\x22xs\x22,-2004992428,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22xs\x22,\x22xs\x22,-2004992428,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,3220,3220,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22xs\x22,\x22xs\x22,-2004992428,null)], null)),\x22Creates a new list containing the items.\x22,(cljs.core.truth_(cljs.core.list)?cljs.core.list.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.list;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61501 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61501,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61501;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sorted_set_by;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sorted-set-by\x22,\x22cljs.core/sorted-set-by\x22,-581598320,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sorted-set-by\x22,\x22sorted-set-by\x22,899099765,null),\x22cljs/core.cljs\x22,20,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,9466,9466,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null)], null)),\x22Returns a new sorted set with supplied keys, using the supplied comparator.\x22,(cljs.core.truth_(cljs.core.sorted_set_by)?cljs.core.sorted_set_by.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sorted_set_by;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61502 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61502,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61502;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nthnext;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nthnext\x22,\x22cljs.core/nthnext\x22,-1690777327,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nthnext\x22,\x22nthnext\x22,1677356670,null),\x22cljs/core.cljs\x22,14,1,2964,2964,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns the nth next of coll, (seq coll) when n is 0.\x22,(cljs.core.truth_(cljs.core.nthnext)?cljs.core.nthnext.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nthnext;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61503 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61503,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61503;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.eduction;},new cljs.core.Symbol(\x22cljs.core\x22,\x22eduction\x22,\x22cljs.core/eduction\x22,241633629,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22eduction\x22,\x22eduction\x22,1445227968,null),\x22cljs/core.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22xforms\x22,\x22xforms\x22,2065058426,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22xforms\x22,\x22xforms\x22,2065058426,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,10823,10823,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22xforms\x22,\x22xforms\x22,2065058426,null)], null)),\x22Returns a reducible/iterable application of the transducers\\n  to the items in coll. Transducers are applied in order as if\\n  combined with comp. Note that these applications will be\\n  performed every time reduce/iterator is called.\x22,(cljs.core.truth_(cljs.core.eduction)?cljs.core.eduction.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.eduction;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61504 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61504,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61504;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rand_nth;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rand-nth\x22,\x22cljs.core/rand-nth\x22,-290660754,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rand-nth\x22,\x22rand-nth\x22,-1227719931,null),\x22cljs/core.cljs\x22,15,1,10964,10964,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Return a random element of the (sequential) collection. Will have\\n  the same performance characteristics as nth for the given\\n  collection.\x22,(cljs.core.truth_(cljs.core.rand_nth)?cljs.core.rand_nth.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rand_nth;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61505 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61505,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61505;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.delay_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.partial;},new cljs.core.Symbol(\x22cljs.core\x22,\x22partial\x22,\x22cljs.core/partial\x22,1483172485,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22partial\x22,\x22partial\x22,1881673272,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(4),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(4),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null),new cljs.core.Symbol(null,\x22arg3\x22,\x22arg3\x22,153709031,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null),new cljs.core.Symbol(null,\x22arg3\x22,\x22arg3\x22,153709031,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null),new cljs.core.Symbol(null,\x22arg3\x22,\x22arg3\x22,153709031,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,4322,4322,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null),new cljs.core.Symbol(null,\x22arg3\x22,\x22arg3\x22,153709031,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22arg1\x22,\x22arg1\x22,-1702536411,null),new cljs.core.Symbol(null,\x22arg2\x22,\x22arg2\x22,-924884852,null),new cljs.core.Symbol(null,\x22arg3\x22,\x22arg3\x22,153709031,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Takes a function f and fewer than the normal arguments to f, and\\n  returns a fn that takes a variable number of additional args. When\\n  called, the returned function calls f with args + additional args.\x22,(cljs.core.truth_(cljs.core.partial)?cljs.core.partial.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.partial;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61506 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61506,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61506;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.sci_with_bindings),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rsubseq;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rsubseq\x22,\x22cljs.core/rsubseq\x22,225358430,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rsubseq\x22,\x22rsubseq\x22,-710070471,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),5,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),5,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22test\x22,\x22test\x22,-2076896892,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22start-test\x22,\x22start-test\x22,687547962,null),new cljs.core.Symbol(null,\x22start-key\x22,\x22start-key\x22,790225477,null),new cljs.core.Symbol(null,\x22end-test\x22,\x22end-test\x22,2122505254,null),new cljs.core.Symbol(null,\x22end-key\x22,\x22end-key\x22,-1592097336,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22test\x22,\x22test\x22,-2076896892,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22start-test\x22,\x22start-test\x22,687547962,null),new cljs.core.Symbol(null,\x22start-key\x22,\x22start-key\x22,790225477,null),new cljs.core.Symbol(null,\x22end-test\x22,\x22end-test\x22,2122505254,null),new cljs.core.Symbol(null,\x22end-key\x22,\x22end-key\x22,-1592097336,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9645,9645,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22test\x22,\x22test\x22,-2076896892,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sc\x22,\x22sc\x22,-1506412737,null),new cljs.core.Symbol(null,\x22start-test\x22,\x22start-test\x22,687547962,null),new cljs.core.Symbol(null,\x22start-key\x22,\x22start-key\x22,790225477,null),new cljs.core.Symbol(null,\x22end-test\x22,\x22end-test\x22,2122505254,null),new cljs.core.Symbol(null,\x22end-key\x22,\x22end-key\x22,-1592097336,null)], null)),\x22sc must be a sorted collection, test(s) one of \x3c, \x3c\x3d, \x3e or\\n  \x3e\x3d. Returns a reverse seq of those entries with keys ek for\\n  which (test (.. sc comparator (compare ek key)) 0) is true\x22,(cljs.core.truth_(cljs.core.rsubseq)?cljs.core.rsubseq.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rsubseq;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61510 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61510,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61510;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.contains_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22contains?\x22,\x22cljs.core/contains?\x22,-976526835,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22contains?\x22,\x22contains?\x22,-1676812576,null),\x22cljs/core.cljs\x22,16,1,2354,2354,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)),\x22Returns true if key is present in the given collection, otherwise\\n  returns false.  Note that for numerically indexed collections like\\n  vectors and arrays, this tests if the numeric key is within the\\n  range of indexes. \x27contains?\x27 operates constant or logarithmic time;\\n  it will not perform a linear search for a value.  See also \x27some\x27.\x22,(cljs.core.truth_(cljs.core.contains_QMARK_)?cljs.core.contains_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.contains_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61511 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61511,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61511;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.__GT__STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.shorts;},new cljs.core.Symbol(\x22cljs.core\x22,\x22shorts\x22,\x22cljs.core/shorts\x22,-567670299,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22shorts\x22,\x22shorts\x22,107738238,null),\x22cljs/core.cljs\x22,13,1,2837,2837,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.shorts)?cljs.core.shorts.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.shorts;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61518 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61518,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61518;\n}\n})(),false);\n})(),sci.impl.core_protocols.swap_protocol,sci.impl.namespaces.macrofy(sci.impl.namespaces.as__GT__STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.hash_set;},new cljs.core.Symbol(\x22cljs.core\x22,\x22hash-set\x22,\x22cljs.core/hash-set\x22,1130426749,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22hash-set\x22,\x22hash-set\x22,-1145168432,null),\x22cljs/core.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9455,9455,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keys\x22,\x22keys\x22,-1586012071,null)], null)),\x22Returns a new hash set with supplied keys.  Any equal keys are\\n  handled as if by repeated uses of conj.\x22,(cljs.core.truth_(cljs.core.hash_set)?cljs.core.hash_set.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.hash_set;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61520 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61520,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61520;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.take;},new cljs.core.Symbol(\x22cljs.core\x22,\x22take\x22,\x22cljs.core/take\x22,439591112,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22take\x22,\x22take\x22,871646627,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4764,4764,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the first n items in coll, or all items if\\n  there are fewer than n.  Returns a stateful transducer when\\n  no collection is provided.\x22,(cljs.core.truth_(cljs.core.take)?cljs.core.take.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.take;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61521 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61521,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61521;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.if_let_STAR_),cljs.core.with_meta(sci.impl.namespaces.macroexpand_1_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.split_with;},new cljs.core.Symbol(\x22cljs.core\x22,\x22split-with\x22,\x22cljs.core/split-with\x22,-1246962281,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22split-with\x22,\x22split-with\x22,1853047034,null),\x22cljs/core.cljs\x22,17,1,9964,9964,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a vector of [(take-while pred coll) (drop-while pred coll)]\x22,(cljs.core.truth_(cljs.core.split_with)?cljs.core.split_with.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.split_with;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61522 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61522,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61522;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_refer,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.vars.binding_conveyor_fn,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.make_hierarchy;},new cljs.core.Symbol(\x22cljs.core\x22,\x22make-hierarchy\x22,\x22cljs.core/make-hierarchy\x22,433978497,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22make-hierarchy\x22,\x22make-hierarchy\x22,-241558556,null),\x22cljs/core.cljs\x22,21,1,10983,10983,cljs.core.list(cljs.core.PersistentVector.EMPTY),\x22Creates a hierarchy object for use with derive, isa? etc.\x22,(cljs.core.truth_(cljs.core.make_hierarchy)?cljs.core.make_hierarchy.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.make_hierarchy;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61523 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61523,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61523;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.tagged_literal;},new cljs.core.Symbol(\x22cljs.core\x22,\x22tagged-literal\x22,\x22cljs.core/tagged-literal\x22,-489633670,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22tagged-literal\x22,\x22tagged-literal\x22,-896422703,null),\x22cljs/core.cljs\x22,21,1,11572,11572,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tag\x22,\x22tag\x22,350170304,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null)),\x22Construct a data representation of a tagged literal from a\\n  tag symbol and a form.\x22,(cljs.core.truth_(cljs.core.tagged_literal)?cljs.core.tagged_literal.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.tagged_literal;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61526 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61526,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61526;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.has_root_impl;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22has-root-impl\x22,\x22sci.impl.namespaces/has-root-impl\x22,22987132,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22has-root-impl\x22,\x22has-root-impl\x22,-288948659,null),\x22sci/impl/namespaces.cljc\x22,20,1,367,367,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22sci-var\x22,\x22sci-var\x22,831114872,null)], null)),null,(cljs.core.truth_(sci.impl.namespaces.has_root_impl)?sci.impl.namespaces.has_root_impl.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.has_root_impl;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61531 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61531,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61531;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.hierarchies.parents_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.vec;},new cljs.core.Symbol(\x22cljs.core\x22,\x22vec\x22,\x22cljs.core/vec\x22,307622519,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22vec\x22,\x22vec\x22,982683596,null),\x22cljs/core.cljs\x22,10,1,5724,5724,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Creates a new vector containing the contents of coll. JavaScript arrays\\n  will be aliased and should not be modified.\x22,(cljs.core.truth_(cljs.core.vec)?cljs.core.vec.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.vec;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61534 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61534,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61534;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.nth;},new cljs.core.Symbol(\x22cljs.core\x22,\x22nth\x22,\x22cljs.core/nth\x22,1961052085,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22nth\x22,\x22nth\x22,1529209554,null),\x22cljs/core.cljs\x22,10,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,1871,1871,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22not-found\x22,\x22not-found\x22,1011451547,null)], null)),\x22Returns the value at the index. get returns nil if index out of\\n  bounds, nth throws an exception unless not-found is supplied.  nth\\n  also works for strings, arrays, regex Matchers and Lists, and,\\n  in O(n) time, for sequences.\x22,(cljs.core.truth_(cljs.core.nth)?cljs.core.nth.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.nth;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61535 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61535,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61535;\n}\n})(),false);\n})(),sci.impl.namespaces.clojure_core_ns,sci.impl.namespaces.macrofy(sci.impl.namespaces.lazy_cat_STAR_),sci.impl.namespaces.macrofy(sci.impl.namespaces.if_some_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.subs;},new cljs.core.Symbol(\x22cljs.core\x22,\x22subs\x22,\x22cljs.core/subs\x22,-1092266147,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22subs\x22,\x22subs\x22,1453849536,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,2988,2988,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22start\x22,\x22start\x22,1285322546,null),new cljs.core.Symbol(null,\x22end\x22,\x22end\x22,1372345569,null)], null)),\x22Returns the substring of s beginning at start inclusive, and ending\\n  at end (defaults to length of string), exclusive.\x22,(cljs.core.truth_(cljs.core.subs)?cljs.core.subs.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.subs;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61536 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61536,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61536;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.symbol_STAR_;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22symbol*\x22,\x22sci.impl.namespaces/symbol*\x22,2062503640,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22symbol*\x22,\x22symbol*\x22,-313096311,null),\x22sci/impl/namespaces.cljc\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,647,647,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),new cljs.core.Symbol(null,\x22name\x22,\x22name\x22,-810760592,null)], null)),\x22Returns a Symbol with the given namespace and name. Arity-1 works\\n  on strings, keywords, and vars.\x22,(cljs.core.truth_(sci.impl.namespaces.symbol_STAR_)?sci.impl.namespaces.symbol_STAR_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.symbol_STAR_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61548 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61548,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61548;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.mod;},new cljs.core.Symbol(\x22cljs.core\x22,\x22mod\x22,\x22cljs.core/mod\x22,1925370196,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22mod\x22,\x22mod\x22,1510044207,null),\x22cljs/core.cljs\x22,10,1,2848,2848,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null)], null)),\x22Modulus of num and div. Truncates toward negative infinity.\x22,(cljs.core.truth_(cljs.core.mod)?cljs.core.mod.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.mod;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61549 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61549,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61549;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.number_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22number?\x22,\x22cljs.core/number?\x22,-811857295,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22number?\x22,\x22number?\x22,-1747282210,null),\x22cljs/core.cljs\x22,23,1,249,249,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if x is a JavaScript number.\x22,((cljs.core.number_QMARK_)?cljs.core.number_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.number_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61554 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61554,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61554;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.reduced_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22reduced?\x22,\x22cljs.core/reduced?\x22,-1192491371,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22reduced?\x22,\x22reduced?\x22,1361797384,null),\x22cljs/core.cljs\x22,15,1,1454,1454,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22r\x22,\x22r\x22,1169147337,null)], null)),\x22Returns true if x is the result of a call to reduced\x22,(cljs.core.truth_(cljs.core.reduced_QMARK_)?cljs.core.reduced_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.reduced_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61560 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61560,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61560;\n}\n})(),false);\n})(),(function (){\nreturn sci.impl.vars.new_var.cljs$core$IFn$_invoke$arity$3(cljs.core.gensym.cljs$core$IFn$_invoke$arity$0(),null,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true], null));\n}),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.conj;},new cljs.core.Symbol(\x22cljs.core\x22,\x22conj\x22,\x22cljs.core/conj\x22,-460750931,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22conj\x22,\x22conj\x22,-1127293942,null),\x22cljs/core.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22xs\x22,\x22xs\x22,-2004992428,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,1796,1796,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22xs\x22,\x22xs\x22,-2004992428,null)], null)),\x22conj[oin]. Returns a new collection with the xs\\n  \x27added\x27. (conj nil item) returns (item).  The \x27addition\x27 may\\n  happen at different \x27places\x27 depending on the concrete type.\x22,(cljs.core.truth_(cljs.core.conj)?cljs.core.conj.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.conj;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61563 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61563,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61563;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bytes;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bytes\x22,\x22cljs.core/bytes\x22,-1895745574,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bytes\x22,\x22bytes\x22,-1478569089,null),\x22cljs/core.cljs\x22,12,1,2835,2835,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.bytes)?cljs.core.bytes.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bytes;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61565 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61565,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61565;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_float;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-float\x22,\x22cljs.core/unchecked-float\x22,550172037,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-float\x22,\x22unchecked-float\x22,1485658216,null),\x22cljs/core.cljs\x22,30,1,2730,2730,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.unchecked_float)?cljs.core.unchecked_float.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_float;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61574 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61574,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61574;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.bit_test;},new cljs.core.Symbol(\x22cljs.core\x22,\x22bit-test\x22,\x22cljs.core/bit-test\x22,1218697292,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22bit-test\x22,\x22bit-test\x22,543456753,null),\x22cljs/core.cljs\x22,24,1,2908,2908,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Test bit at index n\x22,((cljs.core.bit_test)?cljs.core.bit_test.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.bit_test;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61577 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61577,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61577;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.sorted_map_by;},new cljs.core.Symbol(\x22cljs.core\x22,\x22sorted-map-by\x22,\x22cljs.core/sorted-map-by\x22,1657795193,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22sorted-map-by\x22,\x22sorted-map-by\x22,218894812,null),\x22cljs/core.cljs\x22,20,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,8948,8948,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22comparator\x22,\x22comparator\x22,-509539107,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),\x22keyval \x3d\x3e key val\\n  Returns a new sorted map with supplied mappings, using the supplied comparator.\x22,(cljs.core.truth_(cljs.core.sorted_map_by)?cljs.core.sorted_map_by.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.sorted_map_by;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61579 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61579,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61579;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.double_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22double?\x22,\x22cljs.core/double?\x22,1757455529,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22double?\x22,\x22double?\x22,-2146564276,null),\x22cljs/core.cljs\x22,14,1,2343,2343,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true for JavaScript numbers, false otherwise.\x22,(cljs.core.truth_(cljs.core.double_QMARK_)?cljs.core.double_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.double_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61583 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61583,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61583;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rseq;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rseq\x22,\x22cljs.core/rseq\x22,-238610347,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rseq\x22,\x22rseq\x22,-1719353554,null),\x22cljs/core.cljs\x22,16,1,3207,3207,new cljs.core.Symbol(null,\x22seq\x22,\x22seq\x22,-177272256,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22rev\x22,\x22rev\x22,1653234197,null)], null)),\x22Returns, in constant time, a seq of the items in rev (which\\n  can be a vector or sorted-map), in reverse order. If rev is empty returns nil\x22,((cljs.core.rseq)?cljs.core.rseq.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rseq;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61584 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61584,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61584;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_long;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-long\x22,\x22cljs.core/unchecked-long\x22,2050992288,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-long\x22,\x22unchecked-long\x22,1306610949,null),\x22cljs/core.cljs\x22,21,1,2829,2829,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Coerce to long by stripping decimal places. Identical to `int\x27.\x22,(cljs.core.truth_(cljs.core.unchecked_long)?cljs.core.unchecked_long.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_long;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61587 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61587,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61587;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_binding,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.double$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22double\x22,\x22cljs.core/double\x22,-1119390159,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22double\x22,\x22double\x22,-1769548886,null),\x22cljs/core.cljs\x22,21,1,2725,2725,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.double$)?cljs.core.double$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.double$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61589 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61589,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61589;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.tree_seq;},new cljs.core.Symbol(\x22cljs.core\x22,\x22tree-seq\x22,\x22cljs.core/tree-seq\x22,-76832501,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22tree-seq\x22,\x22tree-seq\x22,-1800921632,null),\x22cljs/core.cljs\x22,15,1,5208,5208,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22branch?\x22,\x22branch?\x22,641208520,null),new cljs.core.Symbol(null,\x22children\x22,\x22children\x22,699969545,null),new cljs.core.Symbol(null,\x22root\x22,\x22root\x22,1191874074,null)], null)),\x22Returns a lazy sequence of the nodes in a tree, via a depth-first walk.\\n  branch? must be a fn of one arg that returns true if passed a node\\n  that can have children (but may not).  children must be a fn of one\\n  arg that returns a sequence of the children. Will only be called on\\n  nodes for which branch? returns true. Root is the root node of the\\n  tree.\x22,(cljs.core.truth_(cljs.core.tree_seq)?cljs.core.tree_seq.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.tree_seq;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61590 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61590,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61590;\n}\n})(),false);\n})(),sci.impl.multimethods.multi_fn_add_method_impl,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.seqable_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22seqable?\x22,\x22cljs.core/seqable?\x22,-745394886,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22seqable?\x22,\x22seqable?\x22,72462495,null),\x22cljs/core.cljs\x22,15,1,2255,2255,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Return true if the seq function is supported for s\x22,(cljs.core.truth_(cljs.core.seqable_QMARK_)?cljs.core.seqable_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.seqable_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61593 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61593,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61593;\n}\n})(),false);\n})(),sci.impl.core_protocols.swap_BANG__STAR_,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.vswap_BANG__STAR_;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22vswap!*\x22,\x22sci.impl.namespaces/vswap!*\x22,321367591,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22vswap!*\x22,\x22vswap!*\x22,-2136999978,null),\x22sci/impl/namespaces.cljc\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22vol\x22,\x22vol\x22,1137570949,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22vol\x22,\x22vol\x22,1137570949,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,311,311,cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22vol\x22,\x22vol\x22,1137570949,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),null,(cljs.core.truth_(sci.impl.namespaces.vswap_BANG__STAR_)?sci.impl.namespaces.vswap_BANG__STAR_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.vswap_BANG__STAR_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61599 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61599,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61599;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.array_map;},new cljs.core.Symbol(\x22cljs.core\x22,\x22array-map\x22,\x22cljs.core/array-map\x22,-1519210683,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22array-map\x22,\x22array-map\x22,1555038968,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,8917,8917,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22keyvals\x22,\x22keyvals\x22,-2067234787,null)], null)),\x22keyval \x3d\x3e key val\\n  Returns a new array map with supplied mappings.\x22,(cljs.core.truth_(cljs.core.array_map)?cljs.core.array_map.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.array_map;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61603 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61603,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61603;\n}\n})(),false);\n})(),sci.impl.vars.reset_thread_binding_frame,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.dedupe;},new cljs.core.Symbol(\x22cljs.core\x22,\x22dedupe\x22,\x22cljs.core/dedupe\x22,-1145436503,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22dedupe\x22,\x22dedupe\x22,-461856254,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),1,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),1,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10766,10766,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence removing consecutive duplicates in coll.\\n  Returns a transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.dedupe)?cljs.core.dedupe.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.dedupe;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61604 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61604,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61604;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.short$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22short\x22,\x22cljs.core/short\x22,-1126139994,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22short\x22,\x22short\x22,-725675253,null),\x22cljs/core.cljs\x22,20,1,2723,2723,new cljs.core.Symbol(null,\x22number\x22,\x22number\x22,-1084057331,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.short$)?cljs.core.short$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.short$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61612 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61612,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61612;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.update;},new cljs.core.Symbol(\x22cljs.core\x22,\x22update\x22,\x22cljs.core/update\x22,-908565906,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22update\x22,\x22update\x22,-1608859373,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(6),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(6),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null)], null),new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null,null)], null),1,5349,5349,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 6, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null)], null),new cljs.core.PersistentVector(null, 8, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null),new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22z\x22,\x22z\x22,851004344,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22\x27Updates\x27 a value in an associative structure, where k is a\\n  key and f is a function that will take the old value\\n  and any supplied args and return the new value, and returns a new\\n  structure.  If the key does not exist, nil is passed as the old value.\x22,(cljs.core.truth_(cljs.core.update)?cljs.core.update.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.update;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61613 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61613,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61613;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.filter;},new cljs.core.Symbol(\x22cljs.core\x22,\x22filter\x22,\x22cljs.core/filter\x22,-251894204,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22filter\x22,\x22filter\x22,691993593,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5171,5171,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the items in coll for which\\n  (pred item) returns logical true. pred must be free of side-effects.\\n  Returns a transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.filter)?cljs.core.filter.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.filter;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61614 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61614,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61614;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.unchecked_dec_int;},new cljs.core.Symbol(\x22cljs.core\x22,\x22unchecked-dec-int\x22,\x22cljs.core/unchecked-dec-int\x22,-1215045409,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22unchecked-dec-int\x22,\x22unchecked-dec-int\x22,1339067442,null),\x22cljs/core.cljs\x22,24,1,2752,2752,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns a number one less than x, an int.\x22,(cljs.core.truth_(cljs.core.unchecked_dec_int)?cljs.core.unchecked_dec_int.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.unchecked_dec_int;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61620 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61620,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61620;\n}\n})(),false);\n})(),sci.impl.namespaces._STAR_3,cljs.core.with_meta(sci.impl.namespaces.sci_requiring_resolve,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.rem;},new cljs.core.Symbol(\x22cljs.core\x22,\x22rem\x22,\x22cljs.core/rem\x22,-866786983,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22rem\x22,\x22rem\x22,664046770,null),\x22cljs/core.cljs\x22,10,1,2859,2859,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22d\x22,\x22d\x22,-682293345,null)], null)),\x22remainder of dividing numerator by denominator.\x22,(cljs.core.truth_(cljs.core.rem)?cljs.core.rem.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.rem;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61625 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61625,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61625;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.pop;},new cljs.core.Symbol(\x22cljs.core\x22,\x22pop\x22,\x22cljs.core/pop\x22,-1038087414,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22pop\x22,\x22pop\x22,-94247249,null),\x22cljs/core.cljs\x22,10,1,2107,2107,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22For a list or queue, returns a new list/queue without the first\\n  item, for a vector, returns a new vector without the last item.\\n  Note - not the same as next/butlast.\x22,(cljs.core.truth_(cljs.core.pop)?cljs.core.pop.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.pop;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61630 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61630,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61630;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.merge_with;},new cljs.core.Symbol(\x22cljs.core\x22,\x22merge-with\x22,\x22cljs.core/merge-with\x22,366771213,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22merge-with\x22,\x22merge-with\x22,1025434534,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(1),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(1),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22maps\x22,\x22maps\x22,-71029607,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22maps\x22,\x22maps\x22,-71029607,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,9124,9124,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22maps\x22,\x22maps\x22,-71029607,null)], null)),\x22Returns a map that consists of the rest of the maps conj-ed onto\\n  the first.  If a key occurs in more than one map, the mapping(s)\\n  from the latter (left-to-right) will be combined with the mapping in\\n  the result by calling (f val-in-result val-in-latter).\x22,(cljs.core.truth_(cljs.core.merge_with)?cljs.core.merge_with.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.merge_with;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61632 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61632,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61632;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.long$;},new cljs.core.Symbol(\x22cljs.core\x22,\x22long\x22,\x22cljs.core/long\x22,241154833,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22long\x22,\x22long\x22,1469079434,null),\x22cljs/core.cljs\x22,11,1,2824,2824,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Coerce to long by stripping decimal places. Identical to `int\x27.\x22,(cljs.core.truth_(cljs.core.long$)?cljs.core.long$.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.long$;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61633 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61633,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61633;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.assert_STAR_,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true], null)),sci.impl.namespaces.macrofy(sci.impl.namespaces.sci_refer_clojure),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.flatten;},new cljs.core.Symbol(\x22cljs.core\x22,\x22flatten\x22,\x22cljs.core/flatten\x22,-237795822,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22flatten\x22,\x22flatten\x22,-1441633353,null),\x22cljs/core.cljs\x22,14,1,5223,5223,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Takes any nested combination of sequential things (lists, vectors,\\n  etc.) and returns their contents as a single, flat sequence.\\n  (flatten nil) returns nil.\x22,(cljs.core.truth_(cljs.core.flatten)?cljs.core.flatten.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.flatten;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61638 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61638,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61638;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.distinct_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22distinct?\x22,\x22cljs.core/distinct?\x22,-1285807788,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22distinct?\x22,\x22distinct?\x22,-1684357959,null),\x22cljs/core.cljs\x22,25,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,2375,2375,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns true if no two of the arguments are \x3d\x22,((cljs.core.distinct_QMARK_)?cljs.core.distinct_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.distinct_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61642 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61642,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61642;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.map_indexed;},new cljs.core.Symbol(\x22cljs.core\x22,\x22map-indexed\x22,\x22cljs.core/map-indexed\x22,1154761082,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22map-indexed\x22,\x22map-indexed\x22,-1391025435,null),\x22cljs/core.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,4376,4376,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence consisting of the result of applying f to 0\\n  and the first item of coll, followed by applying f to 1 and the second\\n  item in coll, etc, until coll is exhausted. Thus function f should\\n  accept 2 arguments, index and item. Returns a stateful transducer when\\n  no collection is provided.\x22,(cljs.core.truth_(cljs.core.map_indexed)?cljs.core.map_indexed.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.map_indexed;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61643 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61643,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61643;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_publics,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.types.type_impl,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.even_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22even?\x22,\x22cljs.core/even?\x22,-875678303,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22even?\x22,\x22even?\x22,-1827825394,null),\x22cljs/core.cljs\x22,12,1,4269,4269,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null)),\x22Returns true if n is even, throws an exception if n is not an integer\x22,(cljs.core.truth_(cljs.core.even_QMARK_)?cljs.core.even_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.even_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61645 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61645,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61645;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.vars.var_get;},new cljs.core.Symbol(\x22sci.impl.vars\x22,\x22var-get\x22,\x22sci.impl.vars/var-get\x22,-769912588,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.vars\x22,\x22sci.impl.vars\x22,-1077610315,null),new cljs.core.Symbol(null,\x22var-get\x22,\x22var-get\x22,-767472097,null),\x22sci/impl/vars.cljc\x22,14,1,372,372,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null)], null)),null,(cljs.core.truth_(sci.impl.vars.var_get)?sci.impl.vars.var_get.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.vars.var_get;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61649 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61649,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61649;\n}\n})(),false);\n})(),sci.impl.multimethods.multi_fn_QMARK__impl,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.vars.alter_var_root;},new cljs.core.Symbol(\x22sci.impl.vars\x22,\x22alter-var-root\x22,\x22sci.impl.vars/alter-var-root\x22,-1744678140,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.impl.vars\x22,\x22sci.impl.vars\x22,-1077610315,null),new cljs.core.Symbol(null,\x22alter-var-root\x22,\x22alter-var-root\x22,-1749458519,null),\x22sci/impl/vars.cljc\x22,21,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),1,412,412,cljs.core.list(new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22v\x22,\x22v\x22,1661996586,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22args\x22,\x22args\x22,-1338879193,null)], null)),null,(cljs.core.truth_(sci.impl.vars.alter_var_root)?sci.impl.vars.alter_var_root.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.vars.alter_var_root;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61654 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61654,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61654;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return sci.impl.namespaces.type;},new cljs.core.Symbol(\x22sci.impl.namespaces\x22,\x22type\x22,\x22sci.impl.namespaces/type\x22,1455308292,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[cljs.core.with_meta(new cljs.core.Symbol(null,\x22sci.impl.namespaces\x22,\x22sci.impl.namespaces\x22,-855853317,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22no-doc\x22,\x22no-doc\x22,1559921891),true], null)),new cljs.core.Symbol(null,\x22type\x22,\x22type\x22,-1480165421,null),\x22sci/impl/namespaces.cljc\x22,14,4,706,706,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(sci.impl.namespaces.type)?sci.impl.namespaces.type.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d sci.impl.namespaces.type;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61656 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61656,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61656;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.neg_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22neg?\x22,\x22cljs.core/neg?\x22,2002812728,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22neg?\x22,\x22neg?\x22,-1902175577,null),\x22cljs/core.cljs\x22,20,1,2958,2958,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if num is less than zero, else false\x22,((cljs.core.neg_QMARK_)?cljs.core.neg_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.neg_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61661 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61661,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61661;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.gensym;},new cljs.core.Symbol(\x22cljs.core\x22,\x22gensym\x22,\x22cljs.core/gensym\x22,-857997988,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22gensym\x22,\x22gensym\x22,-1693147401,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),1,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),1,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prefix-string\x22,\x22prefix-string\x22,-922371041,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prefix-string\x22,\x22prefix-string\x22,-922371041,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10677,10677,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22prefix-string\x22,\x22prefix-string\x22,-922371041,null)], null)),\x22Returns a new symbol with a unique name. If a prefix string is\\n  supplied, the name is prefix# where # is some unique number. If\\n  prefix is not supplied, the prefix is \x27G__\x27.\x22,(cljs.core.truth_(cljs.core.gensym)?cljs.core.gensym.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.gensym;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61662 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61662,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61662;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_resolve,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.add_watch;},new cljs.core.Symbol(\x22cljs.core\x22,\x22add-watch\x22,\x22cljs.core/add-watch\x22,622836799,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22add-watch\x22,\x22add-watch\x22,1389887634,null),\x22cljs/core.cljs\x22,16,1,10642,10642,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iref\x22,\x22iref\x22,-647796531,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Adds a watch function to an atom reference. The watch fn must be a\\n  fn of 4 args: a key, the reference, its old-state, its\\n  new-state. Whenever the reference\x27s state might have been changed,\\n  any registered watches will have their functions called. The watch\\n  fn will be called synchronously. Note that an atom\x27s state\\n  may have changed again prior to the fn call, so use old/new-state\\n  rather than derefing the reference. Keys must be unique per\\n  reference, and can be used to remove the watch with remove-watch,\\n  but are otherwise considered opaque by the watch mechanism.  Bear in\\n  mind that regardless of the result or action of the watch fns the\\n  atom\x27s value will change.  Example:\\n\\n      (def a (atom 0))\\n      (add-watch a :inc (fn [k r o n] (assert (\x3d\x3d 0 n))))\\n      (swap! a inc)\\n      ;; Assertion Error\\n      (deref a)\\n      ;\x3d\x3e 1\x22,(cljs.core.truth_(cljs.core.add_watch)?cljs.core.add_watch.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.add_watch;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61673 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61673,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61673;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.not_any_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22not-any?\x22,\x22cljs.core/not-any?\x22,-667717115,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22not-any?\x22,\x22not-any?\x22,-2114707554,null),\x22cljs/core.cljs\x22,15,1,4264,4264,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns false if (pred x) is logical true for any x in coll,\\n  else true.\x22,(cljs.core.truth_(cljs.core.not_any_QMARK_)?cljs.core.not_any_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.not_any_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61678 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61678,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61678;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.take_nth;},new cljs.core.Symbol(\x22cljs.core\x22,\x22take-nth\x22,\x22cljs.core/take-nth\x22,2053562218,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22take-nth\x22,\x22take-nth\x22,1378204353,null),\x22cljs/core.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,9943,9943,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy seq of every nth item in coll.  Returns a stateful\\n  transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.take_nth)?cljs.core.take_nth.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.take_nth;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61679 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61679,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61679;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.dorun;},new cljs.core.Symbol(\x22cljs.core\x22,\x22dorun\x22,\x22cljs.core/dorun\x22,1487325315,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22dorun\x22,\x22dorun\x22,560426022,null),\x22cljs/core.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,10071,10071,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22When lazy sequences are produced via functions that have side\\n  effects, any effects other than those needed to produce the first\\n  element in the seq do not occur until the seq is consumed. dorun can\\n  be used to force any effects. Walks through the successive nexts of\\n  the seq, does not retain the head and returns nil.\x22,(cljs.core.truth_(cljs.core.dorun)?cljs.core.dorun.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.dorun;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61684 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61684,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61684;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.remove_all_methods;},new cljs.core.Symbol(\x22cljs.core\x22,\x22remove-all-methods\x22,\x22cljs.core/remove-all-methods\x22,-1395562167,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22remove-all-methods\x22,\x22remove-all-methods\x22,-728267092,null),\x22cljs/core.cljs\x22,25,1,11354,11354,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22multifn\x22,\x22multifn\x22,-1904313150,null)], null)),\x22Removes all of the methods of multimethod.\x22,(cljs.core.truth_(cljs.core.remove_all_methods)?cljs.core.remove_all_methods.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.remove_all_methods;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61685 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61685,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61685;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.not_empty;},new cljs.core.Symbol(\x22cljs.core\x22,\x22not-empty\x22,\x22cljs.core/not-empty\x22,540057011,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22not-empty\x22,\x22not-empty\x22,2029453590,null),\x22cljs/core.cljs\x22,16,1,4019,4019,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22If coll is empty, returns nil, else coll\x22,(cljs.core.truth_(cljs.core.not_empty)?cljs.core.not_empty.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.not_empty;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61690 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61690,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61690;\n}\n})(),false);\n})(),cljs.core.with_meta(sci.impl.namespaces.sci_ns_aliases,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),cljs.core.with_meta(sci.impl.namespaces.sci_ns_resolve,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.vars.get_thread_binding_frame,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.chunk_rest;},new cljs.core.Symbol(\x22cljs.core\x22,\x22chunk-rest\x22,\x22cljs.core/chunk-rest\x22,-398161143,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22chunk-rest\x22,\x22chunk-rest\x22,-1853526420,null),\x22cljs/core.cljs\x22,17,1,3650,3650,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),null,(cljs.core.truth_(cljs.core.chunk_rest)?cljs.core.chunk_rest.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.chunk_rest;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61695 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61695,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61695;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.remove_watch;},new cljs.core.Symbol(\x22cljs.core\x22,\x22remove-watch\x22,\x22cljs.core/remove-watch\x22,1708184927,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22remove-watch\x22,\x22remove-watch\x22,-1105301448,null),\x22cljs/core.cljs\x22,19,1,10665,10665,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22iref\x22,\x22iref\x22,-647796531,null),new cljs.core.Symbol(null,\x22key\x22,\x22key\x22,124488940,null)], null)),\x22Removes a watch (set by add-watch) from a reference\x22,(cljs.core.truth_(cljs.core.remove_watch)?cljs.core.remove_watch.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.remove_watch;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61696 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61696,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61696;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.int_array;},new cljs.core.Symbol(\x22cljs.core\x22,\x22int-array\x22,\x22cljs.core/int-array\x22,-207624395,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22int-array\x22,\x22int-array\x22,459176616,null),\x22cljs/core.cljs\x22,16,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,3681,3681,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size-or-seq\x22,\x22size-or-seq\x22,-2062823589,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22size\x22,\x22size\x22,-1555742762,null),new cljs.core.Symbol(null,\x22init-val-or-seq\x22,\x22init-val-or-seq\x22,-1168783320,null)], null)),\x22Creates an array of ints. Does not coerce array, provided for compatibility\\n  with Clojure.\x22,(cljs.core.truth_(cljs.core.int_array)?cljs.core.int_array.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.int_array;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61701 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61701,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61701;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.pos_int_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22pos-int?\x22,\x22cljs.core/pos-int?\x22,-2115888030,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22pos-int?\x22,\x22pos-int?\x22,-1205815015,null),\x22cljs/core.cljs\x22,15,1,2293,2293,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Return true if x satisfies int? and is positive.\x22,(cljs.core.truth_(cljs.core.pos_int_QMARK_)?cljs.core.pos_int_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.pos_int_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61705 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61705,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61705;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.ints;},new cljs.core.Symbol(\x22cljs.core\x22,\x22ints\x22,\x22cljs.core/ints\x22,-1354489476,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22ints\x22,\x22ints\x22,-1761239845,null),\x22cljs/core.cljs\x22,11,1,2838,2838,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),null,(cljs.core.truth_(cljs.core.ints)?cljs.core.ints.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.ints;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61715 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61715,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61715;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.identical_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22identical?\x22,\x22cljs.core/identical?\x22,608476750,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22identical?\x22,\x22identical?\x22,-745864205,null),\x22cljs/core.cljs\x22,26,1,232,232,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)),\x22Tests if 2 arguments are the same object\x22,((cljs.core.identical_QMARK_)?cljs.core.identical_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.identical_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61722 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61722,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61722;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.persistent_BANG_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22persistent!\x22,\x22cljs.core/persistent!\x22,-1804741483,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22persistent!\x22,\x22persistent!\x22,1286555698,null),\x22cljs/core.cljs\x22,18,1,3833,3833,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22tcoll\x22,\x22tcoll\x22,-1341294481,null)], null)),\x22Returns a new, persistent version of the transient collection, in\\n  constant time. The transient collection cannot be used after this\\n  call, any such use will throw an exception.\x22,(cljs.core.truth_(cljs.core.persistent_BANG_)?cljs.core.persistent_BANG_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.persistent_BANG_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61730 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61730,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61730;\n}\n})(),false);\n})(),sci.impl.core_protocols.reset_protocol,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.indexed_QMARK_;},new cljs.core.Symbol(\x22cljs.core\x22,\x22indexed?\x22,\x22cljs.core/indexed?\x22,-1311257161,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22indexed?\x22,\x22indexed?\x22,1234610384,null),\x22cljs/core.cljs\x22,15,1,1540,1540,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null)),\x22Returns true if coll implements nth in constant time\x22,(cljs.core.truth_(cljs.core.indexed_QMARK_)?cljs.core.indexed_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.indexed_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61739 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61739,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61739;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.min_key;},new cljs.core.Symbol(\x22cljs.core\x22,\x22min-key\x22,\x22cljs.core/min-key\x22,-696788161,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22min-key\x22,\x22min-key\x22,246826648,null),\x22cljs/core.cljs\x22,14,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(3),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(3),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,9554,9554,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null)], null),new cljs.core.PersistentVector(null, 5, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22x\x22,\x22x\x22,-555367584,null),new cljs.core.Symbol(null,\x22y\x22,\x22y\x22,-117328249,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22more\x22,\x22more\x22,-418290273,null)], null)),\x22Returns the x for which (k x), a number, is least.\\n\\n  If there are multiple such xs, the last one is returned.\x22,(cljs.core.truth_(cljs.core.min_key)?cljs.core.min_key.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.min_key;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61749 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61749,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61749;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.repeatedly;},new cljs.core.Symbol(\x22cljs.core\x22,\x22repeatedly\x22,\x22cljs.core/repeatedly\x22,-1346003388,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22repeatedly\x22,\x22repeatedly\x22,1199964457,null),\x22cljs/core.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5036,5036,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22n\x22,\x22n\x22,-2092305744,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),\x22Takes a function of no args, presumably with side effects, and\\n  returns an infinite (or length n if supplied) lazy sequence of calls\\n  to it\x22,(cljs.core.truth_(cljs.core.repeatedly)?cljs.core.repeatedly.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.repeatedly;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61760 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61760,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61760;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.set;},new cljs.core.Symbol(\x22cljs.core\x22,\x22set\x22,\x22cljs.core/set\x22,724680876,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22set\x22,\x22set\x22,1945134081,null),\x22cljs/core.cljs\x22,10,1,9436,9436,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a set of the distinct elements of coll.\x22,(cljs.core.truth_(cljs.core.set)?cljs.core.set.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.set;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61772 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61772,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61772;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.remove;},new cljs.core.Symbol(\x22cljs.core\x22,\x22remove\x22,\x22cljs.core/remove\x22,20102034,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22remove\x22,\x22remove\x22,1509103113,null),\x22cljs/core.cljs\x22,13,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,5200,5200,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a lazy sequence of the items in coll for which\\n  (pred item) returns logical false. pred must be free of side-effects.\\n  Returns a transducer when no collection is provided.\x22,(cljs.core.truth_(cljs.core.remove)?cljs.core.remove.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.remove;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61773 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61773,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61773;\n}\n})(),false);\n})(),sci.impl.namespaces.macrofy(sci.impl.namespaces.while_STAR_),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_core_ns;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.core.re_find;},new cljs.core.Symbol(\x22cljs.core\x22,\x22re-find\x22,\x22cljs.core/re-find\x22,745076500,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22re-find\x22,\x22re-find\x22,1143444147,null),\x22cljs/core.cljs\x22,14,1,10118,10118,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Returns the first regex match, if any, of s to re, using\\n  re.exec(s). Returns a vector, containing first the matching\\n  substring, then any capturing groups if the regular expression contains\\n  capturing groups.\x22,(cljs.core.truth_(cljs.core.re_find)?cljs.core.re_find.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.core.re_find;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__61786 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__61786,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__61786;\n}\n})(),false);\n})()]);\nsci.impl.namespaces.dir_fn \x3d (function sci$impl$namespaces$dir_fn(ctx,ns){\nvar current_ns \x3d sci.impl.vars.current_ns_name();\nvar the_ns \x3d sci.impl.namespaces.sci_the_ns(ctx,cljs.core.get.cljs$core$IFn$_invoke$arity$3(sci.impl.namespaces.sci_ns_aliases(ctx,current_ns),ns,ns));\nreturn cljs.core.sort.cljs$core$IFn$_invoke$arity$1(cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.first,sci.impl.namespaces.sci_ns_publics(ctx,the_ns)));\n});\nsci.impl.namespaces.dir \x3d (function sci$impl$namespaces$dir(_,___$1,nsname){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22doseq\x22,\x22cljs.core/doseq\x22,-169320766,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22v__61800__auto__\x22,\x22v__61800__auto__\x22,1967848498,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.repl\x22,\x22dir-fn\x22,\x22clojure.repl/dir-fn\x22,901908317,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,nsname,null,(1),null))))),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22println\x22,\x22cljs.core/println\x22,-331834442,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22v__61800__auto__\x22,\x22v__61800__auto__\x22,1967848498,null),null,(1),null))))),null,(1),null))], 0))));\n});\nsci.impl.namespaces.print_doc \x3d (function sci$impl$namespaces$print_doc(m){\nvar arglists \x3d new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m);\nvar doc \x3d new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m);\nvar macro_QMARK_ \x3d new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m);\nsci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22-------------------------\x22], 0));\n\nsci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[(function (){var temp__5753__auto__ \x3d new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar ns_STAR_ \x3d temp__5753__auto__;\nreturn [cljs.core.str.cljs$core$IFn$_invoke$arity$1(sci.impl.namespaces.sci_ns_name(ns_STAR_)),\x22/\x22].join(\x27\x27);\n} else {\nreturn null;\n}\n})(),cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m))].join(\x27\x27)], 0));\n\nif(cljs.core.truth_(arglists)){\nsci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([arglists], 0));\n} else {\n}\n\nif(cljs.core.truth_(macro_QMARK_)){\nsci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22Macro\x22], 0));\n} else {\n}\n\nif(cljs.core.truth_(doc)){\nreturn sci.impl.io.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([\x22 \x22,doc], 0));\n} else {\nreturn null;\n}\n});\nsci.impl.namespaces.doc \x3d (function sci$impl$namespaces$doc(_,___$1,sym){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22if-let\x22,\x22cljs.core/if-let\x22,1346583165,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22var__61830__auto__\x22,\x22var__61830__auto__\x22,-824792697,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22resolve\x22,\x22cljs.core/resolve\x22,1796776582,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,sym,null,(1),null))))),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22when\x22,\x22cljs.core/when\x22,120293186,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22var?\x22,\x22cljs.core/var?\x22,1711182854,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22var__61830__auto__\x22,\x22var__61830__auto__\x22,-824792697,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.repl\x22,\x22print-doc\x22,\x22clojure.repl/print-doc\x22,-375546711,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22meta\x22,\x22cljs.core/meta\x22,-748218346,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22var__61830__auto__\x22,\x22var__61830__auto__\x22,-824792697,null),null,(1),null))))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22if-let\x22,\x22cljs.core/if-let\x22,1346583165,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22ns__61831__auto__\x22,\x22ns__61831__auto__\x22,599429812,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22find-ns\x22,\x22cljs.core/find-ns\x22,-486459417,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,sym,null,(1),null))))),null,(1),null))))),null,(1),null)))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.repl\x22,\x22print-doc\x22,\x22clojure.repl/print-doc\x22,-375546711,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22assoc\x22,\x22cljs.core/assoc\x22,322326297,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22meta\x22,\x22cljs.core/meta\x22,-748218346,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22ns__61831__auto__\x22,\x22ns__61831__auto__\x22,599429812,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22ns-name\x22,\x22cljs.core/ns-name\x22,171430027,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22ns__61831__auto__\x22,\x22ns__61831__auto__\x22,599429812,null),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))))),null,(1),null))], 0)))),null,(1),null))], 0))));\n});\n/**\n * Prints documentation for any var whose documentation or name\n *   contains a match for re-string-or-pattern\n */\nsci.impl.namespaces.find_doc \x3d (function sci$impl$namespaces$find_doc(ctx,re_string_or_pattern){\nvar re \x3d cljs.core.re_pattern(re_string_or_pattern);\nvar ms \x3d cljs.core.concat.cljs$core$IFn$_invoke$arity$2(cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (p1__61865_SHARP_){\nreturn cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.meta,cljs.core.vals(sci.impl.namespaces.sci_ns_interns(ctx,p1__61865_SHARP_))));\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.namespaces.sci_all_ns(ctx)], 0)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__61866_SHARP_){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.meta(p1__61866_SHARP_),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),sci.impl.namespaces.sci_ns_name(p1__61866_SHARP_));\n}),sci.impl.namespaces.sci_all_ns(ctx)));\nvar seq__61867 \x3d cljs.core.seq(ms);\nvar chunk__61869 \x3d null;\nvar count__61870 \x3d (0);\nvar i__61871 \x3d (0);\nwhile(true){\nif((i__61871 \x3c count__61870)){\nvar m \x3d chunk__61869.cljs$core$IIndexed$_nth$arity$2(null,i__61871);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(and__4149__auto__)){\nvar or__4160__auto__ \x3d cljs.core.re_find(re,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.re_find(re,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m)));\n}\n} else {\nreturn and__4149__auto__;\n}\n})())){\nsci.impl.namespaces.print_doc(m);\n\n\nvar G__62912 \x3d seq__61867;\nvar G__62913 \x3d chunk__61869;\nvar G__62914 \x3d count__61870;\nvar G__62915 \x3d (i__61871 + (1));\nseq__61867 \x3d G__62912;\nchunk__61869 \x3d G__62913;\ncount__61870 \x3d G__62914;\ni__61871 \x3d G__62915;\ncontinue;\n} else {\nvar G__62916 \x3d seq__61867;\nvar G__62917 \x3d chunk__61869;\nvar G__62918 \x3d count__61870;\nvar G__62919 \x3d (i__61871 + (1));\nseq__61867 \x3d G__62916;\nchunk__61869 \x3d G__62917;\ncount__61870 \x3d G__62918;\ni__61871 \x3d G__62919;\ncontinue;\n}\n} else {\nvar temp__5753__auto__ \x3d cljs.core.seq(seq__61867);\nif(temp__5753__auto__){\nvar seq__61867__$1 \x3d temp__5753__auto__;\nif(cljs.core.chunked_seq_QMARK_(seq__61867__$1)){\nvar c__4591__auto__ \x3d cljs.core.chunk_first(seq__61867__$1);\nvar G__62920 \x3d cljs.core.chunk_rest(seq__61867__$1);\nvar G__62921 \x3d c__4591__auto__;\nvar G__62922 \x3d cljs.core.count(c__4591__auto__);\nvar G__62923 \x3d (0);\nseq__61867 \x3d G__62920;\nchunk__61869 \x3d G__62921;\ncount__61870 \x3d G__62922;\ni__61871 \x3d G__62923;\ncontinue;\n} else {\nvar m \x3d cljs.core.first(seq__61867__$1);\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m);\nif(cljs.core.truth_(and__4149__auto__)){\nvar or__4160__auto__ \x3d cljs.core.re_find(re,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.re_find(re,cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m)));\n}\n} else {\nreturn and__4149__auto__;\n}\n})())){\nsci.impl.namespaces.print_doc(m);\n\n\nvar G__62924 \x3d cljs.core.next(seq__61867__$1);\nvar G__62925 \x3d null;\nvar G__62926 \x3d (0);\nvar G__62927 \x3d (0);\nseq__61867 \x3d G__62924;\nchunk__61869 \x3d G__62925;\ncount__61870 \x3d G__62926;\ni__61871 \x3d G__62927;\ncontinue;\n} else {\nvar G__62928 \x3d cljs.core.next(seq__61867__$1);\nvar G__62929 \x3d null;\nvar G__62930 \x3d (0);\nvar G__62931 \x3d (0);\nseq__61867 \x3d G__62928;\nchunk__61869 \x3d G__62929;\ncount__61870 \x3d G__62930;\ni__61871 \x3d G__62931;\ncontinue;\n}\n}\n} else {\nreturn null;\n}\n}\nbreak;\n}\n});\n/**\n * Given a regular expression or stringable thing, return a seq of all\n *   public definitions in all currently-loaded namespaces that match the\n *   str-or-pattern.\n */\nsci.impl.namespaces.apropos \x3d (function sci$impl$namespaces$apropos(ctx,str_or_pattern){\nvar matches_QMARK_ \x3d (((str_or_pattern instanceof RegExp))?(function (p1__61910_SHARP_){\nreturn cljs.core.re_find(str_or_pattern,cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__61910_SHARP_));\n}):(function (p1__61911_SHARP_){\nreturn clojure.string.includes_QMARK_(cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__61911_SHARP_),cljs.core.str.cljs$core$IFn$_invoke$arity$1(str_or_pattern));\n}));\nreturn cljs.core.sort.cljs$core$IFn$_invoke$arity$1(cljs.core.mapcat.cljs$core$IFn$_invoke$arity$variadic((function (ns){\nvar ns_name \x3d cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns);\nreturn cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__61912_SHARP_){\nreturn cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(ns_name,cljs.core.str.cljs$core$IFn$_invoke$arity$1(p1__61912_SHARP_));\n}),cljs.core.filter.cljs$core$IFn$_invoke$arity$2(matches_QMARK_,cljs.core.keys(sci.impl.namespaces.sci_ns_publics(ctx,ns))));\n}),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.namespaces.sci_all_ns(ctx)], 0)));\n});\n/**\n * Returns a string of the source code for the given symbol, if it can\n *   find it.  This requires that the symbol resolve to a Var defined in\n *   a namespace for which the .clj is in the classpath.  Returns nil if\n *   it can\x27t find the source.  For most REPL usage, \x27source\x27 is more\n *   convenient.\n * \n *   Example: (source-fn \x27filter)\n */\nsci.impl.namespaces.source_fn \x3d (function sci$impl$namespaces$source_fn(ctx,x){\nvar temp__5753__auto__ \x3d sci.impl.namespaces.sci_resolve.cljs$core$IFn$_invoke$arity$2(ctx,x);\nif(cljs.core.truth_(temp__5753__auto__)){\nvar v \x3d temp__5753__auto__;\nvar map__61933 \x3d cljs.core.meta(v);\nvar map__61933__$1 \x3d cljs.core.__destructure_map(map__61933);\nvar line \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61933__$1,new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235));\nvar ns \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__61933__$1,new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760));\nif(cljs.core.truth_((function (){var and__4149__auto__ \x3d line;\nif(cljs.core.truth_(and__4149__auto__)){\nreturn ns;\n} else {\nreturn and__4149__auto__;\n}\n})())){\nvar temp__5753__auto____$1 \x3d (function (){var temp__5753__auto____$1 \x3d new cljs.core.Keyword(null,\x22load-fn\x22,\x22load-fn\x22,-2121144334).cljs$core$IFn$_invoke$arity$1(cljs.core.deref(new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx)));\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar load_fn \x3d temp__5753__auto____$1;\nreturn new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539).cljs$core$IFn$_invoke$arity$1((function (){var G__61934 \x3d new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22namespace\x22,\x22namespace\x22,-377510372),sci.impl.namespaces.sci_ns_name(ns)], null);\nreturn (load_fn.cljs$core$IFn$_invoke$arity$1 ? load_fn.cljs$core$IFn$_invoke$arity$1(G__61934) : load_fn.call(null,G__61934));\n})());\n} else {\nreturn null;\n}\n})();\nif(cljs.core.truth_(temp__5753__auto____$1)){\nvar source \x3d temp__5753__auto____$1;\nvar lines \x3d clojure.string.split.cljs$core$IFn$_invoke$arity$2(source,/\\n/);\nvar line__$1 \x3d (line - (1));\nvar start \x3d clojure.string.join.cljs$core$IFn$_invoke$arity$2(\x22\\n\x22,cljs.core.drop.cljs$core$IFn$_invoke$arity$2(line__$1,lines));\nvar reader \x3d sci.impl.read.source_logging_reader(start);\nvar res \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3(ctx,reader,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539),true], null));\nreturn new cljs.core.Keyword(null,\x22source\x22,\x22source\x22,-433931539).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(res));\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n} else {\nreturn null;\n}\n});\n/**\n * Prints the source code for the given symbol, if it can find it.\n *   This requires that the symbol resolve to a Var defined in a\n *   namespace for which the .clj is in the classpath.\n * \n *   Example: (source filter)\n */\nsci.impl.namespaces.source \x3d (function sci$impl$namespaces$source(_,___$1,n){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22println\x22,\x22cljs.core/println\x22,-331834442,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22or\x22,\x22cljs.core/or\x22,1201033885,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22clojure.repl\x22,\x22source-fn\x22,\x22clojure.repl/source-fn\x22,1877923323,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22quote\x22,\x22quote\x22,1377916282,null),null,(1),null)),(new cljs.core.List(null,n,null,(1),null))))),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,\x22Source not found\x22,null,(1),null))))),null,(1),null))], 0)))),null,(1),null)))));\n});\nsci.impl.namespaces.clojure_repl \x3d cljs.core.PersistentHashMap.fromArrays([new cljs.core.Symbol(null,\x22find-doc\x22,\x22find-doc\x22,-1096800949,null),new cljs.core.Symbol(null,\x22dir\x22,\x22dir\x22,-919681108,null),new cljs.core.Symbol(null,\x22dir-fn\x22,\x22dir-fn\x22,187684626,null),new cljs.core.Symbol(null,\x22source-fn\x22,\x22source-fn\x22,-1114937984,null),new cljs.core.Symbol(null,\x22source\x22,\x22source\x22,1206599988,null),new cljs.core.Symbol(null,\x22doc\x22,\x22doc\x22,-741138878,null),new cljs.core.Symbol(null,\x22print-doc\x22,\x22print-doc\x22,528043232,null),new cljs.core.Symbol(null,\x22apropos\x22,\x22apropos\x22,-1511857537,null),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962)],[cljs.core.with_meta(sci.impl.namespaces.find_doc,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.namespaces.macrofy(sci.impl.namespaces.dir),cljs.core.with_meta(sci.impl.namespaces.dir_fn,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),cljs.core.with_meta(sci.impl.namespaces.source_fn,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.namespaces.macrofy(sci.impl.namespaces.source),sci.impl.namespaces.macrofy(sci.impl.namespaces.doc),cljs.core.with_meta(sci.impl.namespaces.print_doc,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22private\x22,\x22private\x22,-558947994),true], null)),cljs.core.with_meta(sci.impl.namespaces.apropos,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx], null)),sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.repl\x22,\x22clojure.repl\x22,570897595,null),null)]);\nsci.impl.namespaces.apply_template \x3d (function sci$impl$namespaces$apply_template(argv,expr,values){\nif(cljs.core.vector_QMARK_(argv)){\n} else {\nthrow (new Error(\x22Assert failed: (vector? argv)\x22));\n}\n\nif(cljs.core.every_QMARK_(cljs.core.symbol_QMARK_,argv)){\n} else {\nthrow (new Error(\x22Assert failed: (every? symbol? argv)\x22));\n}\n\nreturn clojure.walk.postwalk_replace(cljs.core.zipmap(argv,values),expr);\n});\nsci.impl.namespaces.do_template \x3d (function sci$impl$namespaces$do_template(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62932 \x3d arguments.length;\nvar i__4772__auto___62933 \x3d (0);\nwhile(true){\nif((i__4772__auto___62933 \x3c len__4771__auto___62932)){\nargs__4777__auto__.push((arguments[i__4772__auto___62933]));\n\nvar G__62934 \x3d (i__4772__auto___62933 + (1));\ni__4772__auto___62933 \x3d G__62934;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((4) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((4)),(0),null)):null);\nreturn sci.impl.namespaces.do_template.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)]),argseq__4778__auto__);\n});\n\n(sci.impl.namespaces.do_template.cljs$core$IFn$_invoke$arity$variadic \x3d (function (_,___$1,argv,expr,values){\nvar c \x3d cljs.core.count(argv);\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),null,(1),null)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (a){\nreturn sci.impl.namespaces.apply_template(argv,expr,a);\n}),cljs.core.partition.cljs$core$IFn$_invoke$arity$2(c,values)))));\n}));\n\n(sci.impl.namespaces.do_template.cljs$lang$maxFixedArity \x3d (4));\n\n/** @this {Function} */\n(sci.impl.namespaces.do_template.cljs$lang$applyTo \x3d (function (seq61964){\nvar G__61965 \x3d cljs.core.first(seq61964);\nvar seq61964__$1 \x3d cljs.core.next(seq61964);\nvar G__61966 \x3d cljs.core.first(seq61964__$1);\nvar seq61964__$2 \x3d cljs.core.next(seq61964__$1);\nvar G__61967 \x3d cljs.core.first(seq61964__$2);\nvar seq61964__$3 \x3d cljs.core.next(seq61964__$2);\nvar G__61968 \x3d cljs.core.first(seq61964__$3);\nvar seq61964__$4 \x3d cljs.core.next(seq61964__$3);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__61965,G__61966,G__61967,G__61968,seq61964__$4);\n}));\n\nsci.impl.namespaces.clojure_template \x3d new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.template\x22,\x22clojure.template\x22,-1162325089,null),null),new cljs.core.Symbol(null,\x22apply-template\x22,\x22apply-template\x22,1809601838,null),sci.impl.namespaces.apply_template,new cljs.core.Symbol(null,\x22do-template\x22,\x22do-template\x22,-1578627476,null),sci.impl.namespaces.macrofy(sci.impl.namespaces.do_template)], null);\nsci.impl.namespaces.clojure_string_namespace \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),null);\nsci.impl.namespaces.clojure_set_namespace \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),null);\nsci.impl.namespaces.clojure_walk_namespace \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),null);\nsci.impl.namespaces.clojure_edn_namespace \x3d sci.impl.vars.__GT_SciNamespace(new cljs.core.Symbol(null,\x22clojure.edn\x22,\x22clojure.edn\x22,-302325352,null),null);\nsci.impl.namespaces.macroexpand_all \x3d sci.impl.vars.__GT_SciVar((function (ctx,form){\nreturn clojure.walk.prewalk((function (x){\nif(cljs.core.seq_QMARK_(x)){\nvar fexpr__62007 \x3d cljs.core.deref(sci.impl.utils.macroexpand_STAR_);\nreturn (fexpr__62007.cljs$core$IFn$_invoke$arity$2 ? fexpr__62007.cljs$core$IFn$_invoke$arity$2(ctx,x) : fexpr__62007.call(null,ctx,x));\n} else {\nreturn x;\n}\n}),form);\n}),new cljs.core.Symbol(null,\x22macroexpand-all\x22,\x22macroexpand-all\x22,966103926,null),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),sci.impl.namespaces.clojure_walk_namespace,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Symbol(null,\x22macroexpand-all\x22,\x22macroexpand-all\x22,966103926,null),new cljs.core.Keyword(\x22sci.impl\x22,\x22op\x22,\x22sci.impl/op\x22,950953978),sci.impl.utils.needs_ctx,new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),\x22Recursively performs all possible macroexpansions in form.\x22], null),false);\nsci.impl.namespaces.clojure_walk_ns \x3d cljs.core.PersistentHashMap.fromArrays([new cljs.core.Symbol(null,\x22keywordize-keys\x22,\x22keywordize-keys\x22,-1343651517,null),new cljs.core.Symbol(null,\x22postwalk\x22,\x22postwalk\x22,967039904,null),new cljs.core.Symbol(null,\x22postwalk-replace\x22,\x22postwalk-replace\x22,77744733,null),new cljs.core.Symbol(null,\x22walk\x22,\x22walk\x22,1673453164,null),new cljs.core.Symbol(null,\x22prewalk\x22,\x22prewalk\x22,1337993264,null),new cljs.core.Symbol(null,\x22prewalk-replace\x22,\x22prewalk-replace\x22,2117002030,null),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),new cljs.core.Symbol(null,\x22stringify-keys\x22,\x22stringify-keys\x22,1735215919,null),new cljs.core.Symbol(null,\x22macroexpand-all\x22,\x22macroexpand-all\x22,966103926,null)],[(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.keywordize_keys;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22keywordize-keys\x22,\x22clojure.walk/keywordize-keys\x22,-1055520580,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22keywordize-keys\x22,\x22keywordize-keys\x22,-1343651517,null),\x22clojure/walk.cljs\x22,22,1,68,68,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null)], null)),\x22Recursively transforms all map keys from strings to keywords.\x22,(cljs.core.truth_(clojure.walk.keywordize_keys)?clojure.walk.keywordize_keys.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.keywordize_keys;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62020 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62020,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62020;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.postwalk;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22postwalk\x22,\x22clojure.walk/postwalk\x22,390418997,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22postwalk\x22,\x22postwalk\x22,967039904,null),\x22clojure/walk.cljs\x22,15,1,54,54,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null)),\x22Performs a depth-first, post-order traversal of form.  Calls f on\\n  each sub-form, uses f\x27s return value in place of the original.\\n  Recognizes all Clojure data structures. Consumes seqs as with doall.\x22,(cljs.core.truth_(clojure.walk.postwalk)?clojure.walk.postwalk.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.postwalk;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62021 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62021,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62021;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.postwalk_replace;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22postwalk-replace\x22,\x22clojure.walk/postwalk-replace\x22,-691552050,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22postwalk-replace\x22,\x22postwalk-replace\x22,77744733,null),\x22clojure/walk.cljs\x22,23,1,92,92,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null)),\x22Recursively transforms form by replacing keys in smap with their\\n  values.  Like clojure/replace but works on any data structure.  Does\\n  replacement at the leaves of the tree first.\x22,(cljs.core.truth_(clojure.walk.postwalk_replace)?clojure.walk.postwalk_replace.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.postwalk_replace;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62035 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62035,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62035;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.walk;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22walk\x22,\x22clojure.walk/walk\x22,-1248308991,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22walk\x22,\x22walk\x22,1673453164,null),\x22clojure/walk.cljs\x22,11,1,37,37,cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22inner\x22,\x22inner\x22,257360312,null),new cljs.core.Symbol(null,\x22outer\x22,\x22outer\x22,1265345571,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null)),\x22Traverses form, an arbitrary data structure.  inner and outer are\\n  functions.  Applies inner to each element of form, building up a\\n  data structure of the same type, then applies outer to the result.\\n  Recognizes all Clojure data structures. Consumes seqs as with doall.\x22,(cljs.core.truth_(clojure.walk.walk)?clojure.walk.walk.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.walk;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62036 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62036,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62036;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.prewalk;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22prewalk\x22,\x22clojure.walk/prewalk\x22,2041225925,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22prewalk\x22,\x22prewalk\x22,1337993264,null),\x22clojure/walk.cljs\x22,14,1,62,62,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null)),\x22Like postwalk, but does pre-order traversal.\x22,(cljs.core.truth_(clojure.walk.prewalk)?clojure.walk.prewalk.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.prewalk;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62051 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62051,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62051;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.prewalk_replace;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22prewalk-replace\x22,\x22clojure.walk/prewalk-replace\x22,-1875809699,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22prewalk-replace\x22,\x22prewalk-replace\x22,2117002030,null),\x22clojure/walk.cljs\x22,22,1,84,84,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22smap\x22,\x22smap\x22,-2041991975,null),new cljs.core.Symbol(null,\x22form\x22,\x22form\x22,16469056,null)], null)),\x22Recursively transforms form by replacing keys in smap with their\\n  values.  Like clojure/replace but works on any data structure.  Does\\n  replacement at the root of the tree first.\x22,(cljs.core.truth_(clojure.walk.prewalk_replace)?clojure.walk.prewalk_replace.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.prewalk_replace;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62067 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62067,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62067;\n}\n})(),false);\n})(),sci.impl.namespaces.clojure_walk_namespace,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_walk_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.walk.stringify_keys;},new cljs.core.Symbol(\x22clojure.walk\x22,\x22stringify-keys\x22,\x22clojure.walk/stringify-keys\x22,826865042,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22added\x22,\x22added\x22,2057651688),new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[\x221.1\x22,new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),new cljs.core.Symbol(null,\x22stringify-keys\x22,\x22stringify-keys\x22,1735215919,null),\x22clojure/walk.cljs\x22,21,1,76,76,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null)], null)),\x22Recursively transforms all map keys from keywords to strings.\x22,(cljs.core.truth_(clojure.walk.stringify_keys)?clojure.walk.stringify_keys.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.walk.stringify_keys;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62068 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62068,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62068;\n}\n})(),false);\n})(),sci.impl.namespaces.macroexpand_all]);\nsci.impl.namespaces.namespaces \x3d new cljs.core.PersistentArrayMap(null, 7, [new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),sci.impl.namespaces.clojure_core,new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Symbol(null,\x22split\x22,\x22split\x22,1041096409,null),new cljs.core.Symbol(null,\x22index-of\x22,\x22index-of\x22,1275975485,null),new cljs.core.Symbol(null,\x22trimr\x22,\x22trimr\x22,-1739157155,null),new cljs.core.Symbol(null,\x22upper-case\x22,\x22upper-case\x22,1427515769,null),new cljs.core.Symbol(null,\x22lower-case\x22,\x22lower-case\x22,1428172944,null),new cljs.core.Symbol(null,\x22reverse\x22,\x22reverse\x22,752076261,null),new cljs.core.Symbol(null,\x22ends-with?\x22,\x22ends-with?\x22,-346570208,null),new cljs.core.Symbol(null,\x22split-lines\x22,\x22split-lines\x22,777513935,null),new cljs.core.Symbol(null,\x22last-index-of\x22,\x22last-index-of\x22,215608200,null),new cljs.core.Symbol(null,\x22trim-newline\x22,\x22trim-newline\x22,656815794,null),new cljs.core.Symbol(null,\x22blank?\x22,\x22blank?\x22,1891979743,null),new cljs.core.Symbol(null,\x22replace\x22,\x22replace\x22,853943757,null),new cljs.core.Symbol(null,\x22join\x22,\x22join\x22,881669637,null),new cljs.core.Symbol(null,\x22trim\x22,\x22trim\x22,-1880116002,null),new cljs.core.Symbol(null,\x22starts-with?\x22,\x22starts-with?\x22,1014173927,null),new cljs.core.Symbol(null,\x22triml\x22,\x22triml\x22,-286546306,null),new cljs.core.Symbol(null,\x22escape\x22,\x22escape\x22,648929575,null),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),new cljs.core.Symbol(null,\x22includes?\x22,\x22includes?\x22,-2049283381,null),new cljs.core.Symbol(null,\x22capitalize\x22,\x22capitalize\x22,-2143275164,null),new cljs.core.Symbol(null,\x22replace-first\x22,\x22replace-first\x22,-943534331,null)],[(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.split;},new cljs.core.Symbol(\x22clojure.string\x22,\x22split\x22,\x22clojure.string/split\x22,651388004,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22split\x22,\x22split\x22,1041096409,null),\x22clojure/string.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22limit\x22,\x22limit\x22,284709164,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22limit\x22,\x22limit\x22,284709164,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,167,167,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22re\x22,\x22re\x22,1869207729,null),new cljs.core.Symbol(null,\x22limit\x22,\x22limit\x22,284709164,null)], null)),\x22Splits string on a regular expression. Optional argument limit is\\n  the maximum number of splits. Not lazy. Returns vector of the splits.\x22,(cljs.core.truth_(clojure.string.split)?clojure.string.split.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.split;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62085 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62085,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62085;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.index_of;},new cljs.core.Symbol(\x22clojure.string\x22,\x22index-of\x22,\x22clojure.string/index-of\x22,1428561254,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22index-of\x22,\x22index-of\x22,1275975485,null),\x22clojure/string.cljs\x22,15,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22from-index\x22,\x22from-index\x22,1882766240,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22from-index\x22,\x22from-index\x22,1882766240,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,248,248,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22from-index\x22,\x22from-index\x22,1882766240,null)], null)),\x22Return index of value (string or char) in s, optionally searching\\n  forward from from-index or nil if not found.\x22,(cljs.core.truth_(clojure.string.index_of)?clojure.string.index_of.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.index_of;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62103 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62103,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62103;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.trimr;},new cljs.core.Symbol(\x22clojure.string\x22,\x22trimr\x22,\x22clojure.string/trimr\x22,2003851954,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22trimr\x22,\x22trimr\x22,-1739157155,null),\x22clojure/string.cljs\x22,20,1,206,206,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Removes whitespace from the right side of string.\x22,(cljs.core.truth_(clojure.string.trimr)?clojure.string.trimr.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.trimr;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62122 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62122,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62122;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.upper_case;},new cljs.core.Symbol(\x22clojure.string\x22,\x22upper-case\x22,\x22clojure.string/upper-case\x22,2084082434,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22upper-case\x22,\x22upper-case\x22,1427515769,null),\x22clojure/string.cljs\x22,25,1,119,119,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Converts string to all upper-case.\x22,(cljs.core.truth_(clojure.string.upper_case)?clojure.string.upper_case.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.upper_case;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62123 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62123,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62123;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.lower_case;},new cljs.core.Symbol(\x22clojure.string\x22,\x22lower-case\x22,\x22clojure.string/lower-case\x22,1816618551,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22lower-case\x22,\x22lower-case\x22,1428172944,null),\x22clojure/string.cljs\x22,25,1,124,124,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Converts string to all lower-case.\x22,(cljs.core.truth_(clojure.string.lower_case)?clojure.string.lower_case.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.lower_case;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62143 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62143,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62143;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.reverse;},new cljs.core.Symbol(\x22clojure.string\x22,\x22reverse\x22,\x22clojure.string/reverse\x22,872943162,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22reverse\x22,\x22reverse\x22,752076261,null),\x22clojure/string.cljs\x22,22,1,21,21,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Returns s with its characters reversed.\x22,(cljs.core.truth_(clojure.string.reverse)?clojure.string.reverse.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.reverse;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62144 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62144,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62144;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.ends_with_QMARK_;},new cljs.core.Symbol(\x22clojure.string\x22,\x22ends-with?\x22,\x22clojure.string/ends-with?\x22,-745964149,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22ends-with?\x22,\x22ends-with?\x22,-346570208,null),\x22clojure/string.cljs\x22,26,1,281,281,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22substr\x22,\x22substr\x22,-2116301839,null)], null)),\x22True if s ends with substr.\x22,((clojure.string.ends_with_QMARK_)?clojure.string.ends_with_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.ends_with_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62165 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62165,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62165;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.split_lines;},new cljs.core.Symbol(\x22clojure.string\x22,\x22split-lines\x22,\x22clojure.string/split-lines\x22,125642090,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22split-lines\x22,\x22split-lines\x22,777513935,null),\x22clojure/string.cljs\x22,18,1,191,191,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Splits s on \\\\n or \\\\r\\\\n.\x22,(cljs.core.truth_(clojure.string.split_lines)?clojure.string.split_lines.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.split_lines;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62166 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62166,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62166;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.last_index_of;},new cljs.core.Symbol(\x22clojure.string\x22,\x22last-index-of\x22,\x22clojure.string/last-index-of\x22,369054165,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22last-index-of\x22,\x22last-index-of\x22,215608200,null),\x22clojure/string.cljs\x22,20,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22from-index\x22,\x22from-index\x22,1882766240,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22from-index\x22,\x22from-index\x22,1882766240,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,262,262,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22value\x22,\x22value\x22,1946509744,null),new cljs.core.Symbol(null,\x22from-index\x22,\x22from-index\x22,1882766240,null)], null)),\x22Return last index of value (string or char) in s, optionally\\n  searching backward from from-index or nil if not found.\x22,(cljs.core.truth_(clojure.string.last_index_of)?clojure.string.last_index_of.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.last_index_of;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62167 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62167,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62167;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.trim_newline;},new cljs.core.Symbol(\x22clojure.string\x22,\x22trim-newline\x22,\x22clojure.string/trim-newline\x22,475888463,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22trim-newline\x22,\x22trim-newline\x22,656815794,null),\x22clojure/string.cljs\x22,27,1,211,211,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Removes all trailing newline \\\\n or return \\\\r characters from\\n  string.  Similar to Perl\x27s chomp.\x22,(cljs.core.truth_(clojure.string.trim_newline)?clojure.string.trim_newline.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.trim_newline;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62169 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62169,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62169;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.blank_QMARK_;},new cljs.core.Symbol(\x22clojure.string\x22,\x22blank?\x22,\x22clojure.string/blank?\x22,1772874244,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22blank?\x22,\x22blank?\x22,1891979743,null),\x22clojure/string.cljs\x22,22,1,224,224,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22True is s is nil, empty, or contains only whitespace.\x22,((clojure.string.blank_QMARK_)?clojure.string.blank_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.blank_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62173 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62173,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62173;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.replace;},new cljs.core.Symbol(\x22clojure.string\x22,\x22replace\x22,\x22clojure.string/replace\x22,465523638,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22replace\x22,\x22replace\x22,853943757,null),\x22clojure/string.cljs\x22,22,1,44,44,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22match\x22,\x22match\x22,-1434376219,null),new cljs.core.Symbol(null,\x22replacement\x22,\x22replacement\x22,-195707312,null)], null)),\x22Replaces all instance of match with replacement in s.\\n\\n   match/replacement can be:\\n\\n   string / string\\n   pattern / (string or function of match).\\n\\n   See also replace-first.\\n\\n   The replacement is literal (i.e. none of its characters are treated\\n   specially) for all cases above except pattern / string.\\n\\n   For pattern / string, $1, $2, etc. in the replacement string are\\n   substituted with the string that matched the corresponding\\n   parenthesized group in the pattern.\\n\\n   Example:\\n   (clojure.string/replace \\\x22Almost Pig Latin\\\x22 #\\\x22\\\\b(\\\\w)(\\\\w+)\\\\b\\\x22 \\\x22$2$1ay\\\x22)\\n   -\x3e \\\x22lmostAay igPay atinLay\\\x22\x22,(cljs.core.truth_(clojure.string.replace)?clojure.string.replace.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.replace;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62178 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62178,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62178;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.join;},new cljs.core.Symbol(\x22clojure.string\x22,\x22join\x22,\x22clojure.string/join\x22,-539723360,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22join\x22,\x22join\x22,881669637,null),\x22clojure/string.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22separator\x22,\x22separator\x22,11782402,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22separator\x22,\x22separator\x22,11782402,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,100,100,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22separator\x22,\x22separator\x22,11782402,null),new cljs.core.Symbol(null,\x22coll\x22,\x22coll\x22,-1006698606,null)], null)),\x22Returns a string of all elements in coll, as returned by (seq coll),\\n  separated by an optional separator.\x22,(cljs.core.truth_(clojure.string.join)?clojure.string.join.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.join;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62187 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62187,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62187;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.trim;},new cljs.core.Symbol(\x22clojure.string\x22,\x22trim\x22,\x22clojure.string/trim\x22,-1498124613,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22trim\x22,\x22trim\x22,-1880116002,null),\x22clojure/string.cljs\x22,19,1,196,196,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Removes whitespace from both ends of string.\x22,(cljs.core.truth_(clojure.string.trim)?clojure.string.trim.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.trim;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62194 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62194,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62194;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.starts_with_QMARK_;},new cljs.core.Symbol(\x22clojure.string\x22,\x22starts-with?\x22,\x22clojure.string/starts-with?\x22,656256322,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22starts-with?\x22,\x22starts-with?\x22,1014173927,null),\x22clojure/string.cljs\x22,28,1,276,276,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22substr\x22,\x22substr\x22,-2116301839,null)], null)),\x22True if s starts with substr.\x22,((clojure.string.starts_with_QMARK_)?clojure.string.starts_with_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.starts_with_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62202 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62202,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62202;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.triml;},new cljs.core.Symbol(\x22clojure.string\x22,\x22triml\x22,\x22clojure.string/triml\x22,-176087643,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22triml\x22,\x22triml\x22,-286546306,null),\x22clojure/string.cljs\x22,20,1,201,201,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Removes whitespace from the left side of string.\x22,(cljs.core.truth_(clojure.string.triml)?clojure.string.triml.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.triml;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62211 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62211,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62211;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.escape;},new cljs.core.Symbol(\x22clojure.string\x22,\x22escape\x22,\x22clojure.string/escape\x22,507665272,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22escape\x22,\x22escape\x22,648929575,null),\x22clojure/string.cljs\x22,21,1,229,229,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22cmap\x22,\x22cmap\x22,1947829886,null)], null)),\x22Return a new string, using cmap to escape each character ch\\n   from s as follows:\\n\\n   If (cmap ch) is nil, append ch to the new string.\\n   If (cmap ch) is non-nil, append (str (cmap ch)) instead.\x22,(cljs.core.truth_(clojure.string.escape)?clojure.string.escape.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.escape;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62221 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62221,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62221;\n}\n})(),false);\n})(),sci.impl.namespaces.clojure_string_namespace,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.includes_QMARK_;},new cljs.core.Symbol(\x22clojure.string\x22,\x22includes?\x22,\x22clojure.string/includes?\x22,-1842146260,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22includes?\x22,\x22includes?\x22,-2049283381,null),\x22clojure/string.cljs\x22,25,1,286,286,new cljs.core.Symbol(null,\x22boolean\x22,\x22boolean\x22,-278886877,null),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22substr\x22,\x22substr\x22,-2116301839,null)], null)),\x22True if s includes substr.\x22,((clojure.string.includes_QMARK_)?clojure.string.includes_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.includes_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62232 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62232,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62232;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.capitalize;},new cljs.core.Symbol(\x22clojure.string\x22,\x22capitalize\x22,\x22clojure.string/capitalize\x22,-1457954373,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22capitalize\x22,\x22capitalize\x22,-2143275164,null),\x22clojure/string.cljs\x22,25,1,129,129,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Converts first character of the string to upper-case, all other\\n  characters to lower-case.\x22,(cljs.core.truth_(clojure.string.capitalize)?clojure.string.capitalize.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.capitalize;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62233 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62233,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62233;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_string_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.string.replace_first;},new cljs.core.Symbol(\x22clojure.string\x22,\x22replace-first\x22,\x22clojure.string/replace-first\x22,-289687200,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22tag\x22,\x22tag\x22,-1290361223),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22replace-first\x22,\x22replace-first\x22,-943534331,null),\x22clojure/string.cljs\x22,28,1,76,76,new cljs.core.Symbol(null,\x22string\x22,\x22string\x22,-349010059,null),cljs.core.list(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null),new cljs.core.Symbol(null,\x22match\x22,\x22match\x22,-1434376219,null),new cljs.core.Symbol(null,\x22replacement\x22,\x22replacement\x22,-195707312,null)], null)),\x22Replaces the first instance of match with replacement in s.\\n\\n   match/replacement can be:\\n\\n   string / string\\n   pattern / (string or function of match).\\n\\n   See also replace.\\n\\n   The replacement is literal (i.e. none of its characters are treated\\n   specially) for all cases above except pattern / string.\\n\\n   For pattern / string, $1, $2, etc. in the replacement string are\\n   substituted with the string that matched the corresponding\\n   parenthesized group in the pattern.\\n\\n   Example:\\n   (clojure.string/replace-first \\\x22swap first two words\\\x22\\n                                 #\\\x22(\\\\w+)(\\\\s+)(\\\\w+)\\\x22 \\\x22$3$2$1\\\x22)\\n   -\x3e \\\x22first swap two words\\\x22\x22,(cljs.core.truth_(clojure.string.replace_first)?clojure.string.replace_first.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.string.replace_first;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62245 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62245,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62245;\n}\n})(),false);\n})()]),new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Symbol(null,\x22project\x22,\x22project\x22,-1530041190,null),new cljs.core.Symbol(null,\x22map-invert\x22,\x22map-invert\x22,1258886340,null),new cljs.core.Symbol(null,\x22select\x22,\x22select\x22,-1506602266,null),new cljs.core.Symbol(null,\x22superset?\x22,\x22superset?\x22,2074872204,null),new cljs.core.Symbol(null,\x22join\x22,\x22join\x22,881669637,null),new cljs.core.Symbol(null,\x22union\x22,\x22union\x22,-511498270,null),new cljs.core.Symbol(null,\x22rename\x22,\x22rename\x22,-1146278156,null),new cljs.core.Symbol(null,\x22subset?\x22,\x22subset?\x22,1551079215,null),new cljs.core.Symbol(null,\x22difference\x22,\x22difference\x22,-738334373,null),new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),new cljs.core.Symbol(null,\x22intersection\x22,\x22intersection\x22,-650544759,null),new cljs.core.Symbol(null,\x22index\x22,\x22index\x22,108845612,null),new cljs.core.Symbol(null,\x22rename-keys\x22,\x22rename-keys\x22,355340888,null)],[(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.project;},new cljs.core.Symbol(\x22clojure.set\x22,\x22project\x22,\x22clojure.set/project\x22,-829527518,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22project\x22,\x22project\x22,-1530041190,null),\x22clojure/set.cljs\x22,14,1,67,67,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),\x22Returns a rel of the elements of xrel with only the keys in ks\x22,(cljs.core.truth_(clojure.set.project)?clojure.set.project.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.project;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62258 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62258,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62258;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.map_invert;},new cljs.core.Symbol(\x22clojure.set\x22,\x22map-invert\x22,\x22clojure.set/map-invert\x22,1632506396,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22map-invert\x22,\x22map-invert\x22,1258886340,null),\x22clojure/set.cljs\x22,17,1,97,97,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22m\x22,\x22m\x22,-1021758608,null)], null)),\x22Returns the map with the vals mapped to the keys.\x22,(cljs.core.truth_(clojure.set.map_invert)?clojure.set.map_invert.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.map_invert;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62259 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62259,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62259;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.select;},new cljs.core.Symbol(\x22clojure.set\x22,\x22select\x22,\x22clojure.set/select\x22,-2081547970,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22select\x22,\x22select\x22,-1506602266,null),\x22clojure/set.cljs\x22,13,1,61,61,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22pred\x22,\x22pred\x22,-727012372,null),new cljs.core.Symbol(null,\x22xset\x22,\x22xset\x22,-371743149,null)], null)),\x22Returns a set of the elements for which pred is true\x22,(cljs.core.truth_(clojure.set.select)?clojure.set.select.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.select;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62273 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62273,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62273;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.superset_QMARK_;},new cljs.core.Symbol(\x22clojure.set\x22,\x22superset?\x22,\x22clojure.set/superset?\x22,22098740,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22superset?\x22,\x22superset?\x22,2074872204,null),\x22clojure/set.cljs\x22,16,1,137,137,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22set1\x22,\x22set1\x22,-1952562536,null),new cljs.core.Symbol(null,\x22set2\x22,\x22set2\x22,1231516531,null)], null)),\x22Is set1 a superset of set2?\x22,(cljs.core.truth_(clojure.set.superset_QMARK_)?clojure.set.superset_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.superset_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62288 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62288,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62288;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.join;},new cljs.core.Symbol(\x22clojure.set\x22,\x22join\x22,\x22clojure.set/join\x22,-621789763,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22join\x22,\x22join\x22,881669637,null),\x22clojure/set.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),3,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),3,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22yrel\x22,\x22yrel\x22,-1573821256,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22yrel\x22,\x22yrel\x22,-1573821256,null),new cljs.core.Symbol(null,\x22km\x22,\x22km\x22,-1276648257,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22yrel\x22,\x22yrel\x22,-1573821256,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22yrel\x22,\x22yrel\x22,-1573821256,null),new cljs.core.Symbol(null,\x22km\x22,\x22km\x22,-1276648257,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,101,101,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22yrel\x22,\x22yrel\x22,-1573821256,null)], null),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22yrel\x22,\x22yrel\x22,-1573821256,null),new cljs.core.Symbol(null,\x22km\x22,\x22km\x22,-1276648257,null)], null)),\x22When passed 2 rels, returns the rel corresponding to the natural\\n  join. When passed an additional keymap, joins on the corresponding\\n  keys.\x22,(cljs.core.truth_(clojure.set.join)?clojure.set.join.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.join;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62289 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62289,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62289;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.union;},new cljs.core.Symbol(\x22clojure.set\x22,\x22union\x22,\x22clojure.set/union\x22,-71291846,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22union\x22,\x22union\x22,-511498270,null),\x22clojure/set.cljs\x22,12,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22sets\x22,\x22sets\x22,2041487109,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null,null)], null),1,19,19,cljs.core.list(cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22sets\x22,\x22sets\x22,2041487109,null)], null)),\x22Return a set that is the union of the input sets\x22,(cljs.core.truth_(clojure.set.union)?clojure.set.union.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.union;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62305 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62305,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62305;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.rename;},new cljs.core.Symbol(\x22clojure.set\x22,\x22rename\x22,\x22clojure.set/rename\x22,-1779816356,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22rename\x22,\x22rename\x22,-1146278156,null),\x22clojure/set.cljs\x22,13,1,82,82,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22kmap\x22,\x22kmap\x22,-2108296910,null)], null)),\x22Returns a rel of the maps in xrel with the keys in kmap renamed to the vals in kmap\x22,(cljs.core.truth_(clojure.set.rename)?clojure.set.rename.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.rename;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62322 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62322,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62322;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.subset_QMARK_;},new cljs.core.Symbol(\x22clojure.set\x22,\x22subset?\x22,\x22clojure.set/subset?\x22,909155479,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22subset?\x22,\x22subset?\x22,1551079215,null),\x22clojure/set.cljs\x22,14,1,131,131,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22set1\x22,\x22set1\x22,-1952562536,null),new cljs.core.Symbol(null,\x22set2\x22,\x22set2\x22,1231516531,null)], null)),\x22Is set1 a subset of set2?\x22,(cljs.core.truth_(clojure.set.subset_QMARK_)?clojure.set.subset_QMARK_.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.subset_QMARK_;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62323 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62323,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62323;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.difference;},new cljs.core.Symbol(\x22clojure.set\x22,\x22difference\x22,\x22clojure.set/difference\x22,-1178931405,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22difference\x22,\x22difference\x22,-738334373,null),\x22clojure/set.cljs\x22,17,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22sets\x22,\x22sets\x22,2041487109,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,46,46,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22sets\x22,\x22sets\x22,2041487109,null)], null)),\x22Return a set that is the first set without elements of the remaining sets\x22,(cljs.core.truth_(clojure.set.difference)?clojure.set.difference.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.difference;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62341 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62341,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62341;\n}\n})(),false);\n})(),sci.impl.namespaces.clojure_set_namespace,(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.intersection;},new cljs.core.Symbol(\x22clojure.set\x22,\x22intersection\x22,\x22clojure.set/intersection\x22,-1478098847,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22intersection\x22,\x22intersection\x22,-650544759,null),\x22clojure/set.cljs\x22,19,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(2),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(2),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22sets\x22,\x22sets\x22,2041487109,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,31,31,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s1\x22,\x22s1\x22,338671490,null),new cljs.core.Symbol(null,\x22s2\x22,\x22s2\x22,614604262,null),new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22sets\x22,\x22sets\x22,2041487109,null)], null)),\x22Return a set that is the intersection of the input sets\x22,(cljs.core.truth_(clojure.set.intersection)?clojure.set.intersection.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.intersection;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62342 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62342,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62342;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.index;},new cljs.core.Symbol(\x22clojure.set\x22,\x22index\x22,\x22clojure.set/index\x22,1009901700,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22index\x22,\x22index\x22,108845612,null),\x22clojure/set.cljs\x22,12,1,87,87,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22xrel\x22,\x22xrel\x22,-735800081,null),new cljs.core.Symbol(null,\x22ks\x22,\x22ks\x22,-754231827,null)], null)),\x22Returns a map of the distinct values of ks in the xrel mapped to a\\n  set of the maps in xrel with the corresponding values of ks.\x22,(cljs.core.truth_(clojure.set.index)?clojure.set.index.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.index;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62361 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62361,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62361;\n}\n})(),false);\n})(),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_set_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return clojure.set.rename_keys;},new cljs.core.Symbol(\x22clojure.set\x22,\x22rename-keys\x22,\x22clojure.set/rename-keys\x22,996223920,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null),new cljs.core.Symbol(null,\x22rename-keys\x22,\x22rename-keys\x22,355340888,null),\x22clojure/set.cljs\x22,18,1,72,72,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22map\x22,\x22map\x22,-1282745308,null),new cljs.core.Symbol(null,\x22kmap\x22,\x22kmap\x22,-2108296910,null)], null)),\x22Returns the map with the keys in kmap renamed to the vals in kmap\x22,(cljs.core.truth_(clojure.set.rename_keys)?clojure.set.rename_keys.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d clojure.set.rename_keys;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62362 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62362,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62362;\n}\n})(),false);\n})()]),new cljs.core.Symbol(null,\x22clojure.walk\x22,\x22clojure.walk\x22,1625897340,null),sci.impl.namespaces.clojure_walk_ns,new cljs.core.Symbol(null,\x22clojure.template\x22,\x22clojure.template\x22,-1162325089,null),sci.impl.namespaces.clojure_template,new cljs.core.Symbol(null,\x22clojure.repl\x22,\x22clojure.repl\x22,570897595,null),sci.impl.namespaces.clojure_repl,new cljs.core.Symbol(null,\x22clojure.edn\x22,\x22clojure.edn\x22,-302325352,null),new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),sci.impl.namespaces.clojure_edn_namespace,new cljs.core.Symbol(null,\x22read\x22,\x22read\x22,-1514377108,null),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_edn_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.reader.read;},new cljs.core.Symbol(\x22cljs.reader\x22,\x22read\x22,\x22cljs.reader/read\x22,-1188148435,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.reader\x22,\x22cljs.reader\x22,1327473948,null),new cljs.core.Symbol(null,\x22read\x22,\x22read\x22,-1514377108,null),\x22cljs/reader.cljs\x22,11,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),4,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),4,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22eof\x22,\x22eof\x22,1151468290,null)], null),new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null),new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null),new cljs.core.Symbol(null,\x22eof-error?\x22,\x22eof-error?\x22,863128689,null),new cljs.core.Symbol(null,\x22eof\x22,\x22eof\x22,1151468290,null),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22eof\x22,\x22eof\x22,1151468290,null)], null),new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null),new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null),new cljs.core.Symbol(null,\x22eof-error?\x22,\x22eof-error?\x22,863128689,null),new cljs.core.Symbol(null,\x22eof\x22,\x22eof\x22,1151468290,null),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null,null)], null),1,142,142,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22keys\x22,\x22keys\x22,1068423698),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22eof\x22,\x22eof\x22,1151468290,null)], null),new cljs.core.Keyword(null,\x22as\x22,\x22as\x22,1148689641),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null),new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null)], null),new cljs.core.PersistentVector(null, 4, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22reader\x22,\x22reader\x22,1810192380,null),new cljs.core.Symbol(null,\x22eof-error?\x22,\x22eof-error?\x22,863128689,null),new cljs.core.Symbol(null,\x22eof\x22,\x22eof\x22,1151468290,null),new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null)], null)),\x22Reads the first object from an cljs.tools.reader.reader-types/IPushbackReader.\\n   Returns the object read. If EOF, throws if eof-error? is true otherwise returns eof.\\n   If no reader is provided, *in* will be used.\\n\\n   Reads data in the edn format (subset of Clojure data):\\n   http://edn-format.org\\n\\n   cljs.tools.reader.edn/read doesn\x27t depend on dynamic Vars, all configuration\\n   is done by passing an opt map.\\n\\n   opts is a map that can include the following keys:\\n   :eof - value to return on end-of-file. When not supplied, eof throws an exception.\\n   :readers  - a map of tag symbols to data-reader functions to be considered before default-data-readers.\\n              When not supplied, only the default-data-readers will be used.\\n   :default - A function of two args, that will, if present and no reader is found for a tag,\\n              be called with the tag and the value.\x22,(cljs.core.truth_(cljs.reader.read)?cljs.reader.read.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.reader.read;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62382 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62382,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62382;\n}\n})(),false);\n})(),new cljs.core.Symbol(null,\x22read-string\x22,\x22read-string\x22,-558384455,null),(function (){var ns__55237__auto__ \x3d sci.impl.namespaces.clojure_edn_namespace;\nvar m__55238__auto__ \x3d cljs.core.meta(new cljs.core.Var(function(){return cljs.reader.read_string;},new cljs.core.Symbol(\x22cljs.reader\x22,\x22read-string\x22,\x22cljs.reader/read-string\x22,589673466,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.reader\x22,\x22cljs.reader\x22,1327473948,null),new cljs.core.Symbol(null,\x22read-string\x22,\x22read-string\x22,-558384455,null),\x22cljs/reader.cljs\x22,18,new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),false,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),2,new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),2,new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null,null)], null),1,174,174,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22opts\x22,\x22opts\x22,1795607228,null),new cljs.core.Symbol(null,\x22s\x22,\x22s\x22,-948495851,null)], null)),\x22Reads one object from the string s.\\n   Returns nil when s is nil or empty.\\n\\n   Reads data in the edn format (subset of Clojure data):\\n   http://edn-format.org\\n\\n   opts is a map as per cljs.tools.reader.edn/read\x22,(cljs.core.truth_(cljs.reader.read_string)?cljs.reader.read_string.cljs$lang$test:null)])));\nvar ns_name__55239__auto__ \x3d ns__55237__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__55240__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__55238__auto__);\nvar name_sym__55241__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__55239__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__55240__auto__));\nvar val__55242__auto__ \x3d cljs.reader.read_string;\nreturn sci.impl.vars.__GT_SciVar(val__55242__auto__,name_sym__55241__auto__,(function (){var G__62383 \x3d new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__55237__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__55240__auto__,new cljs.core.Keyword(\x22sci.impl\x22,\x22built-in\x22,\x22sci.impl/built-in\x22,1011824843),true,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__55238__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__55238__auto__)], null);\nif((((sci.impl.namespaces.clojure_core_ns \x3d\x3d\x3d ns__55237__auto__)) \x26\x26 (cljs.core.contains_QMARK_(sci.impl.namespaces.inlined_vars,name__55240__auto__)))){\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__62383,new cljs.core.Keyword(\x22sci.impl\x22,\x22inlined\x22,\x22sci.impl/inlined\x22,-478453593),val__55242__auto__);\n} else {\nreturn G__62383;\n}\n})(),false);\n})()], null)], null);\nsci.impl.namespaces.aliases \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Symbol(null,\x22str\x22,\x22str\x22,-1564826950,null),new cljs.core.Symbol(null,\x22clojure.string\x22,\x22clojure.string\x22,-1415552165,null),new cljs.core.Symbol(null,\x22set\x22,\x22set\x22,1945134081,null),new cljs.core.Symbol(null,\x22clojure.set\x22,\x22clojure.set\x22,-630955632,null)], null);\n");
SHADOW_ENV.evalLoad("sci.impl.opts.js", true , "goog.provide(\x27sci.impl.opts\x27);\nsci.impl.opts.init_env_BANG_ \x3d (function sci$impl$opts$init_env_BANG_(env,bindings,aliases,namespaces,imports,load_fn){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(env,(function (env__$1){\nvar namespaces__$1 \x3d cljs.core.merge_with.cljs$core$IFn$_invoke$arity$variadic(cljs.core.merge,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.namespaces.namespaces,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22user\x22,\x22user\x22,-1122004413,null),cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(bindings,new cljs.core.Keyword(null,\x22obj\x22,\x22obj\x22,981763962),sci.impl.vars.user_ns)], null),namespaces,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469).cljs$core$IFn$_invoke$arity$1(env__$1)], 0));\nvar aliases__$1 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.namespaces.aliases,aliases,cljs.core.get_in.cljs$core$IFn$_invoke$arity$2(env__$1,new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),new cljs.core.Symbol(null,\x22user\x22,\x22user\x22,-1122004413,null),new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714)], null))], 0));\nvar namespaces__$2 \x3d cljs.core.update.cljs$core$IFn$_invoke$arity$5(cljs.core.update.cljs$core$IFn$_invoke$arity$5(namespaces__$1,new cljs.core.Symbol(null,\x22user\x22,\x22user\x22,-1122004413,null),cljs.core.assoc,new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714),aliases__$1),new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),cljs.core.assoc,new cljs.core.Symbol(null,\x22global-hierarchy\x22,\x22global-hierarchy\x22,-2014004345,null),sci.impl.vars.__GT_SciVar(cljs.core.make_hierarchy(),new cljs.core.Symbol(null,\x22global-hierarchy\x22,\x22global-hierarchy\x22,-2014004345,null),null,false));\nvar imports__$1 \x3d (function (){var temp__5751__auto__ \x3d new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394).cljs$core$IFn$_invoke$arity$1(env__$1);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar env_imports \x3d temp__5751__auto__;\nreturn cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([env_imports,imports], 0));\n} else {\nreturn imports;\n}\n})();\nif(cljs.core.not(env__$1)){\nreturn new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),namespaces__$2,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),imports__$1,new cljs.core.Keyword(null,\x22load-fn\x22,\x22load-fn\x22,-2121144334),load_fn], null);\n} else {\nreturn cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(env__$1,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),namespaces__$2,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394),imports__$1,new cljs.core.Keyword(null,\x22load-fn\x22,\x22load-fn\x22,-2121144334),load_fn], 0));\n}\n}));\n});\nsci.impl.opts.process_permissions \x3d (function sci$impl$opts$process_permissions(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62422 \x3d arguments.length;\nvar i__4772__auto___62423 \x3d (0);\nwhile(true){\nif((i__4772__auto___62423 \x3c len__4771__auto___62422)){\nargs__4777__auto__.push((arguments[i__4772__auto___62423]));\n\nvar G__62424 \x3d (i__4772__auto___62423 + (1));\ni__4772__auto___62423 \x3d G__62424;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((1) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((1)),(0),null)):null);\nreturn sci.impl.opts.process_permissions.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4778__auto__);\n});\n\n(sci.impl.opts.process_permissions.cljs$core$IFn$_invoke$arity$variadic \x3d (function (prev_perms,permissions){\nreturn cljs.core.not_empty(cljs.core.into.cljs$core$IFn$_invoke$arity$3(prev_perms,cljs.core.comp.cljs$core$IFn$_invoke$arity$2(cljs.core.cat,cljs.core.map.cljs$core$IFn$_invoke$arity$1(sci.impl.utils.strip_core_ns)),permissions));\n}));\n\n(sci.impl.opts.process_permissions.cljs$lang$maxFixedArity \x3d (1));\n\n/** @this {Function} */\n(sci.impl.opts.process_permissions.cljs$lang$applyTo \x3d (function (seq62387){\nvar G__62388 \x3d cljs.core.first(seq62387);\nvar seq62387__$1 \x3d cljs.core.next(seq62387);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__62388,seq62387__$1);\n}));\n\nsci.impl.opts.default_classes \x3d new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Symbol(null,\x22Error\x22,\x22Error\x22,-1692662047,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996),Error,new cljs.core.Keyword(null,\x22constructor\x22,\x22constructor\x22,-1953928811),(function() {\nvar G__62425 \x3d null;\nvar G__62425__1 \x3d (function (msg){\nreturn (new Error(msg));\n});\nvar G__62425__2 \x3d (function (msg,filename){\nreturn (new Error(msg,filename));\n});\nvar G__62425__3 \x3d (function (msg,filename,line){\nreturn (new Error(msg,filename,line));\n});\nG__62425 \x3d function(msg,filename,line){\nswitch(arguments.length){\ncase 1:\nreturn G__62425__1.call(this,msg);\ncase 2:\nreturn G__62425__2.call(this,msg,filename);\ncase 3:\nreturn G__62425__3.call(this,msg,filename,line);\n}\nthrow(new Error(\x27Invalid arity: \x27 + arguments.length));\n};\nG__62425.cljs$core$IFn$_invoke$arity$1 \x3d G__62425__1;\nG__62425.cljs$core$IFn$_invoke$arity$2 \x3d G__62425__2;\nG__62425.cljs$core$IFn$_invoke$arity$3 \x3d G__62425__3;\nreturn G__62425;\n})()\n], null),new cljs.core.Symbol(null,\x22cljs.core.Delay\x22,\x22cljs.core.Delay\x22,-1917476777,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996),cljs.core.Delay,new cljs.core.Keyword(null,\x22constructor\x22,\x22constructor\x22,-1953928811),(function (p1__62390_SHARP_){\nreturn (new cljs.core.Delay(p1__62390_SHARP_,null));\n})], null),new cljs.core.Symbol(null,\x22goog.string.StringBuffer\x22,\x22goog.string.StringBuffer\x22,-1220229842,null),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996),goog.string.StringBuffer,new cljs.core.Keyword(null,\x22constructor\x22,\x22constructor\x22,-1953928811),(function (p1__62391_SHARP_){\nreturn (new goog.string.StringBuffer(p1__62391_SHARP_));\n})], null)], null);\nsci.impl.opts.default_imports \x3d cljs.core.PersistentArrayMap.EMPTY;\nsci.impl.opts.normalize_classes \x3d (function sci$impl$opts$normalize_classes(classes){\nvar class__GT_opts \x3d cljs.core.transient$(cljs.core.select_keys(classes,new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745)], null)));\nvar kvs \x3d classes;\nwhile(true){\nvar temp__5751__auto__ \x3d cljs.core.first(kvs);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar vec__62393 \x3d temp__5751__auto__;\nvar sym \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__62393,(0),null);\nvar class_opts \x3d cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__62393,(1),null);\nvar G__62426 \x3d cljs.core.assoc_BANG_.cljs$core$IFn$_invoke$arity$3(class__GT_opts,sym,((cljs.core.map_QMARK_(class_opts))?class_opts:new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,\x22class\x22,\x22class\x22,-2030961996),class_opts], null)));\nvar G__62427 \x3d cljs.core.rest(kvs);\nclass__GT_opts \x3d G__62426;\nkvs \x3d G__62427;\ncontinue;\n} else {\nreturn new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019),new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019).cljs$core$IFn$_invoke$arity$1(classes),new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477),cljs.core.persistent_BANG_(class__GT_opts)], null);\n}\nbreak;\n}\n});\nsci.impl.opts.default_reify_fn \x3d (function sci$impl$opts$default_reify_fn(_,___$1,___$2){\nreturn null;\n});\nsci.impl.opts.__GT_ctx \x3d (function sci$impl$opts$__GT_ctx(bindings,env,features,readers,check_permissions_QMARK_){\nreturn new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192),bindings,new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235),env,new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336),features,new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030),readers,new cljs.core.Keyword(null,\x22check-permissions\x22,\x22check-permissions\x22,669054317),check_permissions_QMARK_], null);\n});\n/**\n * Initializes options\n */\nsci.impl.opts.init \x3d (function sci$impl$opts$init(p__62399){\nvar map__62400 \x3d p__62399;\nvar map__62400__$1 \x3d cljs.core.__destructure_map(map__62400);\nvar features \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336));\nvar namespaces \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469));\nvar bindings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar readers \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030));\nvar reify_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22reify-fn\x22,\x22reify-fn\x22,-1360983316));\nvar env \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235));\nvar disable_arity_checks \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22disable-arity-checks\x22,\x22disable-arity-checks\x22,1131364206));\nvar imports \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394));\nvar allow \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745));\nvar load_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22load-fn\x22,\x22load-fn\x22,-2121144334));\nvar uberscript \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092));\nvar aliases \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714));\nvar deny \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22deny\x22,\x22deny\x22,1589338523));\nvar proxy_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22proxy-fn\x22,\x22proxy-fn\x22,1116677438));\nvar classes \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62400__$1,new cljs.core.Keyword(null,\x22classes\x22,\x22classes\x22,2037804510));\nvar env__$1 \x3d (function (){var or__4160__auto__ \x3d env;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY);\n}\n})();\nvar imports__$1 \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.opts.default_imports,imports], 0));\nvar bindings__$1 \x3d bindings;\nvar _ \x3d sci.impl.opts.init_env_BANG_(env__$1,bindings__$1,aliases,namespaces,imports__$1,load_fn);\nvar raw_classes \x3d classes;\nvar classes__$1 \x3d sci.impl.opts.normalize_classes(cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([sci.impl.opts.default_classes,raw_classes], 0)));\nvar ctx \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(sci.impl.opts.__GT_ctx(cljs.core.PersistentArrayMap.EMPTY,env__$1,features,readers,(function (){var or__4160__auto__ \x3d allow;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn deny;\n}\n})()),new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745),(cljs.core.truth_(allow)?sci.impl.opts.process_permissions.cljs$core$IFn$_invoke$arity$variadic(cljs.core.PersistentHashSet.EMPTY,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([allow], 0)):null),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22deny\x22,\x22deny\x22,1589338523),(cljs.core.truth_(deny)?sci.impl.opts.process_permissions.cljs$core$IFn$_invoke$arity$variadic(cljs.core.PersistentHashSet.EMPTY,cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([deny], 0)):null),new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092),uberscript,new cljs.core.Keyword(null,\x22reify-fn\x22,\x22reify-fn\x22,-1360983316),(function (){var or__4160__auto__ \x3d reify_fn;\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn sci.impl.opts.default_reify_fn;\n}\n})(),new cljs.core.Keyword(null,\x22proxy-fn\x22,\x22proxy-fn\x22,1116677438),proxy_fn,new cljs.core.Keyword(null,\x22disable-arity-checks\x22,\x22disable-arity-checks\x22,1131364206),disable_arity_checks,new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019),new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019).cljs$core$IFn$_invoke$arity$1(classes__$1),new cljs.core.Keyword(null,\x22raw-classes\x22,\x22raw-classes\x22,1669916511),raw_classes,new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477),new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477).cljs$core$IFn$_invoke$arity$1(classes__$1)], 0));\nreturn ctx;\n});\nsci.impl.opts.merge_opts \x3d (function sci$impl$opts$merge_opts(ctx,opts){\nvar map__62410 \x3d opts;\nvar map__62410__$1 \x3d cljs.core.__destructure_map(map__62410);\nvar features \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22features\x22,\x22features\x22,-1146962336));\nvar namespaces \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469));\nvar bindings \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22bindings\x22,\x22bindings\x22,1271397192));\nvar readers \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22readers\x22,\x22readers\x22,-2118263030));\nvar reify_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22reify-fn\x22,\x22reify-fn\x22,-1360983316));\nvar disable_arity_checks \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22disable-arity-checks\x22,\x22disable-arity-checks\x22,1131364206));\nvar imports \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22imports\x22,\x22imports\x22,-1249933394));\nvar allow \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745));\nvar load_fn \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22load-fn\x22,\x22load-fn\x22,-2121144334));\nvar uberscript \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092));\nvar aliases \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22aliases\x22,\x22aliases\x22,1346874714));\nvar deny \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22deny\x22,\x22deny\x22,1589338523));\nvar classes \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__62410__$1,new cljs.core.Keyword(null,\x22classes\x22,\x22classes\x22,2037804510));\nvar env \x3d new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235).cljs$core$IFn$_invoke$arity$1(ctx);\nvar _ \x3d sci.impl.opts.init_env_BANG_(env,bindings,aliases,namespaces,imports,load_fn);\nvar raw_classes \x3d cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22raw-classes\x22,\x22raw-classes\x22,1669916511).cljs$core$IFn$_invoke$arity$1(ctx),classes], 0));\nvar classes__$1 \x3d sci.impl.opts.normalize_classes(raw_classes);\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$variadic(sci.impl.opts.__GT_ctx(cljs.core.PersistentArrayMap.EMPTY,env,features,readers,(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22check-permissions\x22,\x22check-permissions\x22,669054317).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nvar or__4160__auto____$1 \x3d allow;\nif(cljs.core.truth_(or__4160__auto____$1)){\nreturn or__4160__auto____$1;\n} else {\nreturn deny;\n}\n}\n})()),new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745),(cljs.core.truth_(allow)?sci.impl.opts.process_permissions.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745).cljs$core$IFn$_invoke$arity$1(ctx),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([allow], 0)):null),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,\x22deny\x22,\x22deny\x22,1589338523),(cljs.core.truth_(deny)?sci.impl.opts.process_permissions.cljs$core$IFn$_invoke$arity$variadic(new cljs.core.Keyword(null,\x22deny\x22,\x22deny\x22,1589338523).cljs$core$IFn$_invoke$arity$1(ctx),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([deny], 0)):null),new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092),uberscript,new cljs.core.Keyword(null,\x22reify-fn\x22,\x22reify-fn\x22,-1360983316),reify_fn,new cljs.core.Keyword(null,\x22disable-arity-checks\x22,\x22disable-arity-checks\x22,1131364206),disable_arity_checks,new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019),new cljs.core.Keyword(null,\x22public-class\x22,\x22public-class\x22,1127293019).cljs$core$IFn$_invoke$arity$1(classes__$1),new cljs.core.Keyword(null,\x22raw-classes\x22,\x22raw-classes\x22,1669916511),raw_classes,new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477),new cljs.core.Keyword(null,\x22class-\x3eopts\x22,\x22class-\x3eopts\x22,2061906477).cljs$core$IFn$_invoke$arity$1(classes__$1)], 0));\nreturn ctx__$1;\n});\n");
SHADOW_ENV.evalLoad("sci.impl.interpreter.js", true , "goog.provide(\x27sci.impl.interpreter\x27);\nsci.impl.interpreter.stats \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22parse\x22,\x22parse\x22,-1162164619),(0),new cljs.core.Keyword(null,\x22analysis\x22,\x22analysis\x22,-1362593389),(0),new cljs.core.Keyword(null,\x22eval\x22,\x22eval\x22,-1103567905),(0),new cljs.core.Keyword(null,\x22total\x22,\x22total\x22,1916810418),(0)], null));\nsci.impl.interpreter.update_stats \x3d (function sci$impl$interpreter$update_stats(_ctx,k,t){\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$2(sci.impl.interpreter.stats,(function (stats){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$4(cljs.core.update.cljs$core$IFn$_invoke$arity$4(stats,k,cljs.core._PLUS_,t),new cljs.core.Keyword(null,\x22total\x22,\x22total\x22,1916810418),cljs.core._PLUS_,t);\n}));\n});\nsci.impl.interpreter.print_stats \x3d (function sci$impl$interpreter$print_stats(){\nreturn cljs.core.prn.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.zipmap(cljs.core.keys(cljs.core.deref(sci.impl.interpreter.stats)),cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__62435_SHARP_){\nreturn (p1__62435_SHARP_ / 1000000.0);\n}),cljs.core.vals(cljs.core.deref(sci.impl.interpreter.stats))))], 0));\n});\nsci.impl.interpreter.eval_form_stats \x3d (function sci$impl$interpreter$eval_form_stats(ctx,form){\nif(cljs.core.seq_QMARK_(form)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),cljs.core.first(form))){\nvar exprs \x3d cljs.core.rest(form);\nvar ret \x3d null;\nwhile(true){\nif(cljs.core.seq(exprs)){\nvar G__62473 \x3d cljs.core.rest(exprs);\nvar G__62474 \x3d (function (){var G__62441 \x3d ctx;\nvar G__62442 \x3d cljs.core.first(exprs);\nreturn (sci.impl.interpreter.eval_form_stats.cljs$core$IFn$_invoke$arity$2 ? sci.impl.interpreter.eval_form_stats.cljs$core$IFn$_invoke$arity$2(G__62441,G__62442) : sci.impl.interpreter.eval_form_stats.call(null,G__62441,G__62442));\n})();\nexprs \x3d G__62473;\nret \x3d G__62474;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n} else {\nif(((cljs.core.not(new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092).cljs$core$IFn$_invoke$arity$1(ctx))) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),cljs.core.first(form))) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22require\x22,\x22require\x22,1172530194,null),cljs.core.first(form))))){\nvar analyzed \x3d sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$3(ctx,form,true);\nvar ret \x3d (((analyzed instanceof sci.impl.types.EvalForm))?(function (){var G__62447 \x3d ctx;\nvar G__62448 \x3d analyzed.sci$impl$types$IBox$getVal$arity$1(null);\nreturn (sci.impl.interpreter.eval_form_stats.cljs$core$IFn$_invoke$arity$2 ? sci.impl.interpreter.eval_form_stats.cljs$core$IFn$_invoke$arity$2(G__62447,G__62448) : sci.impl.interpreter.eval_form_stats.call(null,G__62447,G__62448));\n})():(function (){var ret \x3d sci.impl.evaluator.eval(ctx,analyzed);\nreturn ret;\n})());\nreturn ret;\n} else {\nreturn null;\n}\n}\n} else {\nvar analyzed \x3d sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,form);\nvar ret \x3d sci.impl.evaluator.eval(ctx,analyzed);\nreturn ret;\n}\n});\nsci.impl.interpreter.eval_form \x3d (function sci$impl$interpreter$eval_form(ctx,form){\nif(cljs.core.seq_QMARK_(form)){\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22do\x22,\x22do\x22,1686842252,null),cljs.core.first(form))){\nvar exprs \x3d cljs.core.rest(form);\nvar ret \x3d null;\nwhile(true){\nif(cljs.core.seq(exprs)){\nvar G__62477 \x3d cljs.core.rest(exprs);\nvar G__62478 \x3d (function (){var G__62455 \x3d ctx;\nvar G__62456 \x3d cljs.core.first(exprs);\nreturn (sci.impl.interpreter.eval_form.cljs$core$IFn$_invoke$arity$2 ? sci.impl.interpreter.eval_form.cljs$core$IFn$_invoke$arity$2(G__62455,G__62456) : sci.impl.interpreter.eval_form.call(null,G__62455,G__62456));\n})();\nexprs \x3d G__62477;\nret \x3d G__62478;\ncontinue;\n} else {\nreturn ret;\n}\nbreak;\n}\n} else {\nif(((cljs.core.not(new cljs.core.Keyword(null,\x22uberscript\x22,\x22uberscript\x22,701571092).cljs$core$IFn$_invoke$arity$1(ctx))) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22ns\x22,\x22ns\x22,2082130287,null),cljs.core.first(form))) || (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22require\x22,\x22require\x22,1172530194,null),cljs.core.first(form))))){\nvar analyzed \x3d sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$3(ctx,form,true);\nvar ret \x3d (((analyzed instanceof sci.impl.types.EvalForm))?(function (){var G__62457 \x3d ctx;\nvar G__62458 \x3d analyzed.sci$impl$types$IBox$getVal$arity$1(null);\nreturn (sci.impl.interpreter.eval_form.cljs$core$IFn$_invoke$arity$2 ? sci.impl.interpreter.eval_form.cljs$core$IFn$_invoke$arity$2(G__62457,G__62458) : sci.impl.interpreter.eval_form.call(null,G__62457,G__62458));\n})():sci.impl.evaluator.eval(ctx,analyzed));\nreturn ret;\n} else {\nreturn null;\n}\n}\n} else {\nvar analyzed \x3d sci.impl.analyzer.analyze.cljs$core$IFn$_invoke$arity$2(ctx,form);\nvar ret \x3d sci.impl.evaluator.eval(ctx,analyzed);\nreturn ret;\n}\n});\ncljs.core.vreset_BANG_(sci.impl.utils.eval_form_state,sci.impl.interpreter.eval_form);\nsci.impl.interpreter.eval_string_stats \x3d (function sci$impl$interpreter$eval_string_stats(ctx,s){\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\n}\n})());\nsci.impl.vars.push_thread_bindings(cljs.core.PersistentArrayMap.createAsIfByAssoc([sci.impl.vars.current_ns,cljs.core.deref(sci.impl.vars.current_ns)]));\n\ntry{var reader \x3d cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\nvar ret \x3d null;\nwhile(true){\nvar expr \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx__$1,reader);\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),expr) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),expr)))){\nsci.impl.interpreter.print_stats();\n\nreturn ret;\n} else {\nvar ret__$1 \x3d sci.impl.interpreter.eval_form(ctx__$1,expr);\nvar G__62479 \x3d ret__$1;\nret \x3d G__62479;\ncontinue;\n}\nbreak;\n}\n}finally {sci.impl.vars.pop_thread_bindings();\n}});\nsci.impl.interpreter.eval_string_STAR_ \x3d (function sci$impl$interpreter$eval_string_STAR_(ctx,s){\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\n}\n})());\nsci.impl.vars.push_thread_bindings(cljs.core.PersistentArrayMap.createAsIfByAssoc([sci.impl.vars.current_ns,cljs.core.deref(sci.impl.vars.current_ns)]));\n\ntry{var reader \x3d cljs.tools.reader.reader_types.indexing_push_back_reader.cljs$core$IFn$_invoke$arity$1(cljs.tools.reader.reader_types.string_push_back_reader.cljs$core$IFn$_invoke$arity$1(s));\nvar ret \x3d null;\nwhile(true){\nvar expr \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$2(ctx__$1,reader);\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),expr) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),expr)))){\nreturn ret;\n} else {\nvar ret__$1 \x3d sci.impl.interpreter.eval_form(ctx__$1,expr);\nvar G__62483 \x3d ret__$1;\nret \x3d G__62483;\ncontinue;\n}\nbreak;\n}\n}finally {sci.impl.vars.pop_thread_bindings();\n}});\ncljs.core.vreset_BANG_(sci.impl.utils.eval_string_STAR_,sci.impl.interpreter.eval_string_STAR_);\nsci.impl.interpreter.eval_string \x3d (function sci$impl$interpreter$eval_string(var_args){\nvar G__62471 \x3d arguments.length;\nswitch (G__62471) {\ncase 1:\nreturn sci.impl.interpreter.eval_string.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.impl.interpreter.eval_string.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.impl.interpreter.eval_string.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn sci.impl.interpreter.eval_string.cljs$core$IFn$_invoke$arity$2(s,null);\n}));\n\n(sci.impl.interpreter.eval_string.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,opts){\nvar init_ctx \x3d sci.impl.opts.init(opts);\nvar ret \x3d sci.impl.interpreter.eval_string_STAR_(init_ctx,s);\nreturn ret;\n}));\n\n(sci.impl.interpreter.eval_string.cljs$lang$maxFixedArity \x3d 2);\n\n");
SHADOW_ENV.evalLoad("sci.core.js", true , "goog.provide(\x27sci.core\x27);\n/**\n * Returns a new sci var.\n */\nsci.core.new_var \x3d (function sci$core$new_var(var_args){\nvar G__62845 \x3d arguments.length;\nswitch (G__62845) {\ncase 1:\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.core.new_var.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nvar G__62846 \x3d sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name,null,null);\nsci.impl.vars.unbind(G__62846);\n\nreturn G__62846;\n}));\n\n(sci.core.new_var.cljs$core$IFn$_invoke$arity$2 \x3d (function (name,init_val){\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name,init_val,cljs.core.meta(name));\n}));\n\n(sci.core.new_var.cljs$core$IFn$_invoke$arity$3 \x3d (function (name,init_val,meta){\nreturn (new sci.impl.vars.SciVar(init_val,name,meta,false));\n}));\n\n(sci.core.new_var.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Same as new-var but adds :dynamic true to meta.\n */\nsci.core.new_dynamic_var \x3d (function sci$core$new_dynamic_var(var_args){\nvar G__62849 \x3d arguments.length;\nswitch (G__62849) {\ncase 1:\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$1 \x3d (function (name){\nvar G__62856 \x3d sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name,null,null);\nsci.impl.vars.unbind(G__62856);\n\nreturn G__62856;\n}));\n\n(sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$2 \x3d (function (name,init_val){\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name,init_val,cljs.core.meta(name));\n}));\n\n(sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3 \x3d (function (name,init_val,meta){\nreturn (new sci.impl.vars.SciVar(init_val,name,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(meta,new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571),true),false));\n}));\n\n(sci.core.new_dynamic_var.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Establish thread local binding of dynamic var\n */\nsci.core.set_BANG_ \x3d (function sci$core$set_BANG_(dynamic_var,v){\nreturn sci.impl.types.setVal(dynamic_var,v);\n});\n/**\n * Same as new-var but adds :macro true to meta as well\n *   as :sci/macro true to meta of the fn itself.\n */\nsci.core.new_macro_var \x3d (function sci$core$new_macro_var(var_args){\nvar G__62861 \x3d arguments.length;\nswitch (G__62861) {\ncase 2:\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$2 \x3d (function (name,init_val){\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3(name,init_val,cljs.core.meta(name));\n}));\n\n(sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3 \x3d (function (name,init_val,meta){\nreturn (new sci.impl.vars.SciVar(cljs.core.vary_meta.cljs$core$IFn$_invoke$arity$4(init_val,cljs.core.assoc,new cljs.core.Keyword(\x22sci\x22,\x22macro\x22,\x22sci/macro\x22,-868536151),true),name,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(meta,new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404),true),false));\n}));\n\n(sci.core.new_macro_var.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Sci var that represents sci\x27s `clojure.core/*in*`\n */\nsci.core.in$ \x3d sci.impl.io.in$;\n/**\n * Sci var that represents sci\x27s `clojure.core/*out*`\n */\nsci.core.out \x3d sci.impl.io.out;\n/**\n * Sci var that represents sci\x27s `clojure.core/*err*`\n */\nsci.core.err \x3d sci.impl.io.err;\n/**\n * Sci var that represents sci\x27s `clojure.core/*ns*`\n */\nsci.core.ns \x3d sci.impl.vars.current_ns;\n/**\n * Sci var that represents sci\x27s `clojure.core/*file*`\n */\nsci.core.file \x3d sci.impl.vars.current_file;\n/**\n * Sci var that represents sci\x27s `clojure.core/*print-length*`\n */\nsci.core.print_length \x3d sci.impl.io.print_length;\n/**\n * Sci var that represents sci\x27s `clojure.core/*print-level*`\n */\nsci.core.print_level \x3d sci.impl.io.print_level;\n/**\n * Sci var that represents sci\x27s `clojure.core/*print-meta*`\n */\nsci.core.print_meta \x3d sci.impl.io.print_meta;\nsci.core._STAR_1 \x3d sci.impl.namespaces._STAR_1;\nsci.core._STAR_2 \x3d sci.impl.namespaces._STAR_2;\nsci.core._STAR_3 \x3d sci.impl.namespaces._STAR_3;\nsci.core._STAR_e \x3d sci.impl.namespaces._STAR_e;\n/**\n * Atomically alters the root binding of sci var v by applying f to its\n *   current value plus any args.\n */\nsci.core.alter_var_root \x3d (function sci$core$alter_var_root(var_args){\nvar args__4777__auto__ \x3d [];\nvar len__4771__auto___62893 \x3d arguments.length;\nvar i__4772__auto___62894 \x3d (0);\nwhile(true){\nif((i__4772__auto___62894 \x3c len__4771__auto___62893)){\nargs__4777__auto__.push((arguments[i__4772__auto___62894]));\n\nvar G__62895 \x3d (i__4772__auto___62894 + (1));\ni__4772__auto___62894 \x3d G__62895;\ncontinue;\n} else {\n}\nbreak;\n}\n\nvar argseq__4778__auto__ \x3d ((((2) \x3c args__4777__auto__.length))?(new cljs.core.IndexedSeq(args__4777__auto__.slice((2)),(0),null)):null);\nreturn sci.core.alter_var_root.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),(arguments[(1)]),argseq__4778__auto__);\n});\n\n(sci.core.alter_var_root.cljs$core$IFn$_invoke$arity$variadic \x3d (function (v,f,args){\nreturn cljs.core.apply.cljs$core$IFn$_invoke$arity$4(sci.impl.vars.alter_var_root,v,f,args);\n}));\n\n(sci.core.alter_var_root.cljs$lang$maxFixedArity \x3d (2));\n\n/** @this {Function} */\n(sci.core.alter_var_root.cljs$lang$applyTo \x3d (function (seq62876){\nvar G__62877 \x3d cljs.core.first(seq62876);\nvar seq62876__$1 \x3d cljs.core.next(seq62876);\nvar G__62878 \x3d cljs.core.first(seq62876__$1);\nvar seq62876__$2 \x3d cljs.core.next(seq62876__$1);\nvar self__4758__auto__ \x3d this;\nreturn self__4758__auto__.cljs$core$IFn$_invoke$arity$variadic(G__62877,G__62878,seq62876__$2);\n}));\n\n/**\n * Evaluates string `s` as one or multiple Clojure expressions using the Small Clojure Interpreter.\n * \n *   The map `opts` may contain the following:\n * \n *   - `:namespaces`: a map of symbols to namespaces, where a namespace\n *   is a map with symbols to values, e.g.: `{\x27foo.bar {\x27x 1}}`. These\n *   namespaces can be used with `require`.\n * \n *   - `:bindings`: `:bindings x` is the same as `:namespaces {\x27user x}`.\n * \n *   - `:allow`: a seqable of allowed symbols. All symbols, even those\n *   brought in via `:bindings` or `:namespaces` have to be explicitly\n *   enumerated.\n * \n *   - `:deny`: a seqable of disallowed symbols, e.g.: `[loop quote\n *   recur]`.\n * \n *   - `:features`: when provided a non-empty set of keywords, sci will process reader conditionals using these features (e.g. #{:bb}).\n * \n *   - `:env`: an atom with a map in which state from the\n *   evaluation (defined namespaced and vars) will be persisted for\n *   re-use over multiple calls.\n * \n *   - `:disable-arity-checks`: disables arity checks for single-arity\n *   functions.\n */\nsci.core.eval_string \x3d (function sci$core$eval_string(var_args){\nvar G__62880 \x3d arguments.length;\nswitch (G__62880) {\ncase 1:\nreturn sci.core.eval_string.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.core.eval_string.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.core.eval_string.cljs$core$IFn$_invoke$arity$1 \x3d (function (s){\nreturn sci.core.eval_string.cljs$core$IFn$_invoke$arity$2(s,null);\n}));\n\n(sci.core.eval_string.cljs$core$IFn$_invoke$arity$2 \x3d (function (s,opts){\nreturn sci.impl.interpreter.eval_string.cljs$core$IFn$_invoke$arity$2(s,opts);\n}));\n\n(sci.core.eval_string.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Creates an initial sci context from given options `opts`. The context\n *   can be used with `eval-string*`. See `eval-string` for available\n *   options. The internal organization of the context is implementation\n *   detail and may change in the future.\n */\nsci.core.init \x3d (function sci$core$init(opts){\nreturn sci.impl.opts.init(opts);\n});\n/**\n * Updates a context with opts merged in and returns it.\n */\nsci.core.merge_opts \x3d (function sci$core$merge_opts(ctx,opts){\nreturn sci.impl.opts.merge_opts(ctx,opts);\n});\n/**\n * Forks a context (as produced with `init`) into a new context. Any new\n *   vars created in the new context won\x27t be visible in the original\n *   context.\n */\nsci.core.fork \x3d (function sci$core$fork(ctx){\nreturn cljs.core.update.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22env\x22,\x22env\x22,-1815813235),(function (env){\nreturn cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.deref(env));\n}));\n});\n/**\n * Evaluates string `s` in the context of `ctx` (as produced with\n *   `init`).\n */\nsci.core.eval_string_STAR_ \x3d (function sci$core$eval_string_STAR_(ctx,s){\nreturn sci.impl.interpreter.eval_string_STAR_(ctx,s);\n});\n/**\n * Creates namespace object. Can be used in var metadata.\n */\nsci.core.create_ns \x3d (function sci$core$create_ns(var_args){\nvar G__62882 \x3d arguments.length;\nswitch (G__62882) {\ncase 1:\nreturn sci.core.create_ns.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));\n\nbreak;\ncase 2:\nreturn sci.core.create_ns.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.core.create_ns.cljs$core$IFn$_invoke$arity$1 \x3d (function (sym){\nreturn sci.core.create_ns.cljs$core$IFn$_invoke$arity$2(sym,null);\n}));\n\n(sci.core.create_ns.cljs$core$IFn$_invoke$arity$2 \x3d (function (sym,meta){\nreturn sci.impl.vars.__GT_SciNamespace(sym,meta);\n}));\n\n(sci.core.create_ns.cljs$lang$maxFixedArity \x3d 2);\n\n/**\n * Parses string `s` in the context of `ctx` (as produced with\n *   `init`).\n */\nsci.core.parse_string \x3d (function sci$core$parse_string(ctx,s){\nreturn sci.impl.parser.parse_string(ctx,s);\n});\n/**\n * Coerces x into indexing pushback-reader to be used with\n *   parse-next. Accepts: string or java.io.Reader.\n */\nsci.core.reader \x3d (function sci$core$reader(x){\nreturn sci.impl.parser.reader(x);\n});\nsci.core.get_line_number \x3d (function sci$core$get_line_number(reader){\nreturn sci.impl.parser.get_line_number(reader);\n});\nsci.core.get_column_number \x3d (function sci$core$get_column_number(reader){\nreturn sci.impl.parser.get_column_number(reader);\n});\n/**\n * Parses next form from reader\n */\nsci.core.parse_next \x3d (function sci$core$parse_next(var_args){\nvar G__62884 \x3d arguments.length;\nswitch (G__62884) {\ncase 2:\nreturn sci.core.parse_next.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));\n\nbreak;\ncase 3:\nreturn sci.core.parse_next.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));\n\nbreak;\ndefault:\nthrow (new Error([\x22Invalid arity: \x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(\x27\x27)));\n\n}\n});\n\n(sci.core.parse_next.cljs$core$IFn$_invoke$arity$2 \x3d (function (ctx,reader){\nreturn sci.core.parse_next.cljs$core$IFn$_invoke$arity$3(ctx,reader,cljs.core.PersistentArrayMap.EMPTY);\n}));\n\n(sci.core.parse_next.cljs$core$IFn$_invoke$arity$3 \x3d (function (ctx,reader,opts){\nvar v \x3d sci.impl.parser.parse_next.cljs$core$IFn$_invoke$arity$3(ctx,reader,opts);\nif(cljs.core.truth_((sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2 ? sci.impl.utils.kw_identical_QMARK_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),v) : sci.impl.utils.kw_identical_QMARK_.call(null,new cljs.core.Keyword(\x22sci.impl.parser.edamame\x22,\x22eof\x22,\x22sci.impl.parser.edamame/eof\x22,-917261517),v)))){\nvar or__4160__auto__ \x3d cljs.core.get.cljs$core$IFn$_invoke$arity$2(opts,new cljs.core.Keyword(null,\x22eof\x22,\x22eof\x22,-489063237));\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn new cljs.core.Keyword(\x22sci.core\x22,\x22eof\x22,\x22sci.core/eof\x22,-808584945);\n}\n} else {\nreturn v;\n}\n}));\n\n(sci.core.parse_next.cljs$lang$maxFixedArity \x3d 3);\n\n/**\n * Evaluates form (as produced by `parse-string` or `parse-next`) in the\n *   context of `ctx` (as produced with `init`). To allow namespace\n *   switches, establish root binding of `sci/ns` with `sci/binding` or\n *   `sci/with-bindings.`\n */\nsci.core.eval_form \x3d (function sci$core$eval_form(ctx,form){\nvar ctx__$1 \x3d cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(ctx,new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092),(function (){var or__4160__auto__ \x3d new cljs.core.Keyword(null,\x22id\x22,\x22id\x22,-1388402092).cljs$core$IFn$_invoke$arity$1(ctx);\nif(cljs.core.truth_(or__4160__auto__)){\nreturn or__4160__auto__;\n} else {\nreturn cljs.core.gensym.cljs$core$IFn$_invoke$arity$0();\n}\n})());\nreturn sci.impl.interpreter.eval_form(ctx__$1,form);\n});\n");
SHADOW_ENV.evalLoad("sci.script_tag.js", true , "goog.provide(\x27sci.script_tag\x27);\nvar ret__4820__auto___49548 \x3d /**\n * Evaluates expr and prints the time it took. Returns the value of expr.\n */\nsci.script_tag.time \x3d (function sci$script_tag$time(_AMPERSAND_form,_AMPERSAND_env,expr){\nreturn cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22let\x22,\x22cljs.core/let\x22,-308701135,null),null,(1),null)),(new cljs.core.List(null,cljs.core.vec(cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22start__49544__auto__\x22,\x22start__49544__auto__\x22,-2041983739,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22system-time\x22,\x22cljs.core/system-time\x22,1562011930,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22ret__49545__auto__\x22,\x22ret__49545__auto__\x22,-527797990,null),null,(1),null)),(new cljs.core.List(null,expr,null,(1),null))], 0))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$2((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22prn\x22,\x22cljs.core/prn\x22,1725204552,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22str\x22,\x22cljs.core/str\x22,-1971828991,null),null,(1),null)),(new cljs.core.List(null,\x22Elapsed time: \x22,null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(null,\x22.toFixed\x22,\x22.toFixed\x22,-895046938,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$variadic((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22-\x22,\x22cljs.core/-\x22,187040141,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.cljs$core$IFn$_invoke$arity$1(cljs.core.seq(cljs.core.concat.cljs$core$IFn$_invoke$arity$1((new cljs.core.List(null,new cljs.core.Symbol(\x22cljs.core\x22,\x22system-time\x22,\x22cljs.core/system-time\x22,1562011930,null),null,(1),null))))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,new cljs.core.Symbol(null,\x22start__49544__auto__\x22,\x22start__49544__auto__\x22,-2041983739,null),null,(1),null))], 0)))),null,(1),null)),cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(new cljs.core.List(null,(6),null,(1),null))], 0)))),null,(1),null)),(new cljs.core.List(null,\x22 msecs\x22,null,(1),null))], 0)))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol(null,\x22ret__49545__auto__\x22,\x22ret__49545__auto__\x22,-527797990,null),null,(1),null))], 0))));\n});\n(sci.script_tag.time.cljs$lang$macro \x3d true);\n\nsci.script_tag.export$ \x3d (function sci$script_tag$export(k,f){\nvar k__$1 \x3d cljs.core.munge(k);\nvar parts \x3d clojure.string.split.cljs$core$IFn$_invoke$arity$2(k__$1,/\\./);\nvar parts__$1 \x3d parts;\nvar prev \x3d window;\nwhile(true){\nvar temp__5753__auto__ \x3d cljs.core.seq(parts__$1);\nif(temp__5753__auto__){\nvar xs__6308__auto__ \x3d temp__5753__auto__;\nvar fpart \x3d cljs.core.first(xs__6308__auto__);\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(\x22user\x22,fpart)){\nvar G__49549 \x3d cljs.core.rest(parts__$1);\nvar G__49550 \x3d prev;\nparts__$1 \x3d G__49549;\nprev \x3d G__49550;\ncontinue;\n} else {\nif(cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(parts__$1))){\nreturn goog.object.set(prev,fpart,f);\n} else {\nvar temp__5751__auto__ \x3d goog.object.get(prev,fpart);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar obj \x3d temp__5751__auto__;\nvar G__49551 \x3d cljs.core.rest(parts__$1);\nvar G__49552 \x3d obj;\nparts__$1 \x3d G__49551;\nprev \x3d G__49552;\ncontinue;\n} else {\nvar obj \x3d ({});\ngoog.object.set(prev,fpart,obj);\n\nvar G__49553 \x3d cljs.core.rest(parts__$1);\nvar G__49554 \x3d obj;\nparts__$1 \x3d G__49553;\nprev \x3d G__49554;\ncontinue;\n}\n\n}\n}\n} else {\nreturn null;\n}\nbreak;\n}\n});\nsci.script_tag.stns \x3d sci.core.create_ns.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22sci.script-tag\x22,\x22sci.script-tag\x22,922462701,null),null);\nsci.script_tag.cljns \x3d sci.core.create_ns.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),null);\nsci.script_tag.namespaces \x3d new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Symbol(null,\x22sci.script-tag\x22,\x22sci.script-tag\x22,922462701,null),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Symbol(null,\x22export\x22,\x22export\x22,1854888117,null),(function (){var ns__48429__auto__ \x3d sci.script_tag.stns;\nvar var__48430__auto__ \x3d new cljs.core.Var(function(){return sci.script_tag.export$;},new cljs.core.Symbol(\x22sci.script-tag\x22,\x22export\x22,\x22sci.script-tag/export\x22,-125040602,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.script-tag\x22,\x22sci.script-tag\x22,922462701,null),new cljs.core.Symbol(null,\x22export\x22,\x22export\x22,1854888117,null),\x22sci/script_tag.cljs\x22,15,1,19,19,cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22k\x22,\x22k\x22,-505765866,null),new cljs.core.Symbol(null,\x22f\x22,\x22f\x22,43394975,null)], null)),null,(cljs.core.truth_(sci.script_tag.export$)?sci.script_tag.export$.cljs$lang$test:null)]));\nvar val__48431__auto__ \x3d cljs.core.deref(var__48430__auto__);\nvar m__48432__auto__ \x3d cljs.core.meta(var__48430__auto__);\nvar ns_name__48433__auto__ \x3d ns__48429__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__48434__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__48432__auto__);\nvar name_sym__48435__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48433__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48434__auto__));\nvar new_m__48436__auto__ \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__48429__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__48434__auto__,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__48432__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__48432__auto__)], null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n\n}\n}\n})()], null),new cljs.core.Symbol(null,\x22clojure.core\x22,\x22clojure.core\x22,-189332625,null),new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Symbol(null,\x22println\x22,\x22println\x22,-733595439,null),(function (){var ns__48429__auto__ \x3d sci.script_tag.cljns;\nvar var__48430__auto__ \x3d new cljs.core.Var(function(){return cljs.core.println;},new cljs.core.Symbol(\x22cljs.core\x22,\x22println\x22,\x22cljs.core/println\x22,-331834442,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22println\x22,\x22println\x22,-733595439,null),\x22cljs/core.cljs\x22,(14),new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),(1),(10400),(10400),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),\x22Same as print followed by (newline)\x22,(cljs.core.truth_(cljs.core.println)?cljs.core.println.cljs$lang$test:null)]));\nvar val__48431__auto__ \x3d cljs.core.deref(var__48430__auto__);\nvar m__48432__auto__ \x3d cljs.core.meta(var__48430__auto__);\nvar ns_name__48433__auto__ \x3d ns__48429__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__48434__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__48432__auto__);\nvar name_sym__48435__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48433__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48434__auto__));\nvar new_m__48436__auto__ \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__48429__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__48434__auto__,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__48432__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__48432__auto__)], null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n\n}\n}\n})(),new cljs.core.Symbol(null,\x22prn\x22,\x22prn\x22,1561684909,null),(function (){var ns__48429__auto__ \x3d sci.script_tag.cljns;\nvar var__48430__auto__ \x3d new cljs.core.Var(function(){return cljs.core.prn;},new cljs.core.Symbol(\x22cljs.core\x22,\x22prn\x22,\x22cljs.core/prn\x22,1725204552,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22top-fn\x22,\x22top-fn\x22,-2056129173),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22prn\x22,\x22prn\x22,1561684909,null),\x22cljs/core.cljs\x22,(10),new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,\x22variadic?\x22,\x22variadic?\x22,584179762),true,new cljs.core.Keyword(null,\x22fixed-arity\x22,\x22fixed-arity\x22,1586445869),(0),new cljs.core.Keyword(null,\x22max-fixed-arity\x22,\x22max-fixed-arity\x22,-690205543),(0),new cljs.core.Keyword(null,\x22method-params\x22,\x22method-params\x22,-980792179),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.list(new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null))], null),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),new cljs.core.Keyword(null,\x22arglists-meta\x22,\x22arglists-meta\x22,1944829838),cljs.core.list(null)], null),(1),(10412),(10412),cljs.core.list(new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22\x26\x22,\x22\x26\x22,-2144855648,null),new cljs.core.Symbol(null,\x22objs\x22,\x22objs\x22,-170194107,null)], null)),\x22Same as pr followed by (newline).\x22,(cljs.core.truth_(cljs.core.prn)?cljs.core.prn.cljs$lang$test:null)]));\nvar val__48431__auto__ \x3d cljs.core.deref(var__48430__auto__);\nvar m__48432__auto__ \x3d cljs.core.meta(var__48430__auto__);\nvar ns_name__48433__auto__ \x3d ns__48429__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__48434__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__48432__auto__);\nvar name_sym__48435__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48433__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48434__auto__));\nvar new_m__48436__auto__ \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__48429__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__48434__auto__,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__48432__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__48432__auto__)], null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n\n}\n}\n})(),new cljs.core.Symbol(null,\x22system-time\x22,\x22system-time\x22,1690633727,null),(function (){var ns__48429__auto__ \x3d sci.script_tag.cljns;\nvar var__48430__auto__ \x3d new cljs.core.Var(function(){return cljs.core.system_time;},new cljs.core.Symbol(\x22cljs.core\x22,\x22system-time\x22,\x22cljs.core/system-time\x22,1562011930,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22cljs.core\x22,\x22cljs.core\x22,770546058,null),new cljs.core.Symbol(null,\x22system-time\x22,\x22system-time\x22,1690633727,null),\x22cljs/core.cljs\x22,(18),(1),(399),(399),cljs.core.list(cljs.core.PersistentVector.EMPTY),\x22Returns highest resolution time offered by host in milliseconds.\x22,(cljs.core.truth_(cljs.core.system_time)?cljs.core.system_time.cljs$lang$test:null)]));\nvar val__48431__auto__ \x3d cljs.core.deref(var__48430__auto__);\nvar m__48432__auto__ \x3d cljs.core.meta(var__48430__auto__);\nvar ns_name__48433__auto__ \x3d ns__48429__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__48434__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__48432__auto__);\nvar name_sym__48435__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48433__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48434__auto__));\nvar new_m__48436__auto__ \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__48429__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__48434__auto__,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__48432__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__48432__auto__)], null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n\n}\n}\n})(),new cljs.core.Symbol(null,\x22time\x22,\x22time\x22,-1268547887,null),(function (){var ns__48429__auto__ \x3d sci.script_tag.cljns;\nvar var__48430__auto__ \x3d new cljs.core.Var(function(){return sci.script_tag.time;},new cljs.core.Symbol(\x22sci.script-tag\x22,\x22time\x22,\x22sci.script-tag/time\x22,1113599582,null),cljs.core.PersistentHashMap.fromArrays([new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),new cljs.core.Keyword(null,\x22file\x22,\x22file\x22,-1269645878),new cljs.core.Keyword(null,\x22end-column\x22,\x22end-column\x22,1425389514),new cljs.core.Keyword(null,\x22column\x22,\x22column\x22,2078222095),new cljs.core.Keyword(null,\x22line\x22,\x22line\x22,212345235),new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404),new cljs.core.Keyword(null,\x22end-line\x22,\x22end-line\x22,1837326455),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22test\x22,\x22test\x22,577538877)],[new cljs.core.Symbol(null,\x22sci.script-tag\x22,\x22sci.script-tag\x22,922462701,null),new cljs.core.Symbol(null,\x22time\x22,\x22time\x22,-1268547887,null),\x22sci/script_tag.cljs\x22,17,1,9,true,9,cljs.core.list(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,\x22expr\x22,\x22expr\x22,-1908713478,null)], null)),\x22Evaluates expr and prints the time it took. Returns the value of expr.\x22,(cljs.core.truth_(sci.script_tag.time)?sci.script_tag.time.cljs$lang$test:null)]));\nvar val__48431__auto__ \x3d cljs.core.deref(var__48430__auto__);\nvar m__48432__auto__ \x3d cljs.core.meta(var__48430__auto__);\nvar ns_name__48433__auto__ \x3d ns__48429__auto__.sci$impl$vars$HasName$getName$arity$1(null);\nvar name__48434__auto__ \x3d new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177).cljs$core$IFn$_invoke$arity$1(m__48432__auto__);\nvar name_sym__48435__auto__ \x3d cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns_name__48433__auto__),cljs.core.str.cljs$core$IFn$_invoke$arity$1(name__48434__auto__));\nvar new_m__48436__auto__ \x3d new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,\x22ns\x22,\x22ns\x22,441598760),ns__48429__auto__,new cljs.core.Keyword(null,\x22name\x22,\x22name\x22,1843675177),name__48434__auto__,new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754),new cljs.core.Keyword(null,\x22arglists\x22,\x22arglists\x22,1661989754).cljs$core$IFn$_invoke$arity$1(m__48432__auto__),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891),new cljs.core.Keyword(null,\x22doc\x22,\x22doc\x22,1913296891).cljs$core$IFn$_invoke$arity$1(m__48432__auto__)], null);\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22dynamic\x22,\x22dynamic\x22,704819571).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_dynamic_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nif(cljs.core.truth_(new cljs.core.Keyword(null,\x22macro\x22,\x22macro\x22,-867863404).cljs$core$IFn$_invoke$arity$1(m__48432__auto__))){\nreturn sci.core.new_macro_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n} else {\nreturn sci.core.new_var.cljs$core$IFn$_invoke$arity$3(name__48434__auto__,val__48431__auto__,new_m__48436__auto__);\n\n}\n}\n})()], null)], null);\nsci.script_tag.ctx \x3d cljs.core.atom.cljs$core$IFn$_invoke$arity$1(sci.core.init(new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,\x22namespaces\x22,\x22namespaces\x22,-1444157469),sci.script_tag.namespaces,new cljs.core.Keyword(null,\x22classes\x22,\x22classes\x22,2037804510),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Symbol(null,\x22js\x22,\x22js\x22,-886355190,null),window,new cljs.core.Keyword(null,\x22allow\x22,\x22allow\x22,-1857325745),new cljs.core.Keyword(null,\x22all\x22,\x22all\x22,892129742)], null)], null)));\nsci.script_tag.eval_string \x3d (function sci$script_tag$eval_string(s){\nreturn sci.core.eval_string_STAR_(cljs.core.deref(sci.script_tag.ctx),[\x22(require \x27[sci.script-tag :refer :all])\x22,cljs.core.str.cljs$core$IFn$_invoke$arity$1(s)].join(\x27\x27));\n});\nsci.script_tag.register_plugin_BANG_ \x3d (function sci$script_tag$register_plugin_BANG_(plug_in_name,sci_opts){\n\nreturn cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(sci.script_tag.ctx,sci.core.merge_opts,sci_opts);\n});\nsci.script_tag.built_in \x3d cljs.core.disj.cljs$core$IFn$_invoke$arity$2(cljs.core.set(sci.script_tag.eval_string(\x22(map ns-name (all-ns))\x22)),new cljs.core.Symbol(null,\x22user\x22,\x22user\x22,-1122004413,null));\nsci.script_tag.load_contents \x3d (function sci$script_tag$load_contents(script_tags){\nvar temp__5751__auto__ \x3d cljs.core.first(script_tags);\nif(cljs.core.truth_(temp__5751__auto__)){\nvar tag \x3d temp__5751__auto__;\nvar temp__5751__auto____$1 \x3d cljs.core.not_empty(goog.object.get(tag,\x22textContent\x22));\nif(cljs.core.truth_(temp__5751__auto____$1)){\nvar text \x3d temp__5751__auto____$1;\nsci.script_tag.eval_string(text);\n\nvar G__49546 \x3d cljs.core.rest(script_tags);\nreturn (sci.script_tag.load_contents.cljs$core$IFn$_invoke$arity$1 ? sci.script_tag.load_contents.cljs$core$IFn$_invoke$arity$1(G__49546) : sci.script_tag.load_contents.call(null,G__49546));\n} else {\nvar src \x3d tag.getAttribute(\x22src\x22);\nvar req \x3d (new XMLHttpRequest());\nvar _ \x3d req.open(\x22GET\x22,src,true);\nvar ___$1 \x3d goog.object.set(req,\x22onload\x22,(function (){\nvar this$ \x3d this;\nvar response_49555 \x3d goog.object.get(this$,\x22response\x22);\nsci.script_tag.eval_string(response_49555);\n\nvar G__49547 \x3d cljs.core.rest(script_tags);\nreturn (sci.script_tag.load_contents.cljs$core$IFn$_invoke$arity$1 ? sci.script_tag.load_contents.cljs$core$IFn$_invoke$arity$1(G__49547) : sci.script_tag.load_contents.call(null,G__49547));\n}));\nreturn req.send();\n}\n} else {\nreturn sci.script_tag.eval_string(clojure.string.replace(\x22\\n(run! (fn [ns]\\n        (let [nsn (ns-name ns)]\\n          (when-not (contains? \x27%s nsn)\\n            (run! (fn [var]\\n                    (let [m (meta var)]\\n                      (when (:export m)\\n                        (sci.script-tag/export (str nsn  \\\x22.\\\x22 (:name m)) @var))))\\n          (vals (ns-publics ns))))))\\n  (all-ns))\x22,\x22%s\x22,sci.script_tag.built_in));\n}\n});\ndocument.addEventListener(\x22DOMContentLoaded\x22,(function (){\nvar script_tags \x3d document.querySelectorAll(\x22script[type\x3d\x27application/x-sci\x27]\x22);\nreturn sci.script_tag.load_contents(script_tags);\n}),false);\n");
SHADOW_ENV.evalLoad("shadow.module.sci-script-tag.append.js", false , "\nshadow.cljs.devtools.client.env.module_loaded(\x27sci-script-tag\x27);\n;\nSHADOW_ENV.setLoaded(\x22goog.base.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.debug.error.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.nodetype.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.asserts.asserts.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.reflect.reflect.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.long.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.integer.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.asserts.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.functions.functions.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.array.array.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.htmlelement.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.tagname.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.object.object.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.tags.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.string.typedstring.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.string.const.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.trustedtypes.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.safescript.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.fs.url.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.fs.blob.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.i18n.bidi.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.trustedresourceurl.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.string.internal.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.safeurl.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.safestyle.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.safestylesheet.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.labs.useragent.util.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.labs.useragent.browser.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.safehtml.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.html.uncheckedconversions.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.safe.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.string.string.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.structs.structs.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.math.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.iter.iter.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.structs.map.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.uri.utils.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.uri.uri.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.string.stringbuffer.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.js\x22);\nSHADOW_ENV.setLoaded(\x22clojure.string.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.cljs.devtools.client.console.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.labs.useragent.engine.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.labs.useragent.platform.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.useragent.useragent.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.browserfeature.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.coordinate.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.size.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.dom.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.useragent.product.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.json.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.impl.utils.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.reader_types.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.impl.inspect.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.impl.errors.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.impl.commons.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.pprint.js\x22);\nSHADOW_ENV.setLoaded(\x22clojure.set.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.cljs.devtools.client.env.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.inputtype.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.window.window.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.forms.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.classlist.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.dom.vendor.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.box.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.irect.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.math.rect.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.disposable.idisposable.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.disposable.disposable.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.events.eventid.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.events.event.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.style.style.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.style.transition.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.impl.protocols.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.impl.buffers.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.debug.entrypointregistry.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.async.nexttick.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.impl.dispatch.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.impl.channels.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.impl.timers.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.impl.ioc_helpers.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.core.async.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.dom.js\x22);\nSHADOW_ENV.setLoaded(\x22clojure.data.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.util.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.object.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.animate.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.util.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.delimiters.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.caching.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.eq.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.types.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.impl.decoder.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.impl.reader.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.handlers.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.impl.writer.js\x22);\nSHADOW_ENV.setLoaded(\x22com.cognitect.transit.js\x22);\nSHADOW_ENV.setLoaded(\x22cognitect.transit.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.api.js\x22);\nSHADOW_ENV.setLoaded(\x22clojure.core.protocols.js\x22);\nSHADOW_ENV.setLoaded(\x22clojure.datafy.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.writer.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.shared.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.cljs.js_builtins.js\x22);\nSHADOW_ENV.setLoaded(\x22clojure.walk.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.spec.gen.alpha.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.spec.alpha.js\x22);\nSHADOW_ENV.setLoaded(\x22goog.string.stringformat.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.repl.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.obj_support.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.tap_support.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.remote.runtime.eval_support.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.cljs.devtools.client.shared.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.cljs.devtools.client.hud.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.cljs.devtools.client.websocket.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.cljs.devtools.client.browser.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.destructure.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.types.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.macros.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.unrestrict.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.lang.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.vars.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.utils.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.doseq_macro.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.faster.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.fns.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.interop.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.load.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.records.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.evaluator.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.for_macro.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.resolve.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.analyzer.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.tools.reader.edn.js\x22);\nSHADOW_ENV.setLoaded(\x22cljs.reader.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.core_protocols.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.hierarchies.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.io.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.multimethods.js\x22);\nSHADOW_ENV.setLoaded(\x22edamame.impl.read_fn.js\x22);\nSHADOW_ENV.setLoaded(\x22edamame.impl.syntax_quote.js\x22);\nSHADOW_ENV.setLoaded(\x22edamame.impl.parser.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.parser.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.protocols.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.read.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.reify.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.namespaces.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.opts.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.impl.interpreter.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.core.js\x22);\nSHADOW_ENV.setLoaded(\x22sci.script_tag.js\x22);\nSHADOW_ENV.setLoaded(\x22shadow.module.sci-script-tag.append.js\x22);");